#include <cell.h>
Public Member Functions | |
Element (classID mecg, long gid, long oid, long prop, const Geometry *mg, long nn, long ne, long nf) | |
CONSTRUCTOR. More... | |
Element (classID mecg, const Element *src) | |
CONSTRUCTOR COPY. More... | |
virtual | ~Element () |
DESTRUCTOR. More... | |
VTKPDtopology | give_VTKPDtopology (void) const |
const Facedge * | give_same_dimension_facedge (void) const |
Returns edge/face/volume of same dimension as receiver (Beam returns edge, etc.) More... | |
virtual DOFsPerNode | give_DOFsPerNode_default (void) const =0 |
Returns edge/face/volume of same dimension as receiver (Beam returns edge, etc.) More... | |
virtual SStype | give_SSType_default (void) const =0 |
give default type of stress state More... | |
void | set_mprop (long val) |
*** SET *** More... | |
void | set_prop_node_inher (bool everynode) |
inherit property from element to nodes, only if node has one superelem More... | |
void | set_fullhinge_at (const Point *p) |
ElemAttribs * | give_elemAttribs (void) |
const ElemAttribs * | give_elemAttribs (void) const |
bool | has_fullhinge_at (int point) const |
void | connectivity_assembling (bool re=false) |
Function assembles connectivity between element and its nodes, edges and faces (which are allocated if needed) More... | |
void | connectivity_removing (void) |
Function removes connectivity between element and its components == nodes, edges and faces. More... | |
virtual long | give_edge_nodes (const Point **&edgnodes) const |
void | set_load (int i, int indx=-1) |
bool | is_point_on (const PoinT *point, const GeometryComponent *&comp, PoinT *nc) const |
Function finds out mutual position of point with coords and 'element'. More... | |
void | switch_node_pointer_in_all_components (Point *slave, Point *master, bool duplcheck) |
switch node pointer from oldnode/slave to newnode/master on this and all components (edges, faces) More... | |
virtual void | switch_node_pointer (Point *slave, Point *master, bool duplcheck) |
switch node pointer form slave to master More... | |
virtual double | give_quality (void) const |
compute quality of element More... | |
virtual double | give_volume (void) const |
compute volume of element More... | |
bool | isBeam (void) const |
bool | isTruss (void) const |
void | print_row_VTK (FILE *stream) const |
print element row output for VTK More... | |
virtual void | print_row_VTX (char *str) const |
![]() | |
CellGeometry | give_cellGeom (void) const |
int | give_dimension (void) const |
return type of element geometry, is identical with class derived from FElement More... | |
const PoinT * | give_centercoords (void) const |
double | give_circum (void) const |
double | give_lav (void) const |
double | give_GeomWeight1deg (void) const |
bool | is_point_in_sphere (const PoinT *point) const |
double | give_characteristic_size (void) const |
ComponentGeometry * | give_cg (void) |
Cell (classID mecg, long gid, long oid, long prop, const Geometry *mg, long nn, long ne, long nf) | |
CONSTRUCTOR. More... | |
Cell (classID mecg, const Cell *src) | |
CONSTRUCTOR COPY. More... | |
virtual | ~Cell () |
DESTRUCTOR. More... | |
virtual void | checkConsistency (void) const |
Checks data consistency. More... | |
void | check_connectivity_loc (void) const |
void | set_point (long i, const Point *val) |
ATRIBUTES. More... | |
void | set_point (long i, long pid) |
void | set_edge (long i, const Edge *val) |
void | set_face (long i, const Face *val) |
long | give_nno (void) const |
long | give_ned (void) const |
long | give_nfa (void) const |
const Point * | give_point (long i) const |
const Edge * | give_edge (long i) const |
const Face * | give_face (long i) const |
const GPA< const Point > * | give_points (void) const |
const GPA< const Edge > * | give_edges (void) const |
const GPA< const Face > * | give_faces (void) const |
long | give_point_indx (const Point *p) const |
virtual long | give_face_nodes_edges (const Point **&facnodes, const Edge **&facedges) const |
virtual void | switch_myself_at_connectivity (Cell *master) |
switch receiver to master in connectivity system More... | |
bool | switch_edge_pointer (Edge *slave, Edge *master) |
switch pointer to component edge - slave is replaced be master More... | |
bool | switch_face_pointer (Face *slave, Face *master) |
switch pointer to component face - slave is replaced be master More... | |
void | setup_duplicity_master (Cell *val) |
bool | invisible_duplicated (char flag='a') |
make invisible if duplicated More... | |
bool | has_same_geom_with (Cell *slave) const |
ASSORTED check same geometry. More... | |
bool | check_collapse (void) |
check any two nodes are same = element is collapsed More... | |
bool | cross_abscissa_node (const PoinT *a1, const PoinT *a2, long cunn, const Point **unnod, const Point *&nod, double &ksi, PoinT *cp) const |
Function finds out whether some element node lays on abscissa. More... | |
int | cross_abscissa_face (const PoinT *a1, const PoinT *a2, long cunf, const Face **unfac, const Cell *&comp, PoinT *nc, PoinT *cp) |
Function finds out whether abscissa intersects any face. More... | |
![]() | |
GeometryComponent (const Geometry *owner, long gid, long oid, long prop) | |
CONSTRUCTOR. More... | |
GeometryComponent (const GeometryComponent *src) | |
CONSTRUCTOR COPY. More... | |
virtual | ~GeometryComponent () |
DESTRUCTOR. More... | |
virtual void | initialize (void) |
initiate/sets data More... | |
virtual void | finitialize (void) |
finalize preprocessing More... | |
void | reset_mprop (long val) |
bool | checkset_mprop (long val) |
void | set_origID (long val) |
void | set_delete_flag (bool val) |
virtual void | set_model_prop (long val, const Model *model, bool flag=false) |
long | give_mproperty () const |
*** GET *** More... | |
const Lvctr * | give_mproperty_ptr (void) const |
long | give_mpropertyORzero (void) const |
long | give_mproperty_cnt (void) const |
bool | has_mproperty (long prop) const |
long | give_origID () const |
bool | give_delete_flag () const |
Attributes * | give_attributes (void) |
const Attributes * | give_attributes (void) const |
bool | Parallel (void) const |
*** FEMesh *** More... | |
long | NumDomains (void) const |
void | check_connectivity (void) const |
void | mg_connectivity_assembling (void) |
virtual void | print_row (FILE *stream, femFileFormat fff, bool endline=true, long did=0) const =0 |
*** PRINT *** More... | |
![]() | |
GeometrySubject (long gid) | |
CONSTRUCTOR. More... | |
GeometrySubject (long gid, const Problem *owner) | |
CONSTRUCTOR. More... | |
GeometrySubject (long gid, const Geometry *owner) | |
CONSTRUCTOR. More... | |
virtual | ~GeometrySubject () |
DESTRUCTOR. More... | |
void | set_Geom (const Geometry *owner) |
void | reset_Geom (const Geometry *owner) |
const Geometry * | give_Geom (void) const |
![]() | |
ProblemSubject (long gid) | |
CONSTRUCTOR. More... | |
ProblemSubject (long gid, const Problem *owner) | |
CONSTRUCTOR. More... | |
virtual | ~ProblemSubject () |
DESTRUCTOR. More... | |
virtual classID | give_classid () const |
Returns classID - class identification. More... | |
void | set_ID (long val) |
long | give_ID () const |
void | set_Pd (const Problem *owner) |
const Problem * | give_Pd (void) const |
Protected Member Functions | |
ElemAttribs * | elemAttribs () |
Gives attribute attributes, data type changed to ElemAttribs*. More... | |
const ElemAttribs * | elemAttribs () const |
virtual void | integrate_duplicated_cell (const Element *slave) |
DUPLICITY. More... | |
![]() | |
virtual void | integrate_duplicated_cell (const Cell *slave) |
Additional Inherited Members | |
![]() | |
GPA< const Point > | points |
GPA< const Edge > | edges |
GPA< const Face > | faces |
bool | connectivity_assembled |
Cell * | duplmaster |
![]() | |
ComponentGeometry * | cg |
![]() | |
Lvctr | mproperty |
long | origid |
bool | fordelete |
Attributes * | attributes |
ATTRIBUTES. More... | |
![]() | |
const Geometry * | Geom |
Pointer to owner == parent geometry. More... | |
![]() | |
long | ID |
(global) identification number == position in list of members; zero-based numbering. More... | |
const Problem * | Pd |
Pointer to owner = parent problem. More... | |
|
inlinevirtual |
|
virtual |
Function assembles connectivity between element and its nodes, edges and faces (which are allocated if needed)
Function assembles connectivity between element and its components == nodes, edges and faces (which are allocated if needed) sklada se ze dvou neoddelitelnych kroku a) ALLOCATION: musim vytvorit edges a faces –> abych mohl vytvorit plnou konektivitu b) CONNECTIVITY: musim udelat konektivitu –> abych mohl vytvorit edges a faces.
CONNECTIVITY
ALLOCATION
CONNECTIVITY
FACES
ALLOCATION
CONNECTIVITY
Implements midaspace::Cell.
Definition at line 852 of file cell.cpp.
References midaspace::Cell::connectivity_assembled, midaspace::Edge::connectivity_assembling(), midaspace::Face::connectivity_assembling(), midaspace::Cell::duplmaster, midaspace::Cell::edges, errol, midaspace::Cell::faces, midaspace::GeometrySubject::Geom, give_edge_nodes(), midaspace::Cell::give_edges(), midaspace::Cell::give_face_nodes_edges(), midaspace::Cell::give_points(), midaspace::Cell::points, midaspace::Cell::set_edge(), midaspace::Cell::set_face(), midaspace::Facedge::setadd_superelem(), and midaspace::Cell::setup_duplicity_master().
Referenced by midaspace::Point::finitialize(), midaspace::Mesh::initialize(), midaspace::FElement::read_input(), and set_load().
|
virtual |
Function removes connectivity between element and its components == nodes, edges and faces.
Implements midaspace::Cell.
Definition at line 939 of file cell.cpp.
References midaspace::Cell::connectivity_assembled, midaspace::Cell::edges, midaspace::Cell::faces, and midaspace::Cell::points.
Referenced by midaspace::Mesh::initialize().
|
inlineprotected |
Gives attribute attributes, data type changed to ElemAttribs*.
Definition at line 380 of file cell.h.
References midaspace::GeometryComponent::attributes.
Referenced by midaspace::PolyLine::checkConsistency(), midaspace::FElement::checkConsistency(), midaspace::Beam::checkConsistency(), midaspace::Triangle::checkConsistency(), midaspace::Quadrangle::checkConsistency(), midaspace::Tetra::checkConsistency(), midaspace::Brick::checkConsistency(), midaspace::Beam::compute_maxSigmaEq(), midaspace::Triangle::compute_maxSigmaEq(), midaspace::PolyLine::findout_segment_domain(), midaspace::FElement::give_CSusage_elast(), midaspace::FElement::give_CSusage_elast_rel(), midaspace::Beam::give_edge_nodes(), midaspace::Triangle::give_edge_nodes(), midaspace::Quadrangle::give_edge_nodes(), midaspace::Tetra::give_edge_nodes(), midaspace::Brick::give_edge_nodes(), midaspace::Triangle::give_face_nodes_edges(), midaspace::Quadrangle::give_face_nodes_edges(), midaspace::Tetra::give_face_nodes_edges(), midaspace::Brick::give_face_nodes_edges(), midaspace::FElement::give_IPset_comp(), midaspace::FElement::give_IPset_rslts(), midaspace::FElement::give_nDOFs(), midaspace::FElement::give_nnoed(), midaspace::FElement::give_ord(), midaspace::Triangle::give_quality(), midaspace::Beam::give_ssstate(), midaspace::Triangle::give_ssstate(), midaspace::Quadrangle::give_ssstate(), midaspace::Brick::give_ssstate(), midaspace::Beam::give_SSType_default(), midaspace::Triangle::give_SSType_default(), midaspace::Quadrangle::give_SSType_default(), midaspace::Tetra::give_SSType_default(), midaspace::Brick::give_SSType_default(), midaspace::Triangle::give_volume(), midaspace::Quadrangle::give_volume(), midaspace::Line::initialize(), integrate_duplicated_cell(), midaspace::FElement::integrate_duplicated_cell(), isBeam(), isTruss(), midaspace::FElement::print_row(), midaspace::Beam::print_row(), midaspace::FElement::read_input(), midaspace::Triangle::read_input(), midaspace::Quadrangle::read_input(), midaspace::FElement::read_nodes(), midaspace::Beam::read_output_OOFEM(), midaspace::Triangle::read_output_OOFEM(), midaspace::Quadrangle::read_output_OOFEM(), midaspace::Brick::read_output_OOFEM(), set_fullhinge_at(), set_mprop(), midaspace::FElement::setup_maxSigmaEq(), and midaspace::Triangle::Triangle().
|
inlineprotected |
Definition at line 381 of file cell.h.
References midaspace::GeometryComponent::attributes.
|
pure virtual |
Returns edge/face/volume of same dimension as receiver (Beam returns edge, etc.)
give default DOFs per node
Implemented in midaspace::Brick, midaspace::Tetra, midaspace::Quadrangle, midaspace::Triangle, midaspace::Beam, and midaspace::Gelement.
Referenced by midaspace::ElemAttribs::give_dpn_default().
|
inlinevirtual |
Reimplemented in midaspace::Brick, midaspace::Tetra, midaspace::Quadrangle, midaspace::Triangle, midaspace::Beam, midaspace::PolygonMdl, midaspace::Line, and midaspace::PolyLine.
Definition at line 411 of file cell.h.
References errol.
Referenced by connectivity_assembling().
|
inline |
Definition at line 402 of file cell.h.
References midaspace::GeometryComponent::attributes.
Referenced by midaspace::Point::finitialize(), midaspace::Edge::give_elemSize(), midaspace::Face::give_elemSize(), midaspace::ComponentGeometry2D::initialize(), integrate_duplicated_cell(), midaspace::PointDOFsCondense::PointDOFsCondense(), midaspace::Mesh::print_block_gravity_load_ANSYS(), midaspace::Mesh::print_results(), midaspace::Edge::print_row(), midaspace::Face::print_row(), midaspace::Mesh::read_mesh_equal_to_model(), midaspace::Mesh::read_mesh_OOFEM(), midaspace::Mesh::read_mesh_SIFEL(), and midaspace::Triangle::Triangle().
|
inline |
Definition at line 403 of file cell.h.
References midaspace::GeometryComponent::attributes.
|
inlinevirtual |
compute quality of element
Reimplemented in midaspace::Triangle.
const Facedge * midaspace::Element::give_same_dimension_facedge | ( | void | ) | const |
Returns edge/face/volume of same dimension as receiver (Beam returns edge, etc.)
Definition at line 836 of file cell.cpp.
References midaspace::Cell::edges, errol, midaspace::Cell::faces, and midaspace::Cell::give_dimension().
Referenced by midaspace::Node::read_input().
|
pure virtual |
give default type of stress state
Implemented in midaspace::Brick, midaspace::Tetra, midaspace::Quadrangle, midaspace::Triangle, midaspace::Beam, and midaspace::Gelement.
Referenced by midaspace::ElemAttribs::give_sst_default().
|
inlinevirtual |
compute volume of element
Reimplemented in midaspace::Quadrangle, and midaspace::Triangle.
Definition at line 433 of file cell.h.
References errol.
VTKPDtopology midaspace::Element::give_VTKPDtopology | ( | void | ) | const |
Definition at line 814 of file cell.cpp.
References _errorr, midaspace::CellGeometry_e2i_VTK(), midaspace::Cell::give_cellGeom(), midaspace::VTKPD_LINE, midaspace::VTKPD_POLYGON, and midaspace::VTKPD_Void.
bool midaspace::Element::has_fullhinge_at | ( | int | point | ) | const |
|
protectedvirtual |
DUPLICITY.
Reimplemented in midaspace::FElement.
Definition at line 990 of file cell.cpp.
References elemAttribs(), give_elemAttribs(), midaspace::Cell::integrate_duplicated_cell(), and midaspace::ElemAttribs::integrate_duplicated_one().
Referenced by midaspace::FElement::integrate_duplicated_cell().
bool midaspace::Element::is_point_on | ( | const PoinT * | point, |
const GeometryComponent *& | comp, | ||
PoinT * | nc | ||
) | const |
Function finds out mutual position of point with coords and 'element'.
created 5.4.2003, Ladislav Svoboda, termi t@cm l.fsv .cvu t.cz
Definition at line 1028 of file cell.cpp.
References _errorr, midaspace::classBrick, midaspace::Cell::edges, midaspace::Cell::faces, midaspace::Cell::give_circum(), midaspace::ProblemSubject::give_classid(), midaspace::Point::give_coord(), midaspace::Cell::give_point(), midaspace::Cell::is_point_in_sphere(), midaspace::nc_brick_3d(), midaspace::Cell::points, midaspace::Face::transform_nc(), midaspace::Elem3D::x, midaspace::Elem3D::y, midaspace::Elem3D::z, and ZERO.
Referenced by midaspace::PolyLine::divide().
|
inline |
Definition at line 437 of file cell.h.
References midaspace::DPN_DxyzRxyz, elemAttribs(), and midaspace::Cell::give_dimension().
|
inline |
Definition at line 439 of file cell.h.
References midaspace::DPN_DxyzR___, elemAttribs(), and midaspace::Cell::give_dimension().
Referenced by midaspace::Edge::print_row().
void midaspace::Element::print_row_VTK | ( | FILE * | stream | ) | const |
print element row output for VTK
Definition at line 1091 of file cell.cpp.
References midaspace::Cell::points.
|
virtual |
Reimplemented in midaspace::Brick, and midaspace::Tetra.
Definition at line 1100 of file cell.cpp.
References midaspace::Cell::points.
|
inline |
Definition at line 399 of file cell.h.
References elemAttribs(), midaspace::Cell::give_point_indx(), and midaspace::ElemAttribs::set_fullhinge_at().
void midaspace::Element::set_load | ( | int | i, |
int | indx = -1 |
||
) |
Definition at line 956 of file cell.cpp.
References _errorr, _errorr2, midaspace::BC_CBL, midaspace::BC_CEL, midaspace::BC_CFL, midaspace::BC_DW, connectivity_assembling(), midaspace::GeometrySubject::Geom, midaspace::Problem::give_BC(), midaspace::ProblemSubject::give_ID(), midaspace::BoundaryCond::give_loctype(), and midaspace::ProblemSubject::Pd.
|
virtual |
*** SET ***
Reimplemented from midaspace::GeometryComponent.
Definition at line 971 of file cell.cpp.
References elemAttribs(), midaspace::GeometryComponent::set_mprop(), and midaspace::ElemAttribs::set_Patt().
Referenced by midaspace::PolyLine::findout_segment_domain(), midaspace::FElement::read_input(), midaspace::Model::read_model_MELNIK(), midaspace::Model::read_model_polylines(), and set_prop_node_inher().
void midaspace::Element::set_prop_node_inher | ( | bool | everynode | ) |
inherit property from element to nodes, only if node has one superelem
Definition at line 977 of file cell.cpp.
References errol, midaspace::GeometryComponent::give_mproperty(), midaspace::GeometryComponent::give_mproperty_cnt(), midaspace::Cell::points, and set_mprop().
|
virtual |
switch node pointer form slave to master
switch node pointer form oldnod to newnode, return yes, if any node switched
Reimplemented from midaspace::Cell.
Definition at line 1010 of file cell.cpp.
References midaspace::Cell::duplmaster, midaspace::ProblemSubject::give_ID(), midaspace::Point::give_numsuperelem(), midaspace::Point::give_superelem(), midaspace::Cell::has_same_geom_with(), midaspace::Cell::setup_duplicity_master(), and midaspace::Cell::switch_node_pointer().
Referenced by midaspace::Point::make_invisible(), and switch_node_pointer_in_all_components().
void midaspace::Element::switch_node_pointer_in_all_components | ( | Point * | slave, |
Point * | master, | ||
bool | duplcheck | ||
) |
switch node pointer from oldnode/slave to newnode/master on this and all components (edges, faces)
Definition at line 1001 of file cell.cpp.
References midaspace::Cell::edges, midaspace::Cell::faces, and switch_node_pointer().
Referenced by midaspace::Point::finitialize().