5#ifndef DUNE_LOCALFUNCTIONS_UTILITY_FIELD_HH
6#define DUNE_LOCALFUNCTIONS_UTILITY_FIELD_HH
28 template<
class Field >
31 operator Field ()
const
37 template<
class Field >
43 template<
class Field >
44 Field operator- (
const Unity< Field > &u,
const Field &f )
49 template<
class Field >
50 Field operator* (
const Unity< Field > &u,
const Field &f )
55 template<
class Field >
56 Field operator/ (
const Unity< Field > &u,
const Field &f )
77 template<
class Field >
80 operator Field ()
const
84 static const Field epsilon()
91 template<
unsigned int precision >
95 operator Field ()
const
99 static const Field epsilon()
106 template<
class Field >
107 inline bool operator == (
const Zero< Field > &,
const Field &f )
109 return ( f < Zero<Field>::epsilon() && f > -Zero<Field>::epsilon() );
112 template<
class Field >
113 inline bool operator == (
const Field &f,
const Zero< Field > &z)
118 template<
class Field >
119 inline bool operator< (
const Zero< Field > &,
const Field &f )
121 return f > Zero<Field>::epsilon();
124 template<
class Field >
125 inline bool operator< (
const Field &f,
const Zero< Field > & )
127 return f < -Zero<Field>::epsilon();
130 template<
class Field >
131 inline bool operator> (
const Zero< Field > &z,
const Field &f )
136 template<
class Field >
137 inline bool operator> (
const Field &f,
const Zero< Field > &z )
158 template<
class F2,
class F1 >
165 template<
unsigned int precision >
171 template<
unsigned int precision >
178 template<
class F2,
class F1,
int dim >
181 for(
int d = 0; d < dim; ++d )
184 template<
class F2,
class F1 >
189 template<
class F2,
class F1 >
195 template<
class F2,
class F1,
int rdim,
int cdim >
198 for(
int r = 0; r < rdim; ++r )
201 template<
class F2,
class F1 >
206 template<
class F2,
class F1 >
211 template<
class F2,
class F1 >
216 template<
class F2,
class F1 >
221 template<
class F2,
class F1 >
227 template<
class F2,
class F1 >
233 template<
class F2,
class V >
238 template<
class F2,
class F1,
int dim >
239 struct FieldCast< F2,
Dune::FieldVector<F1,dim> >
243 template<
class F2,
class F1,
int dim1,
int dim2>
244 struct FieldCast< F2,
Dune::FieldMatrix<F1,dim1,dim2> >
248 template<
class F2,
class V >
249 inline typename FieldCast<F2,V>::type
field_cast (
const V &f1 )
251 typename FieldCast<F2,V>::type f2;
263 template <
class Field>
269 static const unsigned int value = 64;
275 static const unsigned int value = 80;
281 static const unsigned int value = 32;
285 template<
unsigned int precision >
286 struct Precision< GMPField< precision > >
288 static const unsigned int value = precision;
295 template <
class Field,
unsigned int sum>
302 template<
unsigned int precision,
unsigned int sum >
303 struct ComputeField< GMPField< precision >, sum >
305 typedef GMPField<precision+sum> Type;
A dense n x m matrix.
Definition: fmatrix.hh:117
vector space out of a tensor product of fields.
Definition: fvector.hh:92
Number class for high precision floating point number using the GMP library mpf_class implementation.
Definition: gmpfield.hh:34
Precision
which precision to use when writing out data to vtk files
Definition: common.hh:271
Implements a matrix constructed from a given type representing a field and compile-time given number ...
Implements a vector constructed from a given type representing a field and a compile-time given size.
Wrapper for the GNU multiprecision (GMP) library.
constexpr EnableIfInterOperable< T1, T2, bool >::type operator>(const RandomAccessIteratorFacade< T1, V1, R1, D > &lhs, const RandomAccessIteratorFacade< T2, V2, R2, D > &rhs)
Comparison operator.
Definition: iteratorfacades.hh:684
constexpr EnableIfInterOperable< T1, T2, bool >::type operator<(const RandomAccessIteratorFacade< T1, V1, R1, D > &lhs, const RandomAccessIteratorFacade< T2, V2, R2, D > &rhs)
Comparison operator.
Definition: iteratorfacades.hh:638
constexpr EnableIfInterOperable< T1, T2, bool >::type operator==(const ForwardIteratorFacade< T1, V1, R1, D > &lhs, const ForwardIteratorFacade< T2, V2, R2, D > &rhs)
Checks for equality.
Definition: iteratorfacades.hh:238
Dune namespace.
Definition: alignedallocator.hh:13
void field_cast(const F1 &f1, F2 &f2)
a helper class to cast from one field to another
Definition: field.hh:159
A class representing the unit of a given Field.
Definition: field.hh:30
A class representing the zero of a given Field.
Definition: field.hh:79