17 #ifndef __deal2__point_h
18 #define __deal2__point_h
21 #include <deal.II/base/config.h>
23 #include <deal.II/base/tensor_base.h>
55 template <
int dim,
typename Number>
73 explicit Point (
const bool initialize);
88 explicit Point (
const Number x);
99 Point (
const Number x,
111 Point (
const Number x,
125 Number
operator () (
const unsigned int index)
const;
204 template <
class Archive>
205 void serialize(Archive &ar,
const unsigned int version);
212 template <
int dim,
typename Number>
219 template <
int dim,
typename Number>
223 Tensor<1,dim,Number>(initialize)
228 template <
int dim,
typename Number>
237 template <
int dim,
typename Number>
252 template <
int dim,
typename Number>
268 template <
int dim,
typename Number>
284 template <
int dim,
typename Number>
295 template <
int dim,
typename Number>
301 return this->values[index];
306 template <
int dim,
typename Number>
312 return this->values[index];
317 template <
int dim,
typename Number>
327 template <
int dim,
typename Number>
337 template <
int dim,
typename Number>
343 for (
unsigned int i=0; i<dim; ++i)
344 result.values[i] = -this->values[i];
350 template <
int dim,
typename Number>
360 template <
int dim,
typename Number>
370 template <
int dim,
typename Number>
376 for (
unsigned int i=0; i<dim; ++i)
377 q += this->values[i] * this->values[i];
383 template <
int dim,
typename Number>
389 for (
unsigned int i=0; i<dim; ++i)
391 const double diff=this->values[i]-p(i);
395 return std::sqrt(sum);
400 template <
int dim,
typename Number>
409 template <
int dim,
typename Number>
410 template <
class Archive>
430 template <
int dim,
typename Number>
459 template <
int dim,
typename Number>
464 for (
unsigned int i=0; i<dim-1; ++i)
478 template <
int dim,
typename Number>
483 for (
unsigned int i=0; i<dim; ++i)
497 template <
typename Number>
508 DEAL_II_NAMESPACE_CLOSE
Point< dim, Number > operator/(const Number) const
Number operator()(const unsigned int index) const
Point< dim, Number > operator-() const
VectorizedArray< Number > operator*(const VectorizedArray< Number > &u, const VectorizedArray< Number > &v)
Tensor< 1, dim, Number > operator*(const Tensor< 1, dim, Number > &t, const Number factor)
#define AssertIndexRange(index, range)
T sum(const T &t, const MPI_Comm &mpi_communicator)
#define Assert(cond, exc)
static Point< dim, Number > unit_vector(const unsigned int i)
void serialize(Archive &ar, const unsigned int version)
Point< dim, Number > operator+(const Tensor< 1, dim, Number > &) const
::ExceptionBase & ExcInvalidConstructorCall()
std::ostream & operator<<(std::ostream &out, const SymmetricTensor< 2, dim, Number > &t)
Number distance(const Point< dim, Number > &p) const
std::istream & operator>>(std::istream &in, Point< dim, Number > &p)
Point< dim, Number > operator*(const Number) const