25 #ifndef SHEAF_DLL_SPEC_H 26 #include "SheafSystem/sheaf_dll_spec.h" 30 #include "SheafSystem/tp.h" 90 value_type component(
int xrow,
int xcolumn)
const;
95 void put_component(
int xrow,
int xcolumn,
value_type xcomp);
101 virtual int index_for_row_column(
int xrow,
int xcolumn)
const;
128 virtual int p()
const;
147 virtual int d()
const;
177 virtual const std::string& class_name()
const;
182 static const std::string& static_class_name();
187 virtual t2_lite* clone()
const;
205 virtual bool is_ancestor_of(
const any_lite& xother)
const;
210 bool invariant()
const;
226 class SHEAF_DLL_SPEC
t2 :
public tp 239 static const poset_path& standard_schema_path();
291 t2(
const t2& xother);
301 t2& operator=(
const t2& xother);
311 virtual const volatile_type& lite_prototype()
const;
316 virtual volatile_type* lite_type()
const;
321 t2(
poset* xhost,
bool xauto_access =
true);
339 t2(
const poset* xhost,
const std::string& xname);
345 virtual int index_for_row_column(
int xrow,
int xcolumn)
const;
381 value_type component(
int xrow,
int xcolumn)
const;
386 value_type component(
int xrow,
int xcolumn,
bool xauto_access)
const;
391 void put_component(
int xrow,
int xcolumn,
value_type xvalue);
396 void put_component(
int xrow,
int xcolumn,
value_type xvalue,
bool xauto_access);
428 virtual const std::string& class_name()
const;
433 static const std::string& static_class_name();
438 virtual t2* clone()
const;
445 inline t2*
clone(
bool xnew_state,
bool xauto_access =
true)
const 447 return static_cast<t2*
>(
tp::clone(xnew_state, xauto_access));
466 virtual bool invariant()
const;
471 virtual bool is_ancestor_of(
const any* other)
const;
515 SHEAF_DLL_SPEC
void contract(
const t2& x0,
int xp,
int xq,
at0& xresult,
528 SHEAF_DLL_SPEC
void alt(
const t2& x0,
at2& xresult,
bool xauto_access);
546 SHEAF_DLL_SPEC
void sym(
const t2& x0,
st2& xresult,
bool xauto_access);
558 SHEAF_DLL_SPEC
void sym(
const t2& x0,
t2& xresult,
bool xauto_access);
570 SHEAF_DLL_SPEC
void tensor(
const at1& x0,
const at1& x1,
t2& xresult,
bool xauto_access);
576 #endif // ifndef T2_H t2_lite volatile_type
The associated volatile type.
static_const_int
The tensor degree (static version)
void alt(const GT &x0, AT &xresult, bool xauto_access)
vd_value_type value_type
The type of component in the fiber; the scalar type in the fiber vector space.
void sym(const GT &x0, ST &xresult, bool xauto_access)
The default name space; a poset which contains other posets as members.
A general antisymmetric tensor of degree 1 over an abstract vector space (persistent version)...
The standard fiber bundles name space; extends the standard sheaves namespace by defining base space...
A general antisymmetric tensor of degree 1 over an abstract vector space (volatile version)...
A path defined by a poset name and a member name separated by a forward slash ('/'). For example: "cell_definitions/triangle".
value_type component(int xindex) const
The xindex-th component.
A tensor of degree 2 over an abstract vector space (volatile version).
A general tensor of "degree" p and given "variance" over an abstract vector space.
Abstract base class with useful features for all volatile objects.
Abstract base class with useful features for all objects.
static_const_int
The tensor degree (static version)
A general symmetric tensor of degree 2 over an abstract vector space (volatile version).
A client handle for a mutable partially ordered set.
An index within the external ("client") scope of a given id space.
A scalar viewed as an antisymmetric tensor of degree 0. As the degree is 0 there is nothing to be sym...
Antisymetric tensor of degree 0 (volatile version).
virtual value_type component(int xindex) const
The value of the xi-th component.
SHEAF_DLL_SPEC tensor_variance contract(const tensor_variance &x0, int xp, int xq)
The variance of the contration of a tensor with variance x0 on indices xp and xq. ...
A general tensor of degree p over an abstract vector space (volatile version). Volatile version does ...
void put_component(int xindex, value_type xcomp)
Set the xindex-th component to xcomp.
virtual tp * clone() const
Make a new handle, no state instance of current.
int_type pod_index_type
The plain old data index type.
vd_value_type value_type
The POD ("plain old data") type of scalar in the vector space of this.
t2 * clone(bool xnew_state, bool xauto_access=true) const
Make a new handle instance of current. Attach the new instance to a new state if xnew_state is true...
A general antisymmetric tensor of degree 2 over an abstract vector space (volatile version)...
An abstract client handle for a member of a poset.
virtual void put_component(int xindex, value_type xvalue)
Sets the value of the xindex-th component to xvalue.
An abstract tensor space of degree p.
Namespace for the fiber_bundles component of the sheaf system.
A general symmetric tensor of degree 2 over an abstract vector space (persistent version).
Row dofs type for class vd.
A general antisymmetric tensor of degree 2 over an abstract vector space.
void tensor(const S0 &x0, const S1 &x1, SR &xresult, bool xauto_access)
A tensor of degree 2 over an abstract vector space (persistent version).