24 #ifndef SHEAF_DLL_SPEC_H 25 #include "SheafSystem/sheaf_dll_spec.h" 29 #include "SheafSystem/jcb_ed.h" 32 #ifndef GENERAL_MATRIX_3X1_H 33 #include "SheafSystem/general_matrix_3x1.h" 37 #include "SheafSystem/e1.h" 41 #include "SheafSystem/e3.h" 196 jcb_e13_lite& operator=(
const row_dofs_type& xrow_dofs);
212 operator matrix_type& ();
218 operator const matrix_type& ()
const;
224 operator row_dofs_type& ();
230 operator const row_dofs_type& ()
const;
244 virtual void put_components(
const value_type& dxdu,
292 virtual int dd()
const;
297 virtual int dr()
const;
362 virtual const std::string& class_name()
const;
399 virtual bool is_ancestor_of(
const any_lite& xother)
const;
404 bool invariant()
const;
414 virtual const void*
row_dofs()
const;
445 static const poset_path& standard_schema_path();
546 const row_dofs_type& xrdt,
547 bool xauto_access =
true);
552 jcb_e13& operator=(
const row_dofs_type& xrdt);
572 virtual const volatile_type& lite_prototype()
const;
577 virtual volatile_type* lite_type()
const;
586 virtual void put_components(
dof_type dxdu_comp,
594 operator row_dofs_type& ();
600 operator const row_dofs_type& ()
const;
678 virtual const std::string& class_name()
const;
716 bool is_ancestor_of(
const any* xother)
const;
721 bool invariant()
const;
737 template <
typename T>
738 std::ostream& operator<<(std::ostream& xos, const jcb_e13_row_dofs_type<T>& xrdt);
750 namespace jcb_algebra
753 #ifndef DOXYGEN_SKIP_UNKNOWN 776 #endif // ifndef DOXYGEN_SKIP_UNKNOWN 804 #endif // ifndef JCB_E13_H vd_value_type value_type
The type of component in the fiber; the scalar type in the fiber vector space.
Euclidean vector space of dimension 3 (volatile version).
e3 range_space_type
Type of underlying range vector space.
Abstract jacobian for d dimensional Euclidean space (volatile version).
Jacobian of a map from a 1 dimensional domain (u) to a 3 dimensional Euclidean space (x...
The default name space; a poset which contains other posets as members.
void pull(const SJCB &xjcb, const SCOVECTOR &xcovector, SR &xresult, bool xauto_access)
The standard fiber bundles name space; extends the standard sheaves namespace by defining base space...
A client handle for a general, abstract partially order set.
static int d()
The dimension of the row dof components.
A path defined by a poset name and a member name separated by a forward slash ('/'). For example: "cell_definitions/triangle".
virtual jcb_ed * clone() const
Make a new handle, no state instance of current.
jcb_e13_row_dofs_type< double >::matrix_type matrix_type
The type of the associated matrix.
virtual void put_components(const dof_type xcomps[], int xcomps_dimension)
Set values of all the components to the values in xcomps.
void push(const SJCB &xjcb, const SVECTOR &xvector, SR &xresult, bool xauto_access)
Euclidean vector space of dimension 3 (persistent version).
T::row_dofs_type & row_dofs(T &x0)
The row dofs pod type for x0 (mutable version).
Euclidean vector space of dimension 1 (persistent version).
e1_lite domain_space_type
Type of underlying domain vector space.
Abstract base class with useful features for all volatile objects.
Abstract base class with useful features for all objects.
general_matrix_3x1< T > matrix_type
The type of the associated matrix.
e3_lite range_space_type
Type of underlying range vector space.
static const std::string & static_class_name()
The name of this class.
Row dofs type for class jcb_e13.
An index within the external ("client") scope of a given id space.
jcb_e13 * 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...
General matrix with 3 rows and 1 column.
jcb_e13_row_dofs_type< T > row_dofs_type
The type of the row dofs (type of this).
T & operator[](int xindex)
Value of xindex-th component (row dof) (non const version).
T dof_type
The type of the dofs.
Jacobian of a map from a 1 dimensional domain (u) to a 3 dimensional Euclidean space (x...
jcb_e13_row_dofs_type< T > * clone(bool xnew_state, bool xauto_access) const
Virtual constructor, makes a new instance of the same type as this; synonym for clone(), intended for use only in certain templates.
jcb_e13_row_dofs_type< double > row_dofs_type
The type of the row dofs.
row_dofs_type _row_dofs
Row_dofs_type.
T components[3]
The dofs in the following order: components[0] => dx/du components[1] => dy/du components[2] => dz/du...
An abstract space of Jacobians.
jcb_e13_row_dofs_type< T > * clone() const
Creates a new instance of the same type as this.
jcb_e13_row_dofs_type< double > row_dofs_type
The type of the row dofs.
int_type pod_index_type
The plain old data index type.
virtual jcb_e13_lite * clone(bool xnew_state, bool xauto_access) const
Virtual constructor, makes a new instance of the same type as this; synonym for clone(), intended for use only in certain templates.
jcb_e13_lite volatile_type
The associated volatile type.
Euclidean vector space of dimension 1 (volatile version).
e1 domain_space_type
Type of underlying domain vector space.
e1 domain_type
The type of domain vector space.
Abstract jacobian for d dimensional Euclidean space (persistent version).
An abstract client handle for a member of a poset.
vd_dof_type dof_type
The type of the degrees of freedom. Note that although dof_type == value_type in this implementation...
Namespace for the fiber_bundles component of the sheaf system.
e3 range_type
The type of range vector space.