24 #ifndef SHEAF_DLL_SPEC_H 25 #include "SheafSystem/sheaf_dll_spec.h" 29 #include "SheafSystem/gln.h" 32 #ifndef GENERAL_MATRIX_2X2_H 33 #include "SheafSystem/general_matrix_2x2.h" 218 gl2_lite(
const row_dofs_type& xrow_dofs);
223 gl2_lite& operator=(
const row_dofs_type& xrow_dofs);
228 gl2_lite(
const matrix_type& xmatrix);
233 gl2_lite& operator=(
const matrix_type& xmatrix);
239 operator matrix_type& ();
245 operator const matrix_type& ()
const;
251 operator row_dofs_type& ();
257 operator const row_dofs_type& ()
const;
320 void get_matrix(row_dofs_type& xmatrix)
const;
327 void put_matrix(row_dofs_type& xmatrix);
354 virtual int n()
const;
384 virtual const std::string& class_name()
const;
421 virtual bool is_ancestor_of(
const any_lite& xother)
const;
426 bool invariant()
const;
436 virtual const void*
row_dofs()
const;
468 static const poset_path& standard_schema_path();
533 gl2(
const gl2& xother,
bool xnew_jem);
543 gl2& operator=(
const gl2& xother);
553 gl2(
poset* xhost,
bool xauto_access =
true);
562 const row_dofs_type& xrdt,
563 bool xauto_access =
true);
568 gl2& operator=(
const row_dofs_type& xrdt);
586 gl2(
const poset* xhost,
const std::string& xname);
591 explicit gl2(
gl2* xother);
597 operator row_dofs_type& ();
603 operator const row_dofs_type& ()
const;
608 void get_matrix(row_dofs_type& xmatrix)
const;
615 void put_matrix(row_dofs_type& xmatrix);
621 virtual volatile_type* lite_type()
const;
661 virtual const std::string& class_name()
const;
680 inline gl2*
clone(
bool xnew_state,
bool xauto_access =
true)
const 682 return static_cast<gl2*
>(
gln::clone(xnew_state, xauto_access));
702 virtual bool invariant()
const;
707 virtual bool is_ancestor_of(
const any* xother)
const;
722 template <
typename T>
723 std::ostream& operator<<(std::ostream& xos, const gl2_row_dofs_type<T>& xrdt);
725 #ifndef DOXYGEN_1_5_4_SKIP_UNKNOWN 735 SHEAF_DLL_SPEC std::ostream&
operator<<(std::ostream& xos,
const gl2& xpersistent);
748 #endif // ifndef DOXYGEN_1_5_4_SKIP_UNKNOWN 754 #endif // ifndef GL2_H Euclidean vector space of dimension 2 (persistent version).
The mathematical group GL(n, R). GL(n,R) is the group of general, invertible, linear transformations ...
The default name space; a poset which contains other posets as members.
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.
A path defined by a poset name and a member name separated by a forward slash ('/'). For example: "cell_definitions/triangle".
row_dofs_type _row_dofs
Row_dofs_type.
gl2_row_dofs_type< double > row_dofs_type
The type of the row dofs.
The mathematical group GL(n, R). GL(n,R) is the group of general, invertible, linear transformations ...
gl2 * 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...
gl2_row_dofs_type< double >::matrix_type matrix_type
The type of the associated matrix.
General matrix with 2 rows and 2 columns.
T::row_dofs_type & row_dofs(T &x0)
The row dofs pod type for x0 (mutable version).
The mathematical group GL(2, R). The group of all invertible, linear transformations on the R2...
gl2_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.
Abstract base class with useful features for all volatile objects.
Row dofs type for class gl2.
Abstract base class with useful features for all objects.
matrix_type & component_matrix()
The associated component transformation matrix (non const version).
The mathematical group GL(2, R). The group of all invertible, linear transformations on the R2...
A client handle for a mutable partially ordered set.
gl2_lite volatile_type
The associated volatile type.
An index within the external ("client") scope of a given id space.
static int d()
The dimension of the row dof components.
virtual gl2_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.
vd_value_type value_type
The type of component in the fiber; the scalar type in the fiber vector space.
matrix_type & basis_matrix()
The associated basis transformation matrix (non const version).
T & operator[](int xindex)
Value of xindex-th component (row dof) (non const version).
virtual int n() const
Dimension of the representation space; n in GL(n, R).
A Cartesian product space.
gl2_row_dofs_type< T > row_dofs_type
The type of the row dofs (type of this).
general_matrix_2x2< T > matrix_type
The type of the associated matrix.
gl2_row_dofs_type< T > * clone() const
Creates a new instance of the same type as this.
T dof_type
The type of the dofs.
e2 vector_space_type
Type of underlying vector space.
int_type pod_index_type
The plain old data index type.
gl2_row_dofs_type< double > row_dofs_type
The type of the row dofs.
static const std::string & static_class_name()
The name of this class.
T components[8]
The dofs in the following order:
virtual gln * clone() const
Make a new handle, no state instance of current.
An abstract client handle for a member of a poset.
Namespace for the fiber_bundles component of the sheaf system.
SHEAF_DLL_SPEC void inverse(const gl2_lite &xlite, gl2_lite &xresult)
Inverse (pre-allocated version for volatile type).
SHEAF_DLL_SPEC std::ostream & operator<<(std::ostream &os, const binary_index &xbi)
Insert binary_index& xbi into ostream& os.