SheafSystem  0.0.0.0
fiber_bundle::t4_lite Class Reference

A tensor of degree 4 over an abstract vector space (volatile version). More...

#include <t4.h>

Inheritance diagram for fiber_bundle::t4_lite:
fiber_bundle::tp_lite fiber_bundle::vd_lite fiber_bundle::tuple_lite fiber_bundle::any_lite fiber_bundle::t4_e2_lite fiber_bundle::t4_e3_lite

T4 FACET OF CLASS T4_LITE

 t4_lite ()
 Default constructor. More...
 
 t4_lite (const t4_lite &xother)
 Copy constructor. More...
 
t4_liteoperator= (const t4_lite &xother)
 Assignment operator. More...
 
virtual ~t4_lite ()
 Destructor. More...
 
 t4_lite (const row_dofs_type &xrow_dofs)
 Creates a new instance with row dofs xrow_dofs. More...
 
t4_liteoperator= (const row_dofs_type &xrow_dofs)
 Assignment (from row_dofs_type) operator. More...
 

TENSOR ALGEBRA (TP) FACET OF CLASS T4_LITE

enum  static_const_int { P = 4 }
 The tensor degree (static version) More...
 
virtual int p () const
 The degree of the tensor; the sum of the contravariant and covariant degrees. More...
 

VECTOR ALGEBRA (VD) FACET OF CLASS T4_LITE

virtual int d () const
 Dimension of this as a vector space. More...
 
virtual value_type component (int xi, int xj, int xk, int xl) const
 The component with indices xi, xj, xk, xl. More...
 
virtual void put_component (int xi, int xj, int xk, int xl, value_type xvalue)
 Sets the component with indices xi, xj, xk, xl to xvalue. More...
 
virtual int index_for_ijkl (int xi, int xj, int xk, int xl) const
 The index into linear storage of the component for specified indices xi, xj, xk, xl. More...
 

ABSTRACT POSET MEMBER FACET OF CLASS T4_LITE

virtual const std::string & class_name () const
 The name of this class. More...
 
virtual t4_liteclone () const
 Virtual constructor, makes a new instance of the same type as this. More...
 
static const std::string & static_class_name ()
 The name of this class. More...
 

ANY FACET OF CLASS T4_LITE

virtual bool is_ancestor_of (const any_lite &xother) const
 Conformance test; true if other conforms to this. More...
 
bool invariant () const
 Class invariant. More...
 

Additional Inherited Members

- Public Types inherited from fiber_bundle::tp_lite
enum  static_const_int { P = -1 }
 The degree of this tensor space. More...
 
typedef tp_table_dofs_type table_dofs_type
 The type of the table dofs. More...
 
typedef vd_lite vector_space_type
 Type of underlying vector space. More...
 
- Public Types inherited from fiber_bundle::vd_lite
typedef vd_dof_type dof_type
 The type of the degrees of freedom. More...
 
typedef vd_value_type value_type
 The type of component in the fiber; the scalar type in the fiber vector space. More...
 
typedef vd_table_dofs_type table_dofs_type
 The type of the table dofs. More...
 
typedef vd_row_dofs_type< double > row_dofs_type
 The type of the row dofs. More...
 
- Public Types inherited from fiber_bundle::tuple_lite
typedef tuple_table_dofs_type table_dofs_type
 The type of the table dofs. More...
 
- Public Types inherited from fiber_bundle::any_lite
typedef any_lite volatile_type
 The associated volatile type. More...
 
- Public Member Functions inherited from fiber_bundle::tp_lite
 tp_lite ()
 Default constructor. More...
 
 tp_lite (const tp_lite &xother)
 Copy constructor. More...
 
tp_liteoperator= (const tp_lite &xother)
 Assignment operator. More...
 
virtual ~tp_lite ()
 Destructor. More...
 
 tp_lite (const row_dofs_type &xrow_dofs)
 Creates a new instance with row dofs xrow_dofs. More...
 
tp_liteoperator= (const row_dofs_type &xrow_dofs)
 Assignment (from row_dofs_type) operator. More...
 
virtual int dd () const
 Dimension of the underlying vector space. More...
 
virtual pod_index_type vector_space_index () const
 Index of the underlying vector space. More...
 
table_dofs_type table_dofs () const
 The table dofs. More...
 
bool invariant () const
 Class invariant. More...
 
- Public Member Functions inherited from fiber_bundle::vd_lite
 vd_lite ()
 Default constructor. More...
 
 vd_lite (const vd_lite &xother)
 Copy constructor. More...
 
vd_liteoperator= (const vd_lite &xother)
 Copy assignment operator. More...
 
bool operator== (const vd_lite &xother) const
 True if this has the same components as xother. More...
 
virtual ~vd_lite ()
 Destructor. More...
 
 vd_lite (const row_dofs_type &xrow_dofs)
 Creates a new instance with row dofs xrow_dofs. More...
 
vd_liteoperator= (const row_dofs_type &xrow_dofs)
 Row_dofs_type assignment operator. More...
 
value_type component (int xindex) const
 The xindex-th component. More...
 
void put_component (int xindex, value_type xcomp)
 Set the xindex-th component to xcomp. More...
 
virtual void components (dof_type xresult[], int comps_dimension) const
 The values of all the components (preallocated version). More...
 
virtual void put_components (const dof_type xcomps[], int xcomps_dimension)
 Set values of all the components to the values in xcomps. More...
 
vd_liteoperator= (const value_type &xvalue)
 Value_type assignment operator; sets all components to xvalue. More...
 
bool operator== (const value_type &xvalue) const
 Equality comparison to scalar; true if and only if all components == xvalue. Especially useful for comparison to 0.0. More...
 
virtual value_typeoperator[] (int xindex)
 The value of the component corresponding to xindex (non const version). More...
 
virtual const value_typeoperator[] (int xindex) const
 The value of the component corresponding to xindex (const version). More...
 
virtual const tp_litetp_prototype (int xp) const
 Virtual constructor for general tensors of degree xp over this vector space. More...
 
virtual const atp_liteatp_prototype (int xp) const
 Prototype for antisymmetric tensors of degree xp over this vector space. More...
 
virtual const stp_litestp_prototype (int xp) const
 Prototype for symmetric tensors of degree xp over this vector space. More...
 
virtual int factor_ct () const
 Number of factors (components) in tuple. More...
 
table_dofs_type table_dofs () const
 The table dofs. More...
 
bool invariant () const
 Class invariant. More...
 
- Public Member Functions inherited from fiber_bundle::tuple_lite
 tuple_lite ()
 Default constructor. More...
 
 tuple_lite (const tuple_lite &xother)
 Copy constructor. More...
 
tuple_liteoperator= (const tuple_lite &xother)
 Assignment operator. More...
 
virtual ~tuple_lite ()
 Destructor. More...
 
table_dofs_type table_dofs () const
 The table dofs. More...
 
bool invariant () const
 Class invariant. More...
 
- Public Member Functions inherited from fiber_bundle::any_lite
virtual ~any_lite ()
 Destructor. More...
 
bool is_same_type (const any_lite &xother) const
 True if other is the same type as this. More...
 
bool invariant () const
 Class invariant, intended to be redefined in each descendant. More...
 
bool invariant_check () const
 True if invariant checking is enabled. More...
 
void enable_invariant_check () const
 Enable invariant checking. More...
 
void disable_invariant_check () const
 Disable invariant check. Intended for preventing recursive calls to invariant and for suppressing invariant checking during multi-phase initialization. More...
 
int disable_invariance_check_request_depth () const
 Number of times disable_invariant_check has been called without matching call to enable_invariant_check. More...
 
virtual void * row_dofs ()
 The row dofs for this instance (mutable version). More...
 
virtual const void * row_dofs () const
 The row dofs for this instance (const version). More...
 
- Static Public Member Functions inherited from fiber_bundle::tp_lite
static const std::string & static_class_name ()
 The name of this class. More...
 
- Static Public Member Functions inherited from fiber_bundle::vd_lite
static const tp_litestatic_tp_prototype (int xp)
 Static prototype for general tensors of degree xp over this vector space. More...
 
static const atp_litestatic_atp_prototype (int xp)
 Static prototype for antisymmetric tensors of degree xp over this vector space. More...
 
static const stp_litestatic_stp_prototype (int xp)
 Static prototype for symmetric tensors of degree xp over this vector space. More...
 
static const std::string & static_class_name ()
 The name of this class. More...
 
- Static Public Member Functions inherited from fiber_bundle::tuple_lite
static const std::string & static_class_name ()
 The name of this class. More...
 
- Static Public Member Functions inherited from fiber_bundle::any_lite
static const std::string & static_class_name ()
 The name of this class. More...
 
- Protected Member Functions inherited from fiber_bundle::any_lite
 any_lite ()
 Default constructor. More...
 

Detailed Description

A tensor of degree 4 over an abstract vector space (volatile version).

Definition at line 43 of file t4.h.

Member Enumeration Documentation

◆ static_const_int

The tensor degree (static version)

Hack:
Inline initialization of static const integral data members causes link error in MSC++; use enum instead.

Definition at line 101 of file t4.h.

Constructor & Destructor Documentation

◆ t4_lite() [1/3]

fiber_bundle::t4_lite::t4_lite ( )

Default constructor.

Postcondition

Definition at line 48 of file t4.cc.

Referenced by ~t4_lite().

◆ t4_lite() [2/3]

fiber_bundle::t4_lite::t4_lite ( const t4_lite xother)

Copy constructor.

Postcondition

Definition at line 63 of file t4.cc.

References operator=().

◆ ~t4_lite()

fiber_bundle::t4_lite::~t4_lite ( )
virtual

Destructor.

Definition at line 97 of file t4.cc.

References t4_lite().

Referenced by operator=().

◆ t4_lite() [3/3]

fiber_bundle::t4_lite::t4_lite ( const row_dofs_type xrow_dofs)

Creates a new instance with row dofs xrow_dofs.

Postcondition

Definition at line 110 of file t4.cc.

References operator=().

Member Function Documentation

◆ class_name()

const std::string & fiber_bundle::t4_lite::class_name ( ) const
virtual

The name of this class.

Postcondition
  • !result.empty()

Reimplemented from fiber_bundle::tp_lite.

Reimplemented in fiber_bundle::t4_e3_lite, and fiber_bundle::t4_e2_lite.

Definition at line 306 of file t4.cc.

References static_class_name().

Referenced by index_for_ijkl().

◆ clone()

fiber_bundle::t4_lite * fiber_bundle::t4_lite::clone ( ) const
virtual

Virtual constructor, makes a new instance of the same type as this.

Postcondition
  • result != 0
  • is_same_type(*result)

Reimplemented from fiber_bundle::tp_lite.

Reimplemented in fiber_bundle::t4_e3_lite, and fiber_bundle::t4_e2_lite.

Definition at line 344 of file t4.cc.

Referenced by static_class_name().

◆ component()

fiber_bundle::t4_lite::value_type fiber_bundle::t4_lite::component ( int  xi,
int  xj,
int  xk,
int  xl 
) const
virtual

The component with indices xi, xj, xk, xl.

Precondition
  • (0 <= xi) && (xi < dd())
  • (0 <= xj) && (xj < dd())
  • (0 <= xk) && (xk < dd())
  • (0 <= xl) && (xl < dd())
Postcondition

Definition at line 209 of file t4.cc.

References put_component().

Referenced by d(), and fiber_bundle::tp_algebra::sym().

◆ d()

int fiber_bundle::t4_lite::d ( ) const
virtual

Dimension of this as a vector space.

Postcondition
  • result == static_cast<int>(dd()*dd()*dd()*dd())

Reimplemented from fiber_bundle::tp_lite.

Definition at line 189 of file t4.cc.

References component().

Referenced by p().

◆ index_for_ijkl()

int fiber_bundle::t4_lite::index_for_ijkl ( int  xi,
int  xj,
int  xk,
int  xl 
) const
virtual

The index into linear storage of the component for specified indices xi, xj, xk, xl.

Precondition
  • (0 <= xi) && (xi < dd())
  • (0 <= xj) && (xj < dd())
  • (0 <= xk) && (xk < dd())
  • (0 <= xl) && (xl < dd())
Postcondition
  • result >= 0

Definition at line 258 of file t4.cc.

References class_name().

Referenced by put_component().

◆ invariant()

bool fiber_bundle::t4_lite::invariant ( ) const

Class invariant.

Invariant

Definition at line 396 of file t4.cc.

References fiber_bundle::t4::standard_schema_path().

Referenced by is_ancestor_of().

◆ is_ancestor_of()

bool fiber_bundle::t4_lite::is_ancestor_of ( const any_lite xother) const
virtual

Conformance test; true if other conforms to this.

Precondition
  • &xother != 0

Reimplemented from fiber_bundle::tp_lite.

Reimplemented in fiber_bundle::t4_e3_lite, and fiber_bundle::t4_e2_lite.

Definition at line 377 of file t4.cc.

References invariant().

◆ operator=() [1/2]

fiber_bundle::t4_lite & fiber_bundle::t4_lite::operator= ( const t4_lite xother)

Assignment operator.

Postcondition

Definition at line 80 of file t4.cc.

References ~t4_lite().

Referenced by t4_lite().

◆ operator=() [2/2]

fiber_bundle::t4_lite & fiber_bundle::t4_lite::operator= ( const row_dofs_type xrow_dofs)

Assignment (from row_dofs_type) operator.

Definition at line 127 of file t4.cc.

References p().

◆ p()

int fiber_bundle::t4_lite::p ( ) const
virtual

The degree of the tensor; the sum of the contravariant and covariant degrees.

Postcondition
  • result == 4

Reimplemented from fiber_bundle::tp_lite.

Definition at line 158 of file t4.cc.

References d().

Referenced by operator=().

◆ put_component()

void fiber_bundle::t4_lite::put_component ( int  xi,
int  xj,
int  xk,
int  xl,
value_type  xvalue 
)
virtual

Sets the component with indices xi, xj, xk, xl to xvalue.

Precondition
  • (0 <= xi) && (xi < dd())
  • (0 <= xj) && (xj < dd())
  • (0 <= xk) && (xk < dd())
  • (0 <= xl) && (xl < dd())
Postcondition
  • isunordered_or_equals(component(xi, xj, xk, xl), xvalue)

Definition at line 233 of file t4.cc.

References index_for_ijkl(), and sheaf::isunordered_or_equals().

Referenced by component().

◆ static_class_name()

const std::string & fiber_bundle::t4_lite::static_class_name ( )
static

The name of this class.

Postcondition
  • !result.empty()

Definition at line 325 of file t4.cc.

References clone().

Referenced by class_name().


The documentation for this class was generated from the following files: