v0.16.3
Loading...
Searching...
No Matches
Public Member Functions | Public Attributes | Friends | List of all members
MoFEM::Mat_Elastic_EberleinHolzapfel1 Struct Reference

Mat_Elastic with Fibres. More...

#include "src/multi_indices/MaterialBlocks.hpp"

Inheritance diagram for MoFEM::Mat_Elastic_EberleinHolzapfel1:
[legend]
Collaboration diagram for MoFEM::Mat_Elastic_EberleinHolzapfel1:
[legend]

Public Member Functions

struct __attribute__ ((packed)) _data_
 Hotzapler soft tissue.
 
std::size_t getSizeOfData () const
 get data structure size
 
const void * getDataPtr () const
 get pointer to data structure
 
 Mat_Elastic_EberleinHolzapfel1 ()
 
MoFEMErrorCode fill_data (const std::vector< double > &attributes)
 get data from structure
 
- Public Member Functions inherited from MoFEM::GenericAttributeData
virtual MoFEMErrorCode set_data (void *tag_ptr, unsigned int size) const
 set data on structure
 
virtual const CubitBCType & getType () const
 get data type
 
virtual unsigned int getMinMumberOfAtributes () const
 get minimal number of attributes which blockset has to have
 
 GenericAttributeData (const CubitBCType type, const unsigned int min_number_of_atributes)
 

Public Attributes

_data_ data
 
- Public Attributes inherited from MoFEM::GenericAttributeData
const CubitBCType tYpe
 Type of data (f.e. MAT_ELATIC)
 
unsigned int minNumberOfAtributes
 minimal number of attributes
 

Friends

std::ostream & operator<< (std::ostream &os, const Mat_Elastic_EberleinHolzapfel1 &e)
 Print Mat_Elastic data.
 

Detailed Description

Mat_Elastic with Fibres.

Elastic material data structure

Definition at line 481 of file MaterialBlocks.hpp.

Constructor & Destructor Documentation

◆ Mat_Elastic_EberleinHolzapfel1()

MoFEM::Mat_Elastic_EberleinHolzapfel1::Mat_Elastic_EberleinHolzapfel1 ( )
inline

Definition at line 503 of file MaterialBlocks.hpp.

504 bzero(&data, sizeof(data));
505 }
@ MAT_ELASTICSET
block name is "MAT_ELASTIC"
GenericAttributeData(const CubitBCType type, const unsigned int min_number_of_atributes)

Member Function Documentation

◆ __attribute__()

struct MoFEM::Mat_Elastic_EberleinHolzapfel1::__attribute__ ( (packed)  )
inline

Hotzapler soft tissue.

< Young's modulus

< Poisson's ratio

Definition at line 475 of file MaterialBlocks.hpp.

486 {
487 double Young; ///< Young's modulus
488 double Poisson; ///< Poisson's ratio
489 double k1; // User attribute 1
490 double k2; // User attribute 2
491 double a0x; // User attribute 3
492 double a0y; // User attribute 4
493 double a0z; // User attribute 5
494 double a1x; // User attribute 6
495 double a1y; // User attribute 7
496 double a1z; // User attribute 8
497 };

◆ fill_data()

MoFEMErrorCode MoFEM::Mat_Elastic_EberleinHolzapfel1::fill_data ( const std::vector< double > &  attributes)
inlinevirtual

get data from structure

Parameters
attributesvector of doubles
Returns
error code

Reimplemented from MoFEM::GenericAttributeData.

Definition at line 507 of file MaterialBlocks.hpp.

507 {
509 if (attributes.size() < minNumberOfAtributes) {
510 SETERRQ(PETSC_COMM_SELF, MOFEM_DATA_INCONSISTENCY,
511 "All material data not defined");
512 }
513 if (8 * attributes.size() > sizeof(data)) {
514 SETERRQ(PETSC_COMM_SELF, MOFEM_DATA_INCONSISTENCY,
515 "data inconsistency, please review the number of material "
516 "properties defined");
517 }
518 bzero(&data, sizeof(data));
519 memcpy(&data, &attributes[0], 8 * attributes.size());
521 }
#define MoFEMFunctionReturnHot(a)
Last executable line of each PETSc function used for error handling. Replaces return()
@ MOFEM_DATA_INCONSISTENCY
Definition definitions.h:31
#define MoFEMFunctionBeginHot
First executable line of each MoFEM function, used for error handling. Final line of MoFEM functions ...
unsigned int minNumberOfAtributes
minimal number of attributes

◆ getDataPtr()

const void * MoFEM::Mat_Elastic_EberleinHolzapfel1::getDataPtr ( ) const
inlinevirtual

get pointer to data structure

Returns
pointer

Implements MoFEM::GenericAttributeData.

Definition at line 501 of file MaterialBlocks.hpp.

501{ return &data; }

◆ getSizeOfData()

std::size_t MoFEM::Mat_Elastic_EberleinHolzapfel1::getSizeOfData ( ) const
inlinevirtual

get data structure size

Returns
size of structure in bytes

Implements MoFEM::GenericAttributeData.

Definition at line 500 of file MaterialBlocks.hpp.

500{ return sizeof(data); }

Friends And Related Symbol Documentation

◆ operator<<

std::ostream & operator<< ( std::ostream &  os,
const Mat_Elastic_EberleinHolzapfel1 &  e 
)
friend

Print Mat_Elastic data.

Definition at line 40 of file MaterialBlocks.cpp.

41 {
42 os << std::endl << "Material Properties" << std::endl;
43 os << "-------------------" << std::endl;
44 os << "Young's modulus = " << e.data.Young << std::endl;
45 os << "Poisson's ratio = " << e.data.Poisson << std::endl;
46 os << "k1 = " << e.data.k1 << std::endl;
47 os << "k2 = " << e.data.k2 << std::endl;
48 os << "a0_x = " << e.data.a0x << std::endl;
49 os << "a0_y = " << e.data.a0y << std::endl;
50 os << "a0_z = " << e.data.a0z << std::endl;
51 os << "a1_x = " << e.data.a1x << std::endl;
52 os << "a1_y = " << e.data.a1y << std::endl;
53 os << "a1_Z = " << e.data.a1z << std::endl << std::endl;
54 return os;
55}

Member Data Documentation

◆ data

_data_ MoFEM::Mat_Elastic_EberleinHolzapfel1::data

Definition at line 499 of file MaterialBlocks.hpp.


The documentation for this struct was generated from the following file: