1 #ifndef MIDAS_SUBSTRUCTS_H
2 #define MIDAS_SUBSTRUCTS_H
105 for (
int i=0; i<n; i++) {
149 return (
att[0] == 0 &&
att[1] == 0 &&
att[2] == 0 &&
att[3] == 0 &&
att[4] == 0 &&
att[5] == 1);
155 if (
att==NULL)
return false;
156 register int i =
ndofs, sum = 0;
157 while (i--) sum +=
att[i];
170 for (
int i=0; i<
ndofs; i++) (*aa)[(int)
mask[i]-1] =
att[i];
203 for (
int i=0; i<
ndofs; i++)
256 for (
int i=0; i<
ndofs; i++) {
264 for (
int i=0; i<
ndofs; i++)
270 for (
int i=0; i<
ndofs; i++)
308 #endif // MIDAS_SUBSTRUCTS_H
virtual ~PointDOFsAttributes()
DESTRUCTOR.
PointDOFsBCPM(long gid, const GeometryComponent *owner)
CONSTRUCTOR.
PointDOFsRANHN(long gid, const Problem *owner)
CONSTRUCTOR.
int BC_give_att_SIFEL_NODEBC_reverted(int i) const
void set_ndofsatt(int n, int *val)
virtual ~PointDOFsRANHN()
DESTRUCTOR.
void set_full_hinge(bool noXrot)
Sets all rotation DOFs to be condensed.
const int * give_att(void) const
int give_ndofs(void) const
virtual void checkConsistency(void) const
Checks data consistency.
bool is_full_hinge(void) const
Returns true if all rotation DOFs are condensed.
long arrays_arenot_identical(long n, ArgType *a1, ArgType *a2)
bool is_supported(void) const
#define SP_scan_expected_number_exit(_1, _2, _3)
PointDOFsAttributes(long gid, const Problem *owner)
CONSTRUCTOR.
void RAN_set_full_slave_node(void)
void scan_att_ndofs_new(const char *&str)
void rescan_att(const char *&str)
PointDOFsBCPM(long gid, const Problem *owner)
CONSTRUCTOR.
PointDOFsCondense(const PointDOFsCondense *src, const GeometryComponent *owner)
CONSTRUCTOR COPY.
virtual void checkConsistency(void) const
Checks data consistency.
Derived class for management of RAN (rigid arm node) or HN (hanging node) connection of DOFs (Degrees...
void scan_mask_ndofs_new(const char *&str)
void scan_ndofs_new(const char *&str)
*** SCAN ***
const int * give_mask(void) const
bool is_identical_with(const PointDOFsAttributes *src) const
void set_standard_att_according_to_ndofs(void)
PointDOFsAttributes(const PointDOFsAttributes *src, const GeometryComponent *owner)
CONSTRUCTOR COPY.
int * DOFsPerNode2dofBCmask(DOFsPerNode od)
int * mask
Mask array is "ndofs" long.
int give_att(int i) const
const Problem * Pd
Pointer to owner = parent problem.
PointDOFsRANHN(long gid, const GeometryComponent *owner)
CONSTRUCTOR.
PointDOFsCondense(long gid, const Element *owner)
CONSTRUCTOR.
PointDOFsBCPM(const PointDOFsBCPM *src, const GeometryComponent *owner)
CONSTRUCTOR COPY.
virtual void checkConsistency(void) const
Checks data consistency.
void BC_support_all_rot_dofs(void)
Base class for management of DOF (Degrees Of Freedom) attributes at a node.
int give_mask(int i) const
Lvctr * resize_ignore_vals(long newsize)
resize, ignore values
Derived class for management of boundary conditions and physical meanings of DOFs (Degrees Of Freedom...
bool mask_is_null(void) const
DOFsPerNode give_DOFspnod(void) const
void assemble_full_constrained(Lvctr *aa) const
Derived class for management of condensed DOFs (Degrees Of Freedom) at a node.
void fillYourselfBy(long val)
Set all elements of the array to the given value.
void set_att(int i, int val)
virtual ~PointDOFsBCPM()
DESTRUCTOR.
bool SP_scan_array(const char *&src, int n, ArgType *a)
... array of numbers
bool SP_scan_number(const char *&src, int &dest)
... number of type int/long/double
*** *** *** *** CLASS COMPONENT *** *** *** ***
virtual ~PointDOFsCondense()
DESTRUCTOR.
void scan_mask_ndofs_expected(const char *&str)
void set_ndofsatt(int n, long *val)
PointDOFsAttributes(long gid, const GeometryComponent *owner)
CONSTRUCTOR.
int give_global_nDOFs(void) const
void set_elemDOFs_2nodesPERsixDOFs(void)
nastavit doff pro beam element, 2 uzly, 3d
void scan_att(const char *&str)
void scan_ndofs_expected(const char *&str)
void scan_mask(const char *&str)
int * att
Attribute array is "ndofs" long.
void scan_att_ndofs_expected(const char *&str)
void scan_att_new_sparse(const char *&str)
const GeometryComponent * give_GC(void) const
void BC_att_SIFEL_NODEBC_revert(void)
*** BC ***
int ndofs
Number of DOFs at a node.
void HN_initialize_slave_node(void)
hanging node
void fill_all_by(ArgType *p, long a, ArgType value)
*** *** *** *** FILL TEMPLATES *** *** *** ***