22 #include "libmesh/type_vector.h" 25 #include <type_traits> 30 #if !LIBMESH_DEFAULT_QUADRUPLE_PRECISION 32 "Someone made TypeVector non-TriviallyCopyable");
33 #ifdef LIBMESH_USE_COMPLEX_NUMBERS 35 "Someone made TypeVector non-TriviallyCopyable");
37 #endif // LIBMESH_DEFAULT_QUADRUPLE_PRECISION 52 const bool newline)
const 54 os << std::setiosflags(std::ios::showpoint)
68 for (
unsigned int i=0; i<LIBMESH_DIM; i++)
70 if ((*
this)(i) < rhs(i))
72 if ((*
this)(i) > rhs(i))
82 for (
unsigned int i=0; i<LIBMESH_DIM; i++)
84 if ((*
this)(i) < rhs(i))
86 if ((*
this)(i) > rhs(i))
97 for (
unsigned int i=0; i<LIBMESH_DIM; i++)
99 if ((*
this)(i) > rhs(i))
101 if ((*
this)(i) < rhs(i))
108 template <
typename T>
111 for (
unsigned int i=0; i<LIBMESH_DIM; i++)
113 if ((*
this)(i) > rhs(i))
115 if ((*
this)(i) < rhs(i))
122 #ifdef LIBMESH_USE_COMPLEX_NUMBERS 126 for (
unsigned int i=0; i<LIBMESH_DIM; i++)
128 if ((*
this)(i).
real() < rhs(i).
real())
130 if ((*
this)(i).
real() > rhs(i).
real())
132 if ((*
this)(i).
imag() < rhs(i).
imag())
134 if ((*
this)(i).
imag() > rhs(i).
imag())
145 for (
unsigned int i=0; i<LIBMESH_DIM; i++)
147 if ((*
this)(i).
real() < rhs(i).
real())
149 if ((*
this)(i).
real() > rhs(i).
real())
151 if ((*
this)(i).
imag() < rhs(i).
imag())
153 if ((*
this)(i).
imag() > rhs(i).
imag())
164 for (
unsigned int i=0; i<LIBMESH_DIM; i++)
166 if ((*
this)(i).
real() > rhs(i).
real())
168 if ((*
this)(i).
real() < rhs(i).
real())
170 if ((*
this)(i).
imag() > rhs(i).
imag())
172 if ((*
this)(i).
imag() < rhs(i).
imag())
183 for (
unsigned int i=0; i<LIBMESH_DIM; i++)
185 if ((*
this)(i).
real() > rhs(i).
real())
187 if ((*
this)(i).
real() < rhs(i).
real())
189 if ((*
this)(i).
imag() > rhs(i).
imag())
191 if ((*
this)(i).
imag() < rhs(i).
imag())
218 #ifdef LIBMESH_USE_COMPLEX_NUMBERS static constexpr std::size_t libmesh_dim
boost::multiprecision::float128 real(const boost::multiprecision::float128 in)
bool operator>(const TypeVector< T > &rhs) const
The libMesh namespace provides an interface to certain functionality in the library.
bool operator>=(const TypeVector< T > &rhs) const
bool operator<=(const TypeVector< T > &rhs) const
This class defines a vector in LIBMESH_DIM dimensional space of type T.
bool operator<(const TypeVector< T > &rhs) const
IntRange< T > make_range(T beg, T end)
The 2-parameter make_range() helper function returns an IntRange<T> when both input parameters are of...
boost::multiprecision::float128 imag(const boost::multiprecision::float128)
void write_unformatted(std::ostream &out_stream, const bool newline=true) const
Unformatted print to the stream out.