25 #ifndef SHEAF_DLL_SPEC_H 26 #include "SheafSystem/sheaf_dll_spec.h" 30 #include "SheafSystem/tp.h" 106 virtual int p()
const;
124 virtual int d()
const;
132 virtual value_type component(
int xi,
int xj,
int xk)
const;
137 virtual void put_component(
int xi,
int xj,
int xk,
value_type xvalue);
143 virtual int index_for_ijk(
int xi,
int xj,
int xk)
const;
174 virtual const std::string& class_name()
const;
179 static const std::string& static_class_name();
184 virtual t3_lite* clone()
const;
202 virtual bool is_ancestor_of(
const any_lite& xother)
const;
207 bool invariant()
const;
222 class SHEAF_DLL_SPEC
t3 :
public tp 235 static const poset_path& standard_schema_path();
280 t3(
const t3& xother);
290 t3& operator=(
const t3& xother);
300 virtual const volatile_type& lite_prototype()
const;
305 virtual volatile_type* lite_type()
const;
310 t3(
poset* xhost,
bool xauto_access =
true);
328 t3(
const poset* xhost,
const std::string& xname);
370 virtual value_type component(
int xi,
int xj,
int xk)
const;
375 value_type component(
int xi,
int xj,
int xk,
bool xauto_access)
const;
380 virtual void put_component(
int xi,
int xj,
int xk,
value_type xvalue);
385 void put_component(
int xi,
int xj,
int xk,
value_type xvalue,
bool xauto_access);
391 virtual int index_for_ijk(
int xi,
int xj,
int xk)
const;
423 virtual const std::string& class_name()
const;
428 static const std::string& static_class_name();
433 virtual t3* clone()
const;
440 inline t3*
clone(
bool xnew_state,
bool xauto_access =
true)
const 442 return static_cast<t3*
>(
tp::clone(xnew_state, xauto_access));
461 virtual bool invariant()
const;
466 virtual bool is_ancestor_of(
const any* other)
const;
510 SHEAF_DLL_SPEC
void contract(
const t3& x0,
int xp,
int xq,
at1& xresult,
531 SHEAF_DLL_SPEC
void alt(
const t3& x0,
at3& xresult,
bool xauto_access);
551 SHEAF_DLL_SPEC
void sym(
const t3& x0,
st3& xresult,
bool xauto_access);
564 SHEAF_DLL_SPEC
void tensor(
const t2& x0,
const at1& x1,
t3& xresult,
bool xauto_access);
576 SHEAF_DLL_SPEC
void tensor(
const at1& x0,
const t2& x1,
t3& xresult,
bool xauto_access);
590 SHEAF_DLL_SPEC
void tensor(
const at2& x0,
const at1& x1,
t3& xresult,
bool xauto_access);
602 SHEAF_DLL_SPEC
void tensor(
const at1& x0,
const at2& x1,
t3& xresult,
bool xauto_access);
616 SHEAF_DLL_SPEC
void tensor(
const st2& x0,
const at1& x1,
t3& xresult,
bool xauto_access);
628 SHEAF_DLL_SPEC
void tensor(
const at1& x0,
const st2& x1,
t3& xresult,
bool xauto_access);
638 #endif // ifndef T3_H A tensor of degree 3 over an abstract vector space (volatile version).
An antisymmetric rank 3 tensor over an abstract vector space (volatile 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 tensor of degree 3 over an abstract vector space (persistent version).
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.
static_const_int
The tensor degree (static version)
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.
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 symmetric rank 3 tensor over an abstract vector space (persistent version).
virtual value_type component(int xindex) const
The value of the xi-th component.
A symmetric rank 3 tensor over an abstract vector space. (volatile version).
An antisymmetric rank 3 tensor over an abstract vector space (volatile version).
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 ...
t3 * 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...
void put_component(int xindex, value_type xcomp)
Set the xindex-th component to xcomp.
static_const_int
The tensor degree (static version)
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.
t3_lite volatile_type
The associated volatile type.
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).