22 template <
unsigned D>
class NDIndex;
23 template <
class T,
unsigned D>
class Vektor;
24 template <
class T,
unsigned D>
class Tenzor;
25 template <
class T,
unsigned D>
class SymTenzor;
28 template<
class T,
unsigned D>
class LField;
29 template<
class T,
unsigned D>
class BareField;
30 template<
class T,
unsigned D,
class M,
class C>
class Field;
31 template <
class T,
unsigned D,
class M,
class C>
class BCondBase;
32 template <
class T,
unsigned D,
class M,
class C>
33 std::ostream& operator<<(std::ostream&, const BCondBase<T,D,M,C>&);
34 template <
class T,
unsigned D,
class M,
class C>
class BConds;
35 template <
class T,
unsigned D,
class M,
class C>
36 std::ostream& operator<<(std::ostream&, const BConds<T,D,M,C>&);
54 template<
class T,
unsigned D>
60 template<
class T,
unsigned D>
66 template<
class T,
unsigned D>
72 template<
class T,
unsigned D>
141 template<
class T,
unsigned D>
146 template<
class T,
unsigned D>
151 template<
class T,
unsigned D>
156 template<
class T,
unsigned D>
179 template<
class T,
unsigned D,
class M,
class C>
204 virtual void write(std::ostream&)
const;
234 class C=
typename M::DefaultCentering>
236 :
public vmap<int, RefCountedP< BCondBase<T,D,M,C> > >
247 virtual void write(std::ostream&)
const;
257 class C=
typename M::DefaultCentering>
270 virtual void write(std::ostream& out)
const;
278 class C=
typename M::DefaultCentering>
302 virtual void write(std::ostream& out)
const;
313 class C=
typename M::DefaultCentering>
337 virtual void write(std::ostream& out)
const;
342 template<
class T,
unsigned D,
344 class C=
typename M::DefaultCentering>
376 virtual void write(std::ostream& out)
const;
386 template<
class T,
unsigned D,
388 class C=
typename M::DefaultCentering>
420 virtual void write(std::ostream& out)
const;
429 class C=
typename M::DefaultCentering>
452 virtual void write(std::ostream&)
const;
473 class C=
typename M::DefaultCentering>
496 virtual void write(std::ostream&)
const;
511 class C=
typename M::DefaultCentering>
522 virtual void write(std::ostream& out)
const;
530 class C=
typename M::DefaultCentering>
541 virtual void write(std::ostream& out)
const;
555 class C=
typename M::DefaultCentering>
566 virtual void write(std::ostream& out)
const;
574 class C=
typename M::DefaultCentering>
585 virtual void write(std::ostream& out)
const;
593 class C=
typename M::DefaultCentering>
604 virtual void write(std::ostream& out)
const;
618 class C=
typename M::DefaultCentering>
629 virtual void write(std::ostream& out)
const;
648 class C=
typename M::DefaultCentering>
675 virtual void write(std::ostream& out)
const;
690 class C=
typename M::DefaultCentering>
730 virtual void write(std::ostream& out)
const;
760 class C=
typename M::DefaultCentering>
785 virtual void write(std::ostream& out)
const;
815 class C=
typename M::DefaultCentering>
837 virtual void write(std::ostream&)
const;
845 class C=
typename M::DefaultCentering>
861 ERRORMSG(
"ComponentLinearExtrapolateFace(): allComponents specified; "
862 <<
"not allowed; use LinearExtrapolateFace "
863 <<
"class instead." <<
endl);
876 virtual void write(std::ostream&)
const;
886 class C=
typename M::DefaultCentering>
911 virtual void write(std::ostream& out)
const
913 out <<
"PatchBC(" << this->
getFace() <<
")";
927 template<
class T,
unsigned D,
class M,
class C >
929 operator<<(std::ostream& o, const BCondBase<T,D,M,C>& bc)
936 template<
class T,
unsigned D,
class M,
class C >
938 operator<<(std::ostream& o, const BConds<T,D,M,C>& bc)
virtual Base_t * clone() const
scalar_tag get_tag(dcomplex)
BCondBase< T, D, M, C > BCondBaseTDMC
virtual void apply(Field< T, D, M, C > &A)
virtual void write(std::ostream &out) const
virtual void write(std::ostream &out) const
virtual void apply(Field< T, D, M, C > &)=0
virtual BCondBase< T, D, M, C > * clone() const
NegReflectFace(unsigned f, int i=BCondBaseTDMC::allComponents, int j=BCondBaseTDMC::allComponents)
void apply(Field< T, D, M, C > &a)
ParallelInterpolationFace(unsigned f, int i=Base_t::allComponents, int j=Base_t::allComponents)
virtual BCondBase< T, D, M, C > * clone() const =0
BCondBase< T, D, M, C > BCondBaseTDMC
virtual void write(std::ostream &out) const
virtual void write(std::ostream &) const
LinearExtrapolateFace(unsigned f)
BCondBase< T, D, M, C > * clone() const
BCondBase< T, D, M, C > BCondBaseTDMC
virtual void write(std::ostream &out) const
virtual BCondBase< T, D, M, C > * clone() const
EurekaFace(unsigned int face, int i=BCondBaseTDMC::allComponents, int j=BCondBaseTDMC::allComponents)
BCondBase< T, D, M, C > BCondBaseTDMC
ExtrapolateFace(unsigned f, T o, T s, int i=BCondBaseTDMC::allComponents, int j=BCondBaseTDMC::allComponents)
BCondBase< T, D, M, C > Base_t
BCondBase< T, D, M, C > * clone() const
std::complex< double > dcomplex
virtual void apply(Field< T, D, M, C > &)
virtual void applyPatch(typename Field< T, D, M, C >::iterator, const NDIndex< D > &)=0
NegReflectAndZeroFace(unsigned f, int i=BCondBaseTDMC::allComponents, int j=BCondBaseTDMC::allComponents)
InterpolationFace(unsigned f, int i=BCondBaseTDMC::allComponents, int j=BCondBaseTDMC::allComponents)
virtual BCondBase< T, D, M, C > * clone() const
BCondBase< T, D, M, C > BCondBaseTDMC
ComponentLinearExtrapolateFace(unsigned f, int i=BCondBaseTDMC::allComponents, int j=BCondBaseTDMC::allComponents)
virtual void write(std::ostream &) const
virtual void write(std::ostream &) const
virtual void write(std::ostream &) const
ZeroFace(unsigned f, int i=BCondBaseTDMC::allComponents, int j=BCondBaseTDMC::allComponents)
ParallelPeriodicFace(unsigned f, int i=Base_t::allComponents, int j=Base_t::allComponents)
virtual void write(std::ostream &out) const
virtual void apply(Field< T, D, M, C > &)
BCondBase< T, D, M, C > BCondBaseTDMC
BCondBase< T, D, M, C > * clone() const
BCondBase< T, D, M, C > BCondBaseTDMC
virtual void write(std::ostream &out) const
virtual void apply(Field< T, D, M, C > &A)
virtual void write(std::ostream &out) const
BCondBase< T, D, M, C > * clone() const
constexpr double c
The velocity of light in m/s.
vmap< int, RefCountedP< BCondBase< T, D, M, C > > >::iterator iterator
virtual void write(std::ostream &out) const
BCondBase< T, D, M, C > BCondBaseTDMC
const T & getOffset() const
virtual void write(std::ostream &) const
const T & getOffset() const
bool changesPhysicalCells() const
virtual void apply(Field< T, D, M, C > &)
virtual void write(std::ostream &out) const
virtual void apply(Field< T, D, M, C > &)
void apply(Field< T, D, M, C > &)
virtual void write(std::ostream &out) const
virtual void write(std::ostream &out) const
virtual BCondBase< T, D, M, C > * clone() const
BCondBase< T, D, M, C > BCondBaseTDMC
bool changesPhysicalCells() const
ConstantFace(unsigned f, T c, int i=BCondBaseTDMC::allComponents, int j=BCondBaseTDMC::allComponents)
BCondBase< T, D, M, C > BCondBaseTDMC
virtual void write(std::ostream &out) const
void apply(Field< T, D, M, C > &)
ZeroGuardsAndZeroFace(unsigned f, int i=BCondBaseTDMC::allComponents, int j=BCondBaseTDMC::allComponents)
ComponentFunctionFace(typename ApplyToComponentType< T >::type(*func)(typename ApplyToComponentType< T >::type), unsigned face, int i=BCondBaseTDMC::allComponents, int j=BCondBaseTDMC::allComponents)
const T & getSlope() const
BCondBase< T, D, M, C > BCondBaseTDMC
BCondBase< T, D, M, C > BCondBaseTDMC
virtual BCondBase< T, D, M, C > * clone() const
ExtrapolateAndZeroFace(unsigned f, T o, T s, int i=BCondBaseTDMC::allComponents, int j=BCondBaseTDMC::allComponents)
virtual void apply(Field< T, D, M, C > &)
PosReflectFace(unsigned f, int i=BCondBaseTDMC::allComponents, int j=BCondBaseTDMC::allComponents)
ApplyToComponentType< T >::type(* Func)(typename ApplyToComponentType< T >::type)
virtual void write(std::ostream &) const
FunctionFace(T(*func)(const T &), unsigned face)
virtual void write(std::ostream &out) const
BCondBase< T, D, M, C > BCondBaseTDMC
virtual void apply(Field< T, D, M, C > &)
BCondBase(unsigned int face, int i=allComponents, int j=allComponents)
vmap< int, RefCountedP< BCondBase< T, D, M, C > > >::const_iterator const_iterator
void apply(Field< T, D, M, C > &)
virtual Base_t * clone() const
virtual void write(std::ostream &out) const
virtual BCondBase< T, D, M, C > * clone() const
TensorOrder_e getTensorOrder(const scalar_tag &)
virtual void apply(Field< T, D, M, C > &)
const T & getSlope() const
BCondBase< T, D, M, C > Base_t
BCondBase< T, D, M, C > BCondBaseTDMC
PeriodicFace(unsigned f, int i=BCondBaseTDMC::allComponents, int j=BCondBaseTDMC::allComponents)
virtual void write(std::ostream &out) const
virtual void apply(Field< T, D, M, C > &)
Inform & endl(Inform &inf)
rep_type::const_iterator const_iterator
unsigned int getFace() const