#include <plelemlt.h>
Public Member Functions | |
double | approx (vector &areacoord, vector &nodval) |
double | approx_nat (double xi, double eta, vector &nodval) |
void | appval (double xi, double eta, long fi, long nc, vector &eps, double **val) |
void | bf_matrix (matrix &n, double xi, double eta) |
void | compute_eigstress (long lcid, long eid, long ri, long ci) |
double | compute_error (long eid, double &e2, double &u2, double &sizel, vector *rsigfull, long flags) |
void | compute_nlstress (long lcid, long eid, long ri, long ci) |
void | compute_nlstressincr (long lcid, long eid, long ri, long ci) |
void | compute_nonloc_nlstress (long lcid, long eid, long ri, long ci) |
void | eigstrain_forces (long lcid, long eid, long ri, long ci, vector &nfor, vector &x, vector &y) |
void | elchar (long eid, double *&spsig, long flags) |
void | elem_integration (integratedquant iq, long lcid, long eid, long ri, long ci, vector &nv, vector &x, vector &y) |
double | error (long eid, vector &n, double &a) |
void | geom_matrix (matrix &gm, vector &x, vector &y) |
void | incr_internal_forces (long lcid, long eid, long ri, long ci, vector &ifor, vector &x, vector &y) |
void | inicipval (long eid, long ri, long ci, matrix &nodval, inictype *ictn) |
void | internal_forces (long lcid, long eid, long ri, long ci, vector &ifor, vector &x, vector &y) |
void | intpointval (long eid, vector &nodval, vector &ipval) |
void | ip_elast_stresses (long lcid, long eid, long ri, long ci) |
void | ip_strains (long lcid, long eid, long ri, long ci, vector &x, vector &y, vector &r) |
void | ipcoord (long eid, long ipp, long ri, long ci, vector &coord) |
void | ipcoordblock (long eid, long ri, long ci, double **coord) |
void | ipvolume (long eid, long ri, long ci) |
void | load_matrix (long eid, matrix &lm, vector &x, vector &y) |
void | local_values (long lcid, long eid, long ri, long ci) |
void | locglob_nodeval (long edid, vector &nv, vector &tnv, vector &x, vector &y) |
void | mass_matrix (long eid, matrix &mm, vector &x, vector &y) |
void | nod_others (long eid, long ri, long ci) |
void | nod_strains_comp (long lcid, long eid) |
void | nod_strains_ip (long lcid, long eid, long ri, long ci) |
void | nod_stresses_ip (long lcid, long eid, long ri, long ci) |
void | nodeforces (long eid, long *le, double *nv, vector &nf) |
void | nonloc_internal_forces (long lcid, long eid, long ri, long ci, vector &ifor, vector &x, vector &y) |
void | ntdbr_vector (long eid, vector &ntdbr) |
void | ntn_matrix (long eid, matrix &ntn) |
planeelemlt (void) | |
void | res_eigstrain_forces (long lcid, long eid, vector &nfor) |
void | res_incr_internal_forces (long lcid, long eid, vector &ifor) |
void | res_internal_forces (long lcid, long eid, vector &ifor) |
void | res_ip_strains (long lcid, long eid) |
void | res_ip_stresses (long lcid, long eid) |
void | res_load_matrix (long eid, matrix &lm) |
void | res_mass_matrix (long eid, matrix &mm) |
void | res_nonloc_internal_forces (long lcid, long eid, vector &ifor) |
void | res_stiffness_matrix (long eid, matrix &sm) |
void | stiffness_matrix (long eid, long ri, long ci, matrix &sm, vector &x, vector &y) |
void | strains (long lcid, long eid, long ri, long ci) |
void | stresses (long lcid, long eid, long ri, long ci) |
void | transf_matrix (ivector &nodes, matrix &tmat) |
~planeelemlt (void) | |
Public Attributes | |
long * | cncomp |
array of cumulative numbers of components | |
long | gncomp |
number of components for graphic purposes | |
long | intordb |
order of integration of edge load | |
long | intordmm |
order of integration of mass matrix | |
long ** | intordsm |
array of orders of integration of stiffness matrix | |
long | napfun |
number of approximated functions on the element | |
long | nb |
number of blocks | |
long * | ncomp |
array containing numbers of components | |
long | ndofe |
number of DOFs on the element | |
long | ned |
number of edges on one element | |
long ** | nip |
array of numbers of integration points in sets | |
long | nne |
number of nodes on one element | |
long | nned |
number of nodes on one edge | |
strastrestate | ssst |
stress/strain state | |
long | tncomp |
total number of components of stress and strain tensors | |
long | tnip |
total number of integration points on element |
class planeelemlt - defines plane triangular element with linear approximation functions
JK
Definition at line 17 of file plelemlt.h.
planeelemlt | ( | void | ) |
~planeelemlt | ( | void | ) |
function approximates function defined by nodal values area coordinates are used
areacoord | - vector containing area coordinates | |
nodval | - nodal values |
JK
Definition at line 98 of file plelemlt.cpp.
Referenced by compute_error(), error(), planeelemqt::give_sig_roof(), interpolate(), intpointval(), ntdbr_vector(), and ntn_matrix().
double approx_nat | ( | double | xi, | |
double | eta, | |||
vector & | nodval | |||
) |
function approximates function defined by nodal values natural coordinates are used
xi,eta | - natural coordinates | |
nodval | - nodal values |
JK
Definition at line 114 of file plelemlt.cpp.
Referenced by appval(), elem_integration(), inicipval(), ipcoord(), ipcoordblock(), ipvolume(), load_matrix(), mass_matrix(), and stiffness_matrix().
void appval | ( | double | xi, | |
double | eta, | |||
long | fi, | |||
long | nc, | |||
vector & | eps, | |||
double ** | val | |||
) |
function computes strains in arbitrary point on element
xi,eta | - natural coordinates of the point | |
eps | - array containing strains | |
val | - array containing values on element |
11.5.2002
Definition at line 612 of file plelemlt.cpp.
References allocv(), approx_nat(), destrv(), nne, and nodval().
void bf_matrix | ( | matrix & | n, | |
double | xi, | |||
double | eta | |||
) |
function returns matrix of base function
n | - matrix of approximation functions | |
xi,eta | - natural coordinates |
JK, 17.8.2001
Definition at line 136 of file plelemlt.cpp.
References vector::a, bf_lin_3_2d(), fillm(), and nne.
Referenced by load_matrix(), mass_matrix(), and nodeforces().
void compute_eigstress | ( | long | lcid, | |
long | eid, | |||
long | ri, | |||
long | ci | |||
) |
function computes nonlocal correct stresses at integration points on element
lcid | - number of load case | |
eid | - element id | |
ri,ci | - row and column indices |
JK, 27.11.2006
Definition at line 1128 of file plelemlt.cpp.
References mechtop::elements, mechmat::giveeigstrain(), element::ipp, mechmat::matstiff(), Mm, Mt, mxv(), mechmat::storeeigstress(), and tncomp.
Referenced by eigstrain_forces().
double compute_error | ( | long | eid, | |
double & | e2, | |||
double & | u2, | |||
double & | sizel, | |||
vector * | rderfull, | |||
long | flags | |||
) |
Function 1. computes "e2" - square of energy norm of error of solution at element e2 = integral{ (der_fine - der)T * D * (der_fine - der) } der_fine = recovered strains or stresses, values in nodes are defined by "rderfull" and interpolated by base functions over element der = strains/stresses obtained by FEM D_inv = inverse stiffness matrix of material 2. computes "u2" - square of energy norm of strain at element u2 = integral{ epsT * D * eps } eps = strain obtained by FEM D = stiffness matrix of material 3. computes area of element and returns 4. computes "sizel" (characteristic size of element)
eid | - element id | |
e2 | - empty(returned) value; | |
u2 | - empty(returned) value; | |
sizel | - empty(returned) value; | |
rderfull | - 1Darray of strains/stresses in nodes; dimmension is gt->nn x ncomp |
created 3.5.2002, Ladislav Svoboda, termit@cml.fsv.cvut.cz
Definition at line 1773 of file plelemlt.cpp.
References vector::a, approx(), mechtop::elements, fillv(), gauss_points_tr(), give_der_star(), mechtop::give_elemnodes(), mechtop::give_node_coord2d(), mechcrsec::give_thickness(), mechmat::givestrain(), mechmat::givestress(), invm(), element::ipp, mechmat::matstiff(), Mc, Mm, Mt, mxv(), mechtop::nn, nne, nodes, scprd(), subv(), tncomp, and vxmxv().
Referenced by adaptivity::compute_error().
void compute_nlstress | ( | long | lcid, | |
long | eid, | |||
long | ri, | |||
long | ci | |||
) |
function computes correct stresses at integration points on element
lcid | - number of load case | |
eid | - element id | |
ri,ci | - row and column indices |
TKo, 7.2008
Definition at line 1043 of file plelemlt.cpp.
References mechmat::computenlstresses(), mechtop::elements, element::ipp, Mm, Mp, Mt, and probdesc::strcomp.
Referenced by elem_nlstresses(), and internal_forces().
void compute_nlstressincr | ( | long | lcid, | |
long | eid, | |||
long | ri, | |||
long | ci | |||
) |
function computes correct stresses increment at integration points on element
lcid | - number of load case | |
eid | - element id | |
ri,ci | - row and column indices |
TKo, 7.2008
Definition at line 1107 of file plelemlt.cpp.
References mechmat::computenlstressesincr(), mechtop::elements, element::ipp, Mm, Mp, Mt, and probdesc::strcomp.
Referenced by incr_internal_forces().
void compute_nonloc_nlstress | ( | long | lcid, | |
long | eid, | |||
long | ri, | |||
long | ci | |||
) |
function computes nonlocal correct stresses at integration points on element
lcid | - number of load case | |
eid | - element id | |
ri,ci | - row and column indices |
JK, 27.11.2006
Definition at line 1086 of file plelemlt.cpp.
References mechmat::compnonloc_nlstresses(), mechtop::elements, element::ipp, Mm, Mp, Mt, and probdesc::strcomp.
Referenced by nonloc_internal_forces().
void eigstrain_forces | ( | long | lcid, | |
long | eid, | |||
long | ri, | |||
long | ci, | |||
vector & | nfor, | |||
vector & | x, | |||
vector & | y | |||
) |
function computes nodal forces caused by temperature changes
this function is used in plane stress/strain elements (function is called by function res_eigstrain_forces) and shell elements
eid | - element id | |
ri,ci | - row and column indices | |
nfor | - array containing nodal forces | |
x,y | - nodal coordinates |
30.11.2002, JK
Definition at line 867 of file plelemlt.cpp.
References compute_eigstress(), probdesc::eigstrcomp, eigstress, elem_integration(), and Mp.
Referenced by res_eigstrain_forces().
void elchar | ( | long | eid, | |
double *& | spder, | |||
long | flags | |||
) |
This function prepare array 'spder' for using in function `least_squarespr_default`. It allocates and fills up array 'spder' by derivatives(strain ro stress) in sampling points. For planeelemlt sampling points == main integration point == Gauss's point at the centroid of element.
eid | - element id | |
spder | - allocated array | |
flags | - determines by which derivate is spder filled |
created 3.5.2002, Ladislav Svoboda, termit@cml.fsv.cvut.cz
Definition at line 1858 of file plelemlt.cpp.
References matrix::a, vector::a, allocm(), allocv(), mechtop::elements, mechmat::givestrain(), mechmat::givestress(), element::ipp, matrix::m, mechmat::matstiff(), Mm, Mt, mxv(), matrix::n, vector::n, and tncomp.
void elem_integration | ( | integratedquant | iq, | |
long | lcid, | |||
long | eid, | |||
long | ri, | |||
long | ci, | |||
vector & | nv, | |||
vector & | x, | |||
vector & | y | |||
) |
function integrates selected quantity over the finite element it results in nodal values
iq | - type of integrated quantity (see alias.h) | |
lcid | - number of load case | |
eid | - element id | |
ri,ci | - row and column indices | |
nv | - nodal values | |
x,y | - node coordinates |
JK, 27.11.2006
Definition at line 1160 of file plelemlt.cpp.
References addv(), approx_nat(), cmulv(), cncomp, mechtop::elements, fillv(), geom_matrix(), mechcrsec::give_thickness(), mechmat::givequantity(), element::ipp, Mc, Mm, Mt, mtxv(), ndofe, nne, nodes, and tncomp.
Referenced by eigstrain_forces(), incr_internal_forces(), internal_forces(), and nonloc_internal_forces().
double error | ( | long | eid, | |
vector & | n, | |||
double & | a | |||
) |
created 3.5.2002, Ladislav Svoboda, termit@cml.fsv.cvut.cz
Definition at line 1894 of file plelemlt.cpp.
References approx(), fillv(), mechtop::give_elemnodes(), mechtop::give_node_coord2d(), Mt, nne, nodes, and nodval().
function assembles strain-displacement (geometric) matrix
gm | - geometric matrix | |
x,y | - node coordinates |
JK, 17.8.2001
Definition at line 161 of file plelemlt.cpp.
References vector::a, fillm(), plsb(), and plsc().
Referenced by elem_integration(), planeelemqt::give_sig_roof(), ip_strains(), nod_strains_comp(), and stiffness_matrix().
void incr_internal_forces | ( | long | lcid, | |
long | eid, | |||
long | ri, | |||
long | ci, | |||
vector & | ifor, | |||
vector & | x, | |||
vector & | y | |||
) |
function computes increments of internal forces
this function is used in plane stress/strain elements (function is called by function res_internal_forces) and shell elements
lcid | - number of load case | |
eid | - element id | |
ri,ci | - row and column indices | |
ifor | - vector of internal forces | |
x,y | - node coordinates |
JK, 27.11.2006
Definition at line 839 of file plelemlt.cpp.
References compute_nlstressincr(), elem_integration(), and stressincr.
Referenced by res_incr_internal_forces().
The function computes initial values of the given quantities at each integration point of the element from the nodal values given by the parameter nodval. Initial condition types must be the same for all nodes of the element.
eid | - element id | |
ri | - block row index | |
ci | - block column index | |
nodval | - nodal values of particular initial conditions. nodval[i][j] represents value of j-th initial condition at i-th node of the given element. | |
ictn | - array of types of initial condition for each node of element. The type of initial condition determines which values are being specified in the node. (ictn[i] & inistrain) returns nonzero if nodal values of initial strains are specified (ictn[i] & inistress) returns nonzero if nodal values of initial stresses are specified (ictn[i] & iniother) returns nonzero if nodal values of initial values of eqother array are specified (ictn[i] & inicond) returns nonzero if nodal values of other initial conditions are specified |
The function does not return anything.
Created by Tomas Koudelka 2004 Revised by Tomas Koudelka 03.2012
Definition at line 1534 of file plelemlt.cpp.
References vector::a, allocv(), approx_nat(), destrv(), mechtop::elements, intpoints::eqother, gauss_points_tr(), mechmat::ic, inicond, iniother, inistrain, inistress, intordsm, mechmat::ip, element::ipp, memset(), Mm, Mt, matrix::n, nb, intpoints::ncompeqother, intpoints::ncompstr, nne, print_err(), intpoints::strain, and intpoints::stress.
Referenced by mechbclc::inicipval().
void internal_forces | ( | long | lcid, | |
long | eid, | |||
long | ri, | |||
long | ci, | |||
vector & | ifor, | |||
vector & | x, | |||
vector & | y | |||
) |
function computes internal forces
this function is used in plane stress/strain elements (function is called by function res_internal_forces) and shell elements
lcid | - number of load case | |
eid | - element id | |
ri,ci | - row and column indices | |
ifor | - vector of internal forces | |
x,y | - node coordinates |
JK, 27.11.2006
Definition at line 783 of file plelemlt.cpp.
References compute_nlstress(), elem_integration(), and locstress.
Referenced by res_internal_forces().
function interpolates the nodal values to the integration points on the element
eid | - element id |
TKr, 05/06/2014
Definition at line 989 of file plelemlt.cpp.
References approx(), and fillv().
Referenced by elem_intpointval().
void ip_elast_stresses | ( | long | lcid, | |
long | eid, | |||
long | ri, | |||
long | ci | |||
) |
function computes stresses at integration points of element stresses are computed from strains with the help of elastic stiffness
lcid | - load case id | |
eid | - element id | |
ri | - row index | |
ci | - column index |
JK, 27.11.2006
Definition at line 667 of file plelemlt.cpp.
References mechtop::elements, mechmat::givestrain(), element::ipp, mechmat::matstiff(), Mm, Mt, mxv(), mechmat::storestress(), and tncomp.
function computes strains at integration points of element
lcid | - load case id | |
eid | - element id | |
ri | - row index | |
ci | - column index | |
x,y | - node coordinates | |
r | - nodal displacements |
JK, 10.5.2002
Definition at line 498 of file plelemlt.cpp.
References cncomp, mechtop::elements, geom_matrix(), element::ipp, Mm, Mt, mxv(), ncomp, ndofe, mechmat::storestrain(), and tncomp.
Referenced by res_ip_strains().
void ipcoord | ( | long | eid, | |
long | ipp, | |||
long | ri, | |||
long | ci, | |||
vector & | coord | |||
) |
function returns coordinates of integration points
eid | - element id | |
ipp | - integration point pointer | |
ri | - row index | |
ci | - column index | |
coord | - vector of coordinates |
19.1.2002
Definition at line 1210 of file plelemlt.cpp.
References vector::a, approx_nat(), mechtop::elements, gauss_points_tr(), mechtop::give_node_coord2d(), intordsm, element::ipp, Mt, and nne.
Referenced by ipcoord().
void ipcoordblock | ( | long | eid, | |
long | ri, | |||
long | ci, | |||
double ** | coord | |||
) |
function returns coordinates of integration points
eid | - element id | |
ri | - row index | |
ci | - column index | |
coord | - array of coordinates |
19.1.2002
Definition at line 1240 of file plelemlt.cpp.
References vector::a, approx_nat(), gauss_points_tr(), mechtop::give_node_coord2d(), intordsm, Mt, and nne.
void ipvolume | ( | long | eid, | |
long | ri, | |||
long | ci | |||
) |
function computes volume appropriate to integration point
2.3.2004, JK 07.2008 TKo - multiplictaion by thickness added
Definition at line 1649 of file plelemlt.cpp.
References approx_nat(), mechtop::elements, mechtop::give_elemnodes(), mechtop::give_node_coord2d(), mechcrsec::give_thickness(), element::ipp, jac_2d(), Mc, Mm, Mt, nne, nodes, and mechmat::storeipvol().
Referenced by ipvolume().
function computes load matrix of the plane stress triangular finite element with linear approximation functions load vector is obtained after premultiplying load matrix by nodal load values
eid | - number of element | |
lm | - load matrix | |
x,y | - node coordinates |
JK, 25.7.2001
Definition at line 387 of file plelemlt.cpp.
References matrix::a, approx_nat(), bf_matrix(), fillm(), gauss_points_tr(), mechtop::give_elemnodes(), mechcrsec::give_thickness(), intordmm, matrix::m, Mc, Mt, matrix::n, napfun, ndofe, nne, nnj(), and nodes.
Referenced by res_load_matrix().
void local_values | ( | long | lcid, | |
long | eid, | |||
long | ri, | |||
long | ci | |||
) |
function computes local values which will be used for averageing in nonlocal models at integration points. Mp->nonlocphase have to be 1.
lcid | - number of load case | |
eid | - element id | |
ri,ci | - row and column indices |
TKo, 7.2008
Definition at line 1065 of file plelemlt.cpp.
References mechmat::computenlstresses(), mechtop::elements, element::ipp, Mm, Mp, Mt, and probdesc::strcomp.
Referenced by elem_local_values().
function transforms nodal values from the local system to the global system
edid | - edge id | |
nv | - array of nodal values | |
tnv | - array of transformed nodal values | |
x,y | - arrays of nodal coordinates |
JK, 5.4.2011
Definition at line 1384 of file plelemlt.cpp.
References vector::a, matrix::a, mxv(), and print_err().
Referenced by nodeforces().
function computes mass matrix of the plane stress triangular finite element with linear approximation functions
eid | - number of element | |
mm | - mass matrix | |
x,y | - node coordinates |
JK, 17.6.2001
Definition at line 308 of file plelemlt.cpp.
References matrix::a, approx_nat(), bf_matrix(), fillm(), gauss_points_tr(), mechcrsec::give_density(), mechtop::give_elemnodes(), mechcrsec::give_thickness(), intordmm, matrix::m, Mc, Mt, matrix::n, napfun, ndofe, nne, nnj(), and nodes.
Referenced by res_mass_matrix().
void nod_others | ( | long | eid, | |
long | ri, | |||
long | ci | |||
) |
Definition at line 730 of file plelemlt.cpp.
References allocv(), destrv(), mechtop::elements, intpoints::eqother, mechtop::give_elemnodes(), mechmat::ip, element::ipp, matassem_lsm(), Mm, Mp, Mt, ncomp, intpoints::ncompother, nne, nodcoord_planelt(), nodes, nullv(), other, mechtop::other_nodal_values(), rhsassem_lsm(), solve_lsm(), and probdesc::zero.
Referenced by compute_nodeothers().
void nod_strains_comp | ( | long | lcid, | |
long | eid | |||
) |
function computes nodal strains directly
lcid | - load case id | |
eid | - element id |
JK, 25.9.2004
Definition at line 553 of file plelemlt.cpp.
References allocm(), allocv(), copyv(), destrm(), destrv(), eldispl(), geom_matrix(), mechtop::give_elemnodes(), mechtop::give_node_coord2d(), lgvectortransf(), mechtop::locsystems(), Mt, mxv(), ndofe, nne, mechtop::nodes, nodes, node::storestrain(), tncomp, and transf_matrix().
void nod_strains_ip | ( | long | lcid, | |
long | eid, | |||
long | ri, | |||
long | ci | |||
) |
function computes strains at nodes of element
lcid | - load case id | |
eid | - element id | |
ri | - row index | |
ci | - column index |
JK, 10.5.2002
Definition at line 521 of file plelemlt.cpp.
References mechtop::elements, mechtop::give_elemnodes(), mechmat::givestrain(), gncomp, intordsm, element::ipp, Mm, Mt, nne, nod, mechtop::nodes, nodip_planelt(), and node::storestrain().
Referenced by compute_nodestrains().
void nod_stresses_ip | ( | long | lcid, | |
long | eid, | |||
long | ri, | |||
long | ci | |||
) |
function computes stresses at nodes of element
lcid | - load case id | |
eid | - element id | |
ri,ci | - row and column indices |
JK, 10.5.2002
Definition at line 697 of file plelemlt.cpp.
References mechtop::elements, mechtop::give_elemnodes(), mechmat::givestress(), gncomp, intordsm, element::ipp, Mm, Mt, nne, nod, mechtop::nodes, nodip_planelt(), and node::storestress().
Referenced by compute_nodestresses().
void nodeforces | ( | long | eid, | |
long * | le, | |||
double * | nv, | |||
vector & | nf | |||
) |
function computes nodal forces generated by continuous edge load
eid | - element id | |
le | - loaded edge indicator | |
nv | - array of nodal values | |
nf | - vector of nodal forces |
JK, 5.4.2011
Definition at line 1264 of file plelemlt.cpp.
References matrix::a, addv(), bf_matrix(), fillm(), fillv(), gauss_points(), mechtop::give_node_coord2d(), intordb, jac1d_2d(), locglob_nodeval(), Mt, mxv(), napfun, ndofe, nne, and nnj().
Referenced by loadel::edgeload().
void nonloc_internal_forces | ( | long | lcid, | |
long | eid, | |||
long | ri, | |||
long | ci, | |||
vector & | ifor, | |||
vector & | x, | |||
vector & | y | |||
) |
function computes internal forces for nonlocal models
this function is used in plane stress/strain elements (function is called by function res_nonloc_internal_forces) and shell elements
lcid | - number of load case | |
eid | - element id | |
ri,ci | - row and column indices | |
ifor | - vector of internal forces | |
x,y | - node coordinates |
JK, 27.11.2006
Definition at line 812 of file plelemlt.cpp.
References compute_nonloc_nlstress(), elem_integration(), and nonlocstress.
Referenced by res_nonloc_internal_forces().
void ntdbr_vector | ( | long | eid, | |
vector & | ntdbr | |||
) |
Function integrates function "NT*D*B*r" (= NT*Stress) over whole element. N is matrix of basic functions. !!! Values in 'ntdbr' are stored unusually. Not after this manner {(val[0]; ... ;val[tncomp])[0] ; ... ; (val[0]; ... ;val[tncomp])[nne]} but after this manner {(val[0]; ... ;val[nne])[0] ; ... ; (val[0]; ... ;val[nne])[ntncomp]}
eid | - element id | |
ntdbr | - empty(returned) array, dimension is tncomp*nne |
created 3.5.2002, Ladislav Svoboda, termit@cml.fsv.cvut.cz
Definition at line 1687 of file plelemlt.cpp.
References approx(), mechtop::elements, fillv(), mechtop::give_elemnodes(), mechtop::give_node_coord2d(), mechcrsec::give_thickness(), mechmat::givestrain(), element::ipp, mechmat::matstiff(), Mc, Mm, Mt, mxv(), nne, nodes, and tncomp.
Referenced by z2_smoothing::compute_ntdbr().
void ntn_matrix | ( | long | eid, | |
matrix & | ntn | |||
) |
Function integrates function "NT*N" over whole element. N is matrix of basic functions. !!! Matrix N is composed of three same blocks, it is computed only one third.
eid | - element id | |
ntn | - empty(returned) 2Darray, dimension is nne x nne |
created 3.5.2002, Ladislav Svoboda, termit@cml.fsv.cvut.cz
Definition at line 1728 of file plelemlt.cpp.
References approx(), fillm(), fillv(), mechtop::give_elemnodes(), mechtop::give_node_coord2d(), mechcrsec::give_thickness(), Mc, Mt, nne, and nodes.
Referenced by z2_smoothing::compute_ainv(), and z2_smoothing::compute_ntn_sky().
void res_eigstrain_forces | ( | long | lcid, | |
long | eid, | |||
vector & | nfor | |||
) |
function computes nodal forces caused by eigenstrains eigenstrain expresses e.g. temperature strains
lcid | - load case id | |
eid | - element id | |
nfor | - array containing nodal forces |
JK, 27.11.2006
Definition at line 1009 of file plelemlt.cpp.
References copyv(), eigstrain_forces(), mechtop::give_elemnodes(), mechtop::give_node_coord2d(), glvectortransf(), mechtop::locsystems(), Mt, ndofe, nne, nodes, and transf_matrix().
Referenced by elem_eigstrain_forces().
void res_incr_internal_forces | ( | long | lcid, | |
long | eid, | |||
vector & | ifor | |||
) |
function computes resulting increments of internal forces
lcid | - load case id | |
eid | - element id | |
ifor | - internal forces |
TKo 7.2008
Definition at line 959 of file plelemlt.cpp.
References copyv(), mechtop::give_elemnodes(), mechtop::give_node_coord2d(), glvectortransf(), incr_internal_forces(), mechtop::locsystems(), Mt, ndofe, nne, nodes, and transf_matrix().
Referenced by elem_incr_internal_forces().
void res_internal_forces | ( | long | lcid, | |
long | eid, | |||
vector & | ifor | |||
) |
function computes internal forces
lcid | - load case id | |
eid | - element id | |
ifor | - internal forces |
JK, 27.11.2006
Definition at line 890 of file plelemlt.cpp.
References copyv(), mechtop::give_elemnodes(), mechtop::give_node_coord2d(), glvectortransf(), internal_forces(), mechtop::locsystems(), Mt, ndofe, nne, nodes, and transf_matrix().
Referenced by elem_internal_forces().
void res_ip_strains | ( | long | lcid, | |
long | eid | |||
) |
function computes strains at integration points
lcid | - load case id | |
eid | - element id |
JK
Definition at line 459 of file plelemlt.cpp.
References vector::a, allocm(), allocv(), copyv(), destrm(), destrv(), eldispl(), mechtop::give_elemnodes(), mechtop::give_node_coord2d(), ip_strains(), lgvectortransf(), mechtop::locsystems(), Mt, ndofe, nne, nodes, and transf_matrix().
Referenced by compute_ipstrains().
void res_ip_stresses | ( | long | lcid, | |
long | eid | |||
) |
function computes stresses at integration points of element stresses are computed by material models
lcid | - load case id | |
eid | - element id |
JK, 10.5.2002
Definition at line 644 of file plelemlt.cpp.
References mechmat::computenlstresses(), mechtop::elements, element::ipp, Mm, Mp, Mt, and probdesc::strcomp.
Referenced by compute_ipstresses().
void res_load_matrix | ( | long | eid, | |
matrix & | lm | |||
) |
function computes load matrix of the plane stress triangular finite element with linear approximation functions load vector is obtained after premultiplying load matrix by nodal load values
eid | - number of element | |
lm | - load matrix |
JK, 25.7.2001
Definition at line 429 of file plelemlt.cpp.
References mechtop::give_elemnodes(), mechtop::give_node_coord2d(), glmatrixtransf(), load_matrix(), mechtop::locsystems(), Mt, ndofe, nne, nodes, and transf_matrix().
Referenced by loadmat().
void res_mass_matrix | ( | long | eid, | |
matrix & | mm | |||
) |
function computes mass matrix of the plane stress triangular finite element with linear approximation functions
eid | - number of element | |
mm | - mass matrix |
JK, 17.6.2001
Definition at line 352 of file plelemlt.cpp.
References mechtop::give_elemnodes(), mechtop::give_node_coord2d(), glmatrixtransf(), mechtop::locsystems(), mass_matrix(), Mt, ndofe, nne, nodes, and transf_matrix().
Referenced by massmat().
void res_nonloc_internal_forces | ( | long | lcid, | |
long | eid, | |||
vector & | ifor | |||
) |
function computes nonlocal internal forces
lcid | - number of load case | |
eid | - element id | |
ri,ci | - row and column indices | |
ifor | - vector of internal forces |
JK, 27.11.2006
Definition at line 925 of file plelemlt.cpp.
References copyv(), mechtop::give_elemnodes(), mechtop::give_node_coord2d(), glvectortransf(), mechtop::locsystems(), Mt, ndofe, nne, nodes, nonloc_internal_forces(), and transf_matrix().
Referenced by elem_nonloc_internal_forces().
void res_stiffness_matrix | ( | long | eid, | |
matrix & | sm | |||
) |
function computes stiffness matrix of plane stress triangular finite element with linear approximation functions
eid | - element id | |
sm | - stiffness matrix |
JK, 17.8.2001
Definition at line 277 of file plelemlt.cpp.
References mechtop::give_elemnodes(), mechtop::give_node_coord2d(), glmatrixtransf(), mechtop::locsystems(), Mt, ndofe, nne, nodes, stiffness_matrix(), and transf_matrix().
Referenced by stiffmat().
function computes stiffness matrix of plane stress triangular finite element with linear approximation functions
eid | - element id | |
ri,ci | - row and column indices | |
sm | - stiffness matrix | |
x,y | - node coordinates |
JK, 17.8.2001
Definition at line 229 of file plelemlt.cpp.
References matrix::a, approx_nat(), bdbj(), mechtop::elements, fillm(), geom_matrix(), mechtop::give_elemnodes(), mechcrsec::give_thickness(), element::ipp, mechmat::matstiff(), Mc, Mm, Mt, ndofe, nne, nodes, and tncomp.
Referenced by res_stiffness_matrix().
void strains | ( | long | lcid, | |
long | eid, | |||
long | ri, | |||
long | ci | |||
) |
Definition at line 595 of file plelemlt.cpp.
void stresses | ( | long | lcid, | |
long | eid, | |||
long | ri, | |||
long | ci | |||
) |
Definition at line 724 of file plelemlt.cpp.
Referenced by computestresses().
function assembles transformation matrix from local nodal coordinate system to the global coordinate system x_g = T x_l
inodes | - array containing node numbers | |
tmat | - transfomation matrix |
JK, 17.8.2001
Definition at line 198 of file plelemlt.cpp.
References node::e1, node::e2, fillm(), matrix::m, Mt, ivector::n, mechtop::nodes, and node::transf.
Referenced by nod_strains_comp(), res_eigstrain_forces(), res_incr_internal_forces(), res_internal_forces(), res_ip_strains(), res_load_matrix(), res_mass_matrix(), res_nonloc_internal_forces(), and res_stiffness_matrix().
long* cncomp |
array of cumulative numbers of components
Definition at line 101 of file plelemlt.h.
Referenced by elem_integration(), ip_strains(), planeelemlt(), and ~planeelemlt().
long gncomp |
number of components for graphic purposes
Definition at line 95 of file plelemlt.h.
Referenced by nod_strains_ip(), nod_stresses_ip(), and planeelemlt().
long intordb |
order of integration of edge load
Definition at line 113 of file plelemlt.h.
Referenced by nodeforces(), and planeelemlt().
long intordmm |
order of integration of mass matrix
Definition at line 107 of file plelemlt.h.
Referenced by load_matrix(), mass_matrix(), and planeelemlt().
long** intordsm |
array of orders of integration of stiffness matrix
Definition at line 105 of file plelemlt.h.
Referenced by mechtop::give_intordsm(), inicipval(), ipcoord(), ipcoordblock(), nod_strains_ip(), nod_stresses_ip(), planeelemlt(), and ~planeelemlt().
long napfun |
number of approximated functions on the element
Definition at line 103 of file plelemlt.h.
Referenced by mechtop::give_napfun(), load_matrix(), mass_matrix(), nodeforces(), and planeelemlt().
long nb |
number of blocks
Definition at line 111 of file plelemlt.h.
Referenced by adaptivity::check_consistency(), mechtop::give_nb(), mechtop::give_nb_te(), inicipval(), planeelemlt(), and ~planeelemlt().
long* ncomp |
array containing numbers of components
Definition at line 99 of file plelemlt.h.
Referenced by adaptivity::check_consistency(), ip_strains(), nod_others(), planeelemlt(), and ~planeelemlt().
long ndofe |
number of DOFs on the element
Definition at line 85 of file plelemlt.h.
Referenced by elem_integration(), mechtop::give_ndofe(), ip_strains(), load_matrix(), mass_matrix(), nod_strains_comp(), nodeforces(), planeelemlt(), res_eigstrain_forces(), res_incr_internal_forces(), res_internal_forces(), res_ip_strains(), res_load_matrix(), res_mass_matrix(), res_nonloc_internal_forces(), res_stiffness_matrix(), and stiffness_matrix().
long ned |
number of edges on one element
Definition at line 89 of file plelemlt.h.
Referenced by mechtop::give_ned(), and planeelemlt().
long** nip |
array of numbers of integration points in sets
Definition at line 109 of file plelemlt.h.
Referenced by adaptivity::check_consistency(), mechtop::give_nip(), planeelemlt(), and ~planeelemlt().
long nne |
number of nodes on one element
Definition at line 87 of file plelemlt.h.
Referenced by appval(), bf_matrix(), compute_error(), elem_integration(), error(), mechtop::give_nne(), inicipval(), ipcoord(), ipcoordblock(), ipvolume(), load_matrix(), mass_matrix(), nod_others(), nod_strains_comp(), nod_strains_ip(), nod_stresses_ip(), nodeforces(), ntdbr_vector(), ntn_matrix(), planeelemlt(), res_eigstrain_forces(), res_incr_internal_forces(), res_internal_forces(), res_ip_strains(), res_load_matrix(), res_mass_matrix(), res_nonloc_internal_forces(), res_stiffness_matrix(), and stiffness_matrix().
long nned |
number of nodes on one edge
Definition at line 91 of file plelemlt.h.
Referenced by mechtop::give_nned(), and planeelemlt().
stress/strain state
Definition at line 115 of file plelemlt.h.
long tncomp |
total number of components of stress and strain tensors
Definition at line 93 of file plelemlt.h.
Referenced by compute_eigstress(), compute_error(), elchar(), elem_integration(), mechtop::give_ncomp(), mechtop::give_tncomp(), ip_elast_stresses(), ip_strains(), nod_strains_comp(), ntdbr_vector(), planeelemlt(), and stiffness_matrix().
long tnip |
total number of integration points on element
Definition at line 97 of file plelemlt.h.
Referenced by mechtop::give_tnip(), and planeelemlt().