axisymlq Class Reference

#include <axisymlq-nb3.h>

List of all members.

Public Member Functions

void allip_strains (long lcid, long eid, long ri, long ci)
void allip_strains (long lcid, long eid, long ri, long ci)
void allip_stresses (long lcid, long eid, long ri, long ci)
void allip_stresses (long lcid, long eid, long ri, long ci)
double approx (double xi, double eta, vector &nodval)
double approx (double xi, double eta, vector &nodval)
void appstrain (long lcid, long eid, double xi, double eta, long fi, long ncomp, vector &eps)
void appstress (long lcid, long eid, double xi, double eta, long fi, long ncomp, vector &sig)
void appstress (long lcid, long eid, double xi, double eta, long fi, long ncomp, vector &sig)
void appval (double xi, double eta, long fi, long nc, vector &eps, double **val)
void appval (double xi, double eta, long fi, long nc, vector &eps, double **val)
 axisymlq (void)
 axisymlq (void)
void bf_matrix (matrix &n, double xi, double eta)
void bf_matrix (matrix &n, double xi, double eta)
void compute_eigstress (long lcid, long eid, long ri, long ci)
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 dmatblock (long ri, long ci, matrix &d, matrix &dd)
void dmatblock (long ri, long ci, matrix &d, matrix &dd)
void edge_integral (long edg, vector &x, vector &y, long intord, vector &gp, vector &w, vector &coef, matrix &km)
void edgeload (long eid, long *le, double *list, vector &nf)
void edgenodeval (long edg, vector &nodval, double *list)
void eigstrain_forces (long lcid, long eid, long ri, long ci, vector &nfor, vector &x, vector &y)
void elem_integration (integratedquant iq, long lcid, long eid, long ri, long ci, vector &nv, vector &x, vector &y)
void elem_strains (double **stra, long lcid, long eid, long ri, long ci)
void elem_stresses (double **stra, double **stre, long lcid, long eid, long ri, long ci)
void elem_stresses (double **stra, double **stre, long lcid, long eid, long ri, long ci)
void eleminit (long eid)
void geom_matrix (matrix &gm, vector &x, vector &y, double xi, double eta, double &jac)
void geom_matrix (matrix &gm, vector &x, vector &y, double xi, double eta, double &jac)
void geom_matrix_block (matrix &gm, long ri, vector &x, vector &y, double xi, double eta, double &jac)
void geom_matrix_block (matrix &gm, long ri, vector &x, vector &y, double xi, double eta, double &jac)
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 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 internal_forces (long lcid, long eid, vector &ifor)
void intpointval (long eid, vector &nodval, vector &ipval)
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 load_matrix (long eid, matrix &lm)
void load_matrix (long eid, matrix &lm)
void local_values (long lcid, long eid, long ri, long ci)
void mainip_strains (long lcid, long eid, long ri, long ci, vector &x, vector &y, vector &r)
void mainip_strains (long lcid, long eid, long ri, long ci, long ii, vector &x, vector &y, vector &r)
void mainip_stresses (long lcid, long eid, long ri, long ci)
void mainip_stresses (long lcid, long eid, long ri, long ci, long ii)
void mass_matrix (long eid, matrix &mm)
void mass_matrix (long eid, matrix &mm)
void nod_eqother_ip (long eid)
void nod_strains (long lcid, long eid, long ri, long ci)
void nod_strains_ip (long lcid, long eid, long ri, long ci)
void nod_stresses (long lcid, long eid, long ri, long ci)
void nod_stresses (long lcid, long eid, long ri, long ci)
void nod_stresses_ip (long lcid, long eid, long ri, long ci)
void nodecoord (vector &xi, vector &eta)
void nodecoord (vector &xi, vector &eta)
void nodeforces (long eid, long *le, double *nv, vector &nf)
void nodeforces (long eid, long *le, double *nv, vector &nf)
void nodipnum (long eid, long ri, long ci, ivector &ipnum)
void nonloc_internal_forces (long lcid, long eid, long ri, long ci, vector &ifor, vector &x, vector &y)
void res_allip_strains (long lcid, long eid)
void res_allip_strains (long lcid, long eid)
void res_allip_stresses (long lcid, long eid)
void res_allip_stresses (long lcid, long eid)
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_internal_forces (long lcid, long eid, vector &ifor)
void res_mainip_strains (long lcid, long eid)
void res_mainip_strains (long lcid, long eid)
void res_mainip_stresses (long lcid, long eid)
void res_mainip_stresses (long lcid, long eid)
void res_nonloc_internal_forces (long lcid, long eid, vector &ifor)
void res_stiffness_matrix (long eid, matrix &sm)
void res_stiffness_matrix (long eid, matrix &sm)
void res_temp_forces (long lcid, long eid, vector &nfor)
void stiffness_matrix (long eid, long ri, long ci, matrix &sm)
void stiffness_matrix (long eid, long ri, long ci, matrix &sm)
void stiffness_matrix_blocks (long eid, long ri, long ci, matrix &sm)
void strains (long lcid, long eid, long ri, long ci)
void strains (long lcid, long eid, long ri, long ci)
void stresses (long lcid, long eid, long ri, long ci)
void stresses (long lcid, long eid, long ri, long ci)
void temp_forces (long lcid, long eid, long ri, long ci, vector &nfor, vector &x, vector &y)
void tempstrains (long lcid, long eid, long ipp, double xi, double eta, vector &eps)
void transf_matrix (ivector &nodes, matrix &tmat)
void transf_matrix (ivector &nodes, matrix &tmat)
 ~axisymlq (void)
 ~axisymlq (void)

Public Attributes

long * cncomp
 cumulative array of numbers of components of blocks
long intordb
 order of integration on edges
long intordmm
 order of integration of mass matrix
long ** intordsm
 array of orders of numerical integration of stiffness matrix
long napfun
 number of approximated functions on the element
long nb
 number of blocks
long * ncomp
 array of numbers of components of blocks
long ndofe
 number of DOFs on the element
long ned
 number of edges
long ** nip
 array of numbers of integration points in sets
long nne
 number of nodes on one element
long nned
 number of nodes on 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

Detailed Description

class axisymlq defines quadrilateral element for axisymmetric problem

JK

class axisymlq defines quadrilateral finite element with bi-linear approxiamtion functions for axisymmetric problem

strain components are ordered in the following way: epsilon_x = du/dx epsilon_y = dv/dy epsilon_fi = u/r epsilon_xy = du/dy + dv/dx

if three blocks are used, strain components are divided in the following way: 1. block epsilon_x = du/dx epsilon_y = dv/dy 2. block epsilon_fi = u/r 3. block epsilon_xy = du/dy + dv/dx

JK

Definition at line 15 of file axisymlq-nb3.h.


Constructor & Destructor Documentation

axisymlq ( void   ) 

Definition at line 13 of file axisymlq-nb3.cpp.

References axisymm, cncomp, intordb, intordmm, intordsm, napfun, nb, ncomp, ndofe, ned, nip, nne, nned, ssst, tncomp, and tnip.

~axisymlq ( void   ) 

Definition at line 56 of file axisymlq-nb3.cpp.

References cncomp, intordsm, nb, and ncomp.

axisymlq ( void   ) 
~axisymlq ( void   ) 

Member Function Documentation

void allip_strains ( long  lcid,
long  eid,
long  ri,
long  ci 
)
void allip_strains ( long  lcid,
long  eid,
long  ri,
long  ci 
)

function computes strains in all integration points

Parameters:
lcid - load case id
eid - element id
ri,ci - row and column indices

10.5.2002

Definition at line 702 of file axisymlq-nb3.cpp.

References addv(), cmulv(), cncomp, mechtop::elements, mechmat::givestrain(), intordsm, element::ipp, Mm, Mt, ncomp, mechmat::storestrain(), and tncomp.

Referenced by res_allip_strains().

void allip_stresses ( long  lcid,
long  eid,
long  ri,
long  ci 
)
void allip_stresses ( long  lcid,
long  eid,
long  ri,
long  ci 
)

function computes stresses in all integration points

Parameters:
lcid - load case id
eid - element id
ri,ci - row and column indices

10.5.2002

Definition at line 1136 of file axisymlq-nb3.cpp.

References addv(), cmulv(), cncomp, mechtop::elements, mechmat::givestress(), intordsm, element::ipp, Mm, Mt, ncomp, mechmat::storestress(), and tncomp.

Referenced by res_allip_stresses().

double approx ( double  xi,
double  eta,
vector nodval 
)
double approx ( double  xi,
double  eta,
vector nodval 
)

function approximates function defined by nodal values

Parameters:
xi,eta - coordinates on element
nodval - nodal values

function approximates function defined by nodal values

Parameters:
xi,eta - coordinates on element
nodval - nodal values

JK

Definition at line 93 of file axisymlq-nb3.cpp.

References vector::a, bf_lin_4_2d(), f, nne, and scprd().

Referenced by appstrain(), appstress(), appval(), edge_integral(), elem_integration(), geom_matrix(), geom_matrix_block(), inicipval(), internal_forces(), intpointval(), axisymqq::intpointval2(), ipcoord(), load_matrix(), axiquadc::lower_cap_coup_matrix(), axiquadc::lower_cond_coup_matrix(), mass_matrix(), stiffness_matrix(), stiffness_matrix_blocks(), tempstrains(), axiquadc::upper_cap_coup_matrix(), axiquadc::upper_cond_coup_matrix(), and axiquadc::upper_cond_coup_vector().

void appstrain ( long  lcid,
long  eid,
double  xi,
double  eta,
long  fi,
long  ncomp,
vector eps 
)

function computes strains in arbitrary point on element

Parameters:
lcid - load case id
eid - element id
xi,eta - natural coordinates of the point
fi,li - first and last indices
eps - array containing strains

11.5.2002

Definition at line 651 of file axisymlq-nb3.cpp.

References allocv(), approx(), destrv(), mechtop::give_elemnodes(), Mt, vector::n, nne, mechtop::nodes, nodes, nodval(), node::strain, and tncomp.

Referenced by elem_stresses(), and nod_stresses().

void appstress ( long  lcid,
long  eid,
double  xi,
double  eta,
long  fi,
long  ncomp,
vector sig 
)
void appstress ( long  lcid,
long  eid,
double  xi,
double  eta,
long  fi,
long  ncomp,
vector sig 
)

function computes stresses in arbitrary point on element

Parameters:
lcid - load case id
eid - element id
xi,eta - natural coordinates of the point
fi,li - first and last indices
sig - array containing stresses

11.5.2002

Definition at line 1084 of file axisymlq-nb3.cpp.

References allocv(), approx(), destrv(), mechtop::give_elemnodes(), Mt, vector::n, nne, mechtop::nodes, nodes, nodval(), node::stress, and tncomp.

void appval ( double  xi,
double  eta,
long  fi,
long  nc,
vector eps,
double **  val 
)
void appval ( double  xi,
double  eta,
long  fi,
long  nc,
vector eps,
double **  val 
)

function computes strains in arbitrary point on element

Parameters:
xi,eta - natural coordinates of the point
eps - array containing strains
val - array containing values on element

11.5.2002

Definition at line 806 of file axisymlq-nb3.cpp.

References allocv(), approx(), destrv(), nne, and nodval().

Referenced by elem_stresses().

void bf_matrix ( matrix n,
double  xi,
double  eta 
)
void bf_matrix ( matrix n,
double  xi,
double  eta 
)

function returns matrix of approximation functions

Parameters:
n - matrix of approximation functions
xi,eta - natural coordinates

9.7.2001

function returns matrix of approximation functions

Parameters:
n - matrix of approximation functions
xi,eta - natural coordinates

JK, 9.7.2001

Definition at line 113 of file axisymlq-nb3.cpp.

References vector::a, bf_lin_4_2d(), fillm(), and nne.

Referenced by edge_integral(), load_matrix(), mass_matrix(), and nodeforces().

void compute_eigstress ( long  lcid,
long  eid,
long  ri,
long  ci 
)

function computes correct eigen stresses caused by temperature at integration points on element

Parameters:
lcid - number of load case
eid - element id
ri,ci - row and column indices

TKo 7.2008

Definition at line 1823 of file axisymlq.cpp.

References mechtop::elements, mechmat::giveeigstrain(), element::ipp, mechmat::matstiff(), Mm, Mt, mxv(), mechmat::storeeigstress(), and tncomp.

Referenced by eigstrain_forces().

void compute_nlstress ( long  lcid,
long  eid,
long  ri,
long  ci 
)

function computes correct stresses at integration points on element

Parameters:
lcid - number of load case
eid - element id
ri,ci - row and column indices

TKo 7.2008

Definition at line 1717 of file axisymlq.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 increments of stresses at integration points on element

Parameters:
lcid - number of load case
eid - element id
ri,ci - row and column indices

TKo 7.2008

Definition at line 1743 of file axisymlq.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

Parameters:
lcid - number of load case
eid - element id
ri,ci - row and column indices

TKo 7.2008

Definition at line 1797 of file axisymlq.cpp.

References mechmat::compnonloc_nlstresses(), mechtop::elements, element::ipp, Mm, Mp, Mt, and probdesc::strcomp.

Referenced by nonloc_internal_forces().

void dmatblock ( long  ri,
long  ci,
matrix d,
matrix dd 
)
void dmatblock ( long  ri,
long  ci,
matrix d,
matrix dd 
)

function extracts blocks from stiffness matrix of the material

Parameters:
ri,ci - row and column indices
d - stiffness matrix of material
dd - required block from stiffness matrix of material

10.5.2002

function extracts blocks from stiffness matrix of the material

Parameters:
ri,ci - row and column indices
d - stiffness matrix of material
dd - required block from stiffness matrix of material

JK, 10.5.2002

Definition at line 246 of file axisymlq-nb3.cpp.

References fillm().

Referenced by elem_stresses(), mainip_stresses(), nod_stresses(), stiffness_matrix(), stiffness_matrix_blocks(), and temp_forces().

void edge_integral ( long  edg,
vector x,
vector y,
long  intord,
vector gp,
vector w,
vector coef,
matrix km 
)

function integrates N^T c N over edges

Parameters:
edg - edge id (number of edge)
x,y - coordinates of element nodes
intord - order of numerical integration
gp,w - coordinates and weights of integration points
coef - array of nodal values of coefficient
km - output matrix

JK, 20.10.2007

Definition at line 734 of file axisymlq.cpp.

References matrix::a, approx(), bf_matrix(), jac1d_2d(), matrix::m, matrix::n, napfun, ndofe, and nnj().

Referenced by edgeload().

void edgeload ( long  eid,
long *  le,
double *  list,
vector nf 
)

function computes nodal forces caused by edge load

Parameters:
eid - element id
le - indicators of loaded edges
list - list of prescribed nodal values
nf - vector of nodal forces caused by edge load

JK, 3.11.2007

Definition at line 858 of file axisymlq.cpp.

References vector::a, addv(), edge_integral(), edgenodeval(), fillm(), fillv(), gauss_points(), mechtop::give_node_coord2d(), intordb, Mt, mxv(), ndofe, ned, nne, and nodval().

Referenced by loadel::edgeload().

void edgenodeval ( long  edg,
vector nodval,
double *  list 
)

function picks up nodal values on required edges

Parameters:
edg - number of required edge
nodval - array of nodal values
list - array of nodal values defined on all edges

JK, 19.8.2004

Definition at line 828 of file axisymlq.cpp.

References ivector::a, fillv(), linquadrilat_edgnod(), napfun, and nned.

Referenced by edgeload().

void eigstrain_forces ( long  lcid,
long  eid,
long  ri,
long  ci,
vector nfor,
vector x,
vector y 
)

function computes nodal forces caused by eigenstrains eigenstrain expresses e.g. temperature strains

this function is used in plane stress/strain elements (function is called by function res_eigstrain_forces) and shell elements

Parameters:
lcid - load case id
eid - element id
ri,ci - row and column indices
nfor - array containing nodal forces
x,y - nodal coordinates

TKo 7.2008

Definition at line 1555 of file axisymlq.cpp.

References compute_eigstress(), probdesc::eigstrcomp, eigstress, elem_integration(), and Mp.

Referenced by res_eigstrain_forces().

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

Parameters:
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

TKo 7.2008

Definition at line 1857 of file axisymlq.cpp.

References vector::a, addv(), allocv(), approx(), cmulv(), destrv(), mechtop::elements, fillv(), gauss_points(), geom_matrix(), mechmat::givequantity(), element::ipp, Mm, Mt, mtxv(), ndofe, and tncomp.

Referenced by eigstrain_forces(), incr_internal_forces(), internal_forces(), and nonloc_internal_forces().

void elem_strains ( double **  stra,
long  lcid,
long  eid,
long  ri,
long  ci 
)

function computes strains on element

Parameters:
val - array containing strains on element
lcid - load case id
eid - element id

15.7.2002

Definition at line 592 of file axisymlq-nb3.cpp.

References vector::a, allocv(), cncomp, destrv(), mechtop::elements, gauss_points(), mechmat::givestrain(), intordsm, element::ipp, matassem_lsm(), Mm, Mp, Mt, nb, ncomp, nne, nodal_values(), nodecoord(), nullv(), rhsassem_lsm(), solve_lsm(), and probdesc::zero.

void elem_stresses ( double **  stra,
double **  stre,
long  lcid,
long  eid,
long  ri,
long  ci 
)
void elem_stresses ( double **  stra,
double **  stre,
long  lcid,
long  eid,
long  ri,
long  ci 
)
void eleminit ( long  eid  ) 

Definition at line 69 of file axisymlq-nb3.cpp.

References mechtop::elements, intordsm, Mt, nb, and nip.

void geom_matrix ( matrix gm,
vector x,
vector y,
double  xi,
double  eta,
double &  jac 
)
void geom_matrix ( matrix gm,
vector x,
vector y,
double  xi,
double  eta,
double &  jac 
)

function assembles geometric matrix

epsilon_x = du/dx epsilon_y = dv/dy epsilon_fi = u/r epsilon_xy = du/dy + dv/dx

Parameters:
gm - geometric matrix
ri - block index
x,y - arrays of node coordinates
xi,eta - natural coordinates
jac - jacobian

8.12.2001

function assembles geometric matrix

epsilon_x = du/dx epsilon_y = dv/dy epsilon_fi = u/r epsilon_xy = du/dy + dv/dx

Parameters:
gm - geometric matrix
x,y - arrays of node coordinates
xi,eta - natural coordinates
jac - jacobian

JK, 8.12.2001

Definition at line 146 of file axisymlq-nb3.cpp.

References vector::a, approx(), bf_lin_4_2d(), derivatives_2d(), dx_bf_lin_4_2d(), dy_bf_lin_4_2d(), fillm(), Mp, nne, and probdesc::zero.

Referenced by elem_integration(), ip_strains(), axiquadc::lower_cap_coup_matrix(), axiquadc::lower_cond_coup_matrix(), mainip_strains(), and axiquadc::upper_cap_coup_matrix().

void geom_matrix_block ( matrix gm,
long  ri,
vector x,
vector y,
double  xi,
double  eta,
double &  jac 
)
void geom_matrix_block ( matrix gm,
long  ri,
vector x,
vector y,
double  xi,
double  eta,
double &  jac 
)

function assembles part of geometric matrix

epsilon_x = du/dx epsilon_y = dv/dy epsilon_fi = u/r epsilon_xy = du/dy + dv/dx

Parameters:
gm - geometric matrix
ri - block index
x,y - arrays of node coordinates
xi,eta - natural coordinates
jac - jacobian

8.12.2001

function assembles block of geometric matrix

epsilon_x = du/dx epsilon_y = dv/dy epsilon_fi = u/r epsilon_xy = du/dy + dv/dx

Parameters:
gm - geometric matrix
ri - block index
x,y - arrays of node coordinates
xi,eta - natural coordinates
jac - jacobian

JK, 8.12.2001

Definition at line 192 of file axisymlq-nb3.cpp.

References vector::a, approx(), bf_lin_4_2d(), derivatives_2d(), dx_bf_lin_4_2d(), dy_bf_lin_4_2d(), fillm(), Mp, nne, and probdesc::zero.

Referenced by internal_forces(), ip_strains(), mainip_strains(), stiffness_matrix(), stiffness_matrix_blocks(), temp_forces(), axiquadc::upper_cond_coup_matrix(), and axiquadc::upper_cond_coup_vector().

void incr_internal_forces ( long  lcid,
long  eid,
long  ri,
long  ci,
vector ifor,
vector x,
vector y 
)

function computes increment of internal forces (from correct stresses increment)

Parameters:
lcid - number of load case
eid - element id
ri,ci - row and column indices
ifor - vector of internal forces
x,y - vectors of nodal coordinates

TKo, 7.2008

Definition at line 1526 of file axisymlq.cpp.

References compute_nlstressincr(), elem_integration(), and stressincr.

Referenced by res_incr_internal_forces().

void inicipval ( long  eid,
long  ri,
long  ci,
matrix nodval,
inictype ictn 
)
void inicipval ( long  eid,
long  ri,
long  ci,
matrix nodval,
inictype ictn 
)

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.

Parameters:
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 1543 of file axisymlq-nb3.cpp.

References vector::a, allocv(), approx(), destrv(), mechtop::elements, intpoints::eqother, gauss_points(), 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

Parameters:
lcid - number of load case
eid - element id
ri,ci - row and column indices
ifor - vector of internal forces
x,y - node coordinates

TKo 7.2008

Definition at line 1472 of file axisymlq.cpp.

References compute_nlstress(), elem_integration(), and locstress.

void internal_forces ( long  lcid,
long  eid,
vector ifor 
)

function computes internal forces

Parameters:
lcid - number of load case
eid - element id
ri,ci - row and column indices
ifor - vector of internal forces

8.12.2001

Definition at line 1376 of file axisymlq-nb3.cpp.

References vector::a, allocm(), allocv(), approx(), cmulv(), cncomp, mechmat::computenlstresses(), destrm(), destrv(), eldispl(), mechtop::elements, fillv(), gauss_points(), geom_matrix_block(), mechtop::give_elemnodes(), mechtop::give_node_coord2d(), mechmat::givestress(), intordsm, element::ipp, Mm, Mt, mtxv(), nb, ncomp, ndofe, nne, nodes, and tncomp.

Referenced by res_internal_forces().

void intpointval ( long  eid,
vector nodval,
vector ipval 
)

function interpolates the nodal values to the integration points on the element

Parameters:
eid - element id

21.6.2004, JK

Definition at line 2153 of file axisymlq.cpp.

References vector::a, allocv(), approx(), destrv(), and gauss_points().

Referenced by elem_intpointval().

void ip_strains ( long  lcid,
long  eid,
long  ri,
long  ci,
vector x,
vector y,
vector r 
)

function computes strains at integration points of element

function computes strains only at integration points belonging to diagonal submatrices, points belonging to off-diagonal matrices are not computed

function also exchange strain components among diagonal intergation points

Parameters:
lcid - load case id
eid - element id
ri,ci - row and column indices
x,y - arrays with node coordinates
r - vector of nodal displacements

JK, 10.5.2002

Definition at line 594 of file axisymlq.cpp.

References vector::a, allocm(), allocv(), cncomp, destrm(), destrv(), mechtop::elements, gauss_points(), geom_matrix(), geom_matrix_block(), element::ipp, Mm, Mt, mxv(), ncomp, ndofe, and mechmat::storestrain().

void ipcoord ( long  eid,
long  ipp,
long  ri,
long  ci,
vector coord 
)

function assembles coordinates of integration points

Parameters:
eid - element id
ipp - integration point pointer
ri - row index
ci - column index
ipcoord - array containing coordinates of integration points

TKo, 7.2008

Definition at line 1989 of file axisymlq.cpp.

References vector::a, approx(), mechtop::elements, gauss_points(), mechtop::give_node_coord2d(), element::ipp, Mt, and nne.

Referenced by ipcoord().

void load_matrix ( long  eid,
matrix lm 
)
void load_matrix ( long  eid,
matrix lm 
)

function computes load matrix of the axisymmetric quadrilateral finite element with bilinear approximation functions load vector is obtained after premultiplying load matrix by nodal load values

Parameters:
eid - number of element
lm - load matrix

8.12.2001

Definition at line 1230 of file axisymlq-nb3.cpp.

References matrix::a, vector::a, approx(), bf_matrix(), fillm(), gauss_points(), mechtop::give_elemnodes(), mechtop::give_node_coord2d(), intordmm, jac_2d(), matrix::m, Mt, matrix::n, napfun, ndofe, nne, nnj(), and nodes.

Referenced by loadmat().

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.

Parameters:
lcid - number of load case
eid - element id
ri,ci - row and column indices

TKo, 7.2008

Definition at line 1770 of file axisymlq.cpp.

References mechmat::computenlstresses(), mechtop::elements, element::ipp, Mm, Mp, Mt, and probdesc::strcomp.

Referenced by elem_local_values().

void mainip_strains ( long  lcid,
long  eid,
long  ri,
long  ci,
vector x,
vector y,
vector r 
)

function computes strains in main integration points of element

Parameters:
lcid - load case id
eid - element id
ri - row index
ci - column index

10.5.2002

Definition at line 999 of file axisymlq.cpp.

References vector::a, allocv(), destrv(), mechtop::elements, gauss_points(), geom_matrix(), element::ipp, Mm, Mt, mxv(), ndofe, mechmat::storestrain(), and tncomp.

void mainip_strains ( long  lcid,
long  eid,
long  ri,
long  ci,
long  ii,
vector x,
vector y,
vector r 
)

function computes strains in main integration points of element

Parameters:
lcid - load case id
eid - element id
ri - row index
ci - column index

10.5.2002

Definition at line 478 of file axisymlq-nb3.cpp.

References vector::a, allocm(), allocv(), cncomp, destrm(), destrv(), mechtop::elements, gauss_points(), geom_matrix_block(), intordsm, element::ipp, Mm, Mt, mxv(), ncomp, ndofe, and mechmat::storestrain().

Referenced by res_mainip_strains().

void mainip_stresses ( long  lcid,
long  eid,
long  ri,
long  ci 
)

function computes stresses in main integration points of element

Parameters:
lcid - load case id
eid - element id
ri - row index
ci - column index

10.5.2002

Definition at line 1175 of file axisymlq.cpp.

References vector::a, allocv(), destrv(), mechtop::elements, gauss_points(), mechmat::givestrain(), element::ipp, mechmat::matstiff(), Mm, Mt, mxv(), mechmat::storestress(), and tncomp.

void mainip_stresses ( long  lcid,
long  eid,
long  ri,
long  ci,
long  ii 
)

function computes stresses in main integration points of element

Parameters:
lcid - load case id
eid - element id
ri - row index
ci - column index

10.5.2002

Definition at line 852 of file axisymlq-nb3.cpp.

References vector::a, addv(), allocm(), allocv(), cncomp, destrm(), destrv(), dmatblock(), mechtop::elements, fillv(), gauss_points(), mechmat::givestrain(), intordsm, element::ipp, mechmat::matstiff(), Mm, Mt, mxv(), nb, ncomp, mechmat::storestress(), and tncomp.

Referenced by res_mainip_stresses().

void mass_matrix ( long  eid,
matrix mm 
)
void mass_matrix ( long  eid,
matrix mm 
)

function computes mass matrix of the rectangular axisymmetric finite element with bilinear approximation functions

Parameters:
eid - number of element
mm - mass matrix

24.6.2001

function computes mass matrix of the rectangular axisymmetric finite element with bilinear approximation functions

Parameters:
eid - element id
mm - mass matrix

JK, 24.6.2001

Definition at line 408 of file axisymlq-nb3.cpp.

References matrix::a, approx(), bf_matrix(), fillm(), gauss_points(), mechcrsec::give_density(), mechtop::give_elemnodes(), mechtop::give_node_coord2d(), intordmm, jac_2d(), matrix::m, Mc, Mt, matrix::n, napfun, ndofe, nne, nnj(), and nodes.

Referenced by massmat().

void nod_eqother_ip ( long  eid  ) 

function computes eqother components at nodes of element

Parameters:
eid - element id

JK, 10.5.2002

Definition at line 1384 of file axisymlq.cpp.

References vector::a, allocv(), destrv(), mechtop::give_elemnodes(), mechmat::giveeqother(), mechmat::givencompeqother(), Mm, Mt, nne, nod, mechtop::nodes, nodipnum(), and node::storeother().

Referenced by compute_nodeothers().

void nod_strains ( long  lcid,
long  eid,
long  ri,
long  ci 
)
void nod_strains_ip ( long  lcid,
long  eid,
long  ri,
long  ci 
)

function computes strains in nodes of element

Parameters:
lcid - load case id
eid - element id
ri,ci - row and column indices

10.5.2002

Definition at line 1322 of file axisymlq.cpp.

References mechtop::give_elemnodes(), mechmat::givestrain(), Mm, Mt, nne, nod, mechtop::nodes, nodipnum(), node::storestrain(), and tncomp.

Referenced by compute_nodestrains().

void nod_stresses ( long  lcid,
long  eid,
long  ri,
long  ci 
)
void nod_stresses ( long  lcid,
long  eid,
long  ri,
long  ci 
)
void nod_stresses_ip ( long  lcid,
long  eid,
long  ri,
long  ci 
)

function computes stresses at nodes of element

Parameters:
lcid - load case id
eid - element id
ri,ci - row and column indices

10.5.2002

Definition at line 1354 of file axisymlq.cpp.

References mechtop::give_elemnodes(), mechmat::givestress(), Mm, Mt, nne, nod, mechtop::nodes, nodipnum(), node::storestress(), and tncomp.

Referenced by compute_nodestresses().

void nodecoord ( vector xi,
vector eta 
)
void nodecoord ( vector xi,
vector eta 
)

function assembles natural coordinates of nodes of element

Parameters:
xi - array containing natural coordinates xi
eta - array containing natrual coordinates eta

10.5.2002

Definition at line 789 of file axisymlq-nb3.cpp.

Referenced by elem_strains(), elem_stresses(), nod_strains(), and nod_stresses().

void nodeforces ( long  eid,
long *  le,
double *  nv,
vector nf 
)
void nodeforces ( long  eid,
long *  le,
double *  nv,
vector nf 
)
void nodipnum ( long  eid,
long  ri,
long  ci,
ivector ipnum 
)

function returns numbers of integration point closest to element nodes

Parameters:
eid - element id
ri,ci - row and column indices
ipnum - array of numbers

JK, 25.9.2004

Definition at line 1300 of file axisymlq.cpp.

References mechtop::elements, element::ipp, and Mt.

Referenced by nod_eqother_ip(), nod_strains_ip(), and nod_stresses_ip().

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

Parameters:
lcid - number of load case
eid - element id
ri,ci - row and column indices
ifor - vector of internal forces
x,y - vectors of nodal coordinates

TKo, 7.2008

Definition at line 1501 of file axisymlq.cpp.

References compute_nonloc_nlstress(), elem_integration(), and nonlocstress.

Referenced by res_nonloc_internal_forces().

void res_allip_strains ( long  lcid,
long  eid 
)
void res_allip_strains ( long  lcid,
long  eid 
)

function computes all strain components at all integration points

Parameters:
lcid - load case id
eid - element id

JK, 26.9.2004

Definition at line 685 of file axisymlq-nb3.cpp.

References allip_strains(), and res_mainip_strains().

Referenced by compute_ipstrains().

void res_allip_stresses ( long  lcid,
long  eid 
)
void res_allip_stresses ( long  lcid,
long  eid 
)

function computes all stress components at all integration points

Parameters:
lcid - load case id
eid - element id

JK

Definition at line 1119 of file axisymlq-nb3.cpp.

References allip_stresses(), and res_mainip_stresses().

Referenced by compute_ipstresses().

void res_eigstrain_forces ( long  lcid,
long  eid,
vector nfor 
)

function computes nodal forces caused by eigenstrains eigenstrain expresses e.g. temperature strains

Parameters:
lcid - load case id
eid - element id
nfor - array containing nodal forces

TKo 7.2008

Definition at line 1683 of file axisymlq.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

Parameters:
lcid - load case id
eid - element id
ifor - vector of internal forces

TKo, 7.2008

Definition at line 1648 of file axisymlq.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 
)
void res_internal_forces ( long  lcid,
long  eid,
vector ifor 
)

function computes internal forces

Parameters:
lcid - load case id
eid - element id
ifor - internal forces

TKo 7.2008

Definition at line 1429 of file axisymlq-nb3.cpp.

References internal_forces().

Referenced by elem_internal_forces().

void res_mainip_strains ( long  lcid,
long  eid 
)
void res_mainip_strains ( long  lcid,
long  eid 
)
void res_mainip_stresses ( long  lcid,
long  eid 
)
void res_mainip_stresses ( long  lcid,
long  eid 
)

function computes stresses at integration points

Parameters:
lcid - load case id
eid - element id

JK

Definition at line 832 of file axisymlq-nb3.cpp.

References mainip_stresses(), and nb.

Referenced by res_allip_stresses().

void res_nonloc_internal_forces ( long  lcid,
long  eid,
vector ifor 
)

function computes resulting internal forces for nonlocal models

Parameters:
lcid - load case id
eid - element id
ifor - vector of internal forces

TKo 7.2008

Definition at line 1614 of file axisymlq.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 
)
void res_stiffness_matrix ( long  eid,
matrix sm 
)

function computes resulting stiffness matrix of element

Parameters:
eid - element id
sm - stiffness matrix

10.5.2002

function computes resulting stiffness matrix of element

Parameters:
eid - element id
sm - stiffness matrix

JK, 10.5.2002

Definition at line 394 of file axisymlq-nb3.cpp.

References stiffness_matrix().

Referenced by stiffmat().

void res_temp_forces ( long  lcid,
long  eid,
vector nfor 
)

Definition at line 1264 of file axisymlq-nb3.cpp.

References mechtop::give_node_coord2d(), Mt, nne, and temp_forces().

void stiffness_matrix ( long  eid,
long  ri,
long  ci,
matrix sm 
)
void stiffness_matrix ( long  eid,
long  ri,
long  ci,
matrix sm 
)

function computes stiffness matrix of axisymmetric quadrilateral finite element with bilinear approximation functions

Parameters:
eid - element id
ri,ci - row and column indices
sm - stiffness matrix

8.12.2001

function computes stiffness matrix of axisymmetric quadrilateral finite element with bilinear approximation functions

Parameters:
eid - element id
ri,ci - row and column indices
sm - stiffness matrix

JK, 8.12.2001

Definition at line 320 of file axisymlq-nb3.cpp.

References vector::a, allocm(), allocv(), approx(), bdbjac(), destrm(), destrv(), dmatblock(), mechtop::elements, fillm(), gauss_points(), geom_matrix_block(), mechtop::give_elemnodes(), mechtop::give_node_coord2d(), glmatrixtransf(), intordsm, element::ipp, mechtop::locsystems(), mechmat::matstiff(), Mm, Mt, nb, ncomp, ndofe, nne, nodes, tncomp, and transf_matrix().

Referenced by res_stiffness_matrix().

void stiffness_matrix_blocks ( long  eid,
long  ri,
long  ci,
matrix sm 
)

function computes stiffness matrix of axisymmetric quadrilateral finite element with bilinear approximation functions

Parameters:
eid - element id
ri,ci - row and column indices
sm - stiffness matrix

8.12.2001

Definition at line 427 of file axisymlq.cpp.

References vector::a, allocm(), allocv(), approx(), bdbjac(), destrm(), destrv(), dmatblock(), mechtop::elements, fillm(), gauss_points(), geom_matrix_block(), mechtop::give_node_coord2d(), element::ipp, mechmat::matstiff(), Mm, Mt, ncomp, ndofe, nne, and tncomp.

void strains ( long  lcid,
long  eid,
long  ri,
long  ci 
)
void strains ( long  lcid,
long  eid,
long  ri,
long  ci 
)

Definition at line 734 of file axisymlq-nb3.cpp.

References enodes, intpts, Mm, nowhere, mechmat::stra, aepoints::tape, and userdefined.

void stresses ( long  lcid,
long  eid,
long  ri,
long  ci 
)
void stresses ( long  lcid,
long  eid,
long  ri,
long  ci 
)

Definition at line 1166 of file axisymlq-nb3.cpp.

References enodes, intpts, Mm, nowhere, mechmat::stre, aepoints::tape, and userdefined.

Referenced by computestresses().

void temp_forces ( long  lcid,
long  eid,
long  ri,
long  ci,
vector nfor,
vector x,
vector y 
)

function computes nodal forces caused by temperature changes

Parameters:
eid - element id
ri,ci - row and column indices
nfor - array containing nodal forces
x,y - nodal coordinates

22.11.2002, JK

Definition at line 1281 of file axisymlq-nb3.cpp.

References vector::a, allocm(), allocv(), cmulv(), cncomp, destrm(), destrv(), dmatblock(), mechtop::elements, extract(), fillv(), gauss_points(), geom_matrix_block(), intordsm, element::ipp, mechmat::matstiff(), Mm, Mt, mtxv(), mxv(), nb, ncomp, ndofe, tempstrains(), and tncomp.

Referenced by res_temp_forces().

void tempstrains ( long  lcid,
long  eid,
long  ipp,
double  xi,
double  eta,
vector eps 
)

function computes strains caused by temperature changes

Parameters:
lcid - load case id
eid - element id
ipp - integration point pointer
xi,eta - natural coordinates
eps - array containing strains

22.12.2002, JK

Definition at line 1341 of file axisymlq-nb3.cpp.

References approx(), fillv(), mechtop::give_elemnodes(), mechbclc::lc, mechmat::matdilat(), Mb, Mm, Mt, mxv(), nne, nodes, mechmat::storeeigstrain(), and tncomp.

Referenced by temp_forces().

void transf_matrix ( ivector nodes,
matrix tmat 
)
void transf_matrix ( ivector nodes,
matrix tmat 
)

nutno otestovat! pak je mozne smazat tuto hlasku

transformation matrix x_g = T x_l

Definition at line 290 of file axisymlq-nb3.cpp.

References node::e1, node::e2, fillm(), matrix::m, Mt, ivector::n, mechtop::nodes, and node::transf.

Referenced by nod_strains(), res_eigstrain_forces(), res_incr_internal_forces(), res_mainip_strains(), res_nonloc_internal_forces(), and stiffness_matrix().


Member Data Documentation

long * cncomp
long intordb

order of integration on edges

Definition at line 84 of file axisymlq-nb3.h.

Referenced by axisymlq(), edgeload(), and nodeforces().

long intordmm

order of integration of mass matrix

Definition at line 82 of file axisymlq-nb3.h.

Referenced by axisymlq(), load_matrix(), and mass_matrix().

long ** intordsm
long napfun

number of approximated functions on the element

Definition at line 74 of file axisymlq-nb3.h.

Referenced by axisymlq(), edge_integral(), edgenodeval(), mechtop::give_napfun(), load_matrix(), mass_matrix(), and nodeforces().

long nb
long * ncomp
long ndofe
long ned

number of edges

Definition at line 76 of file axisymlq-nb3.h.

Referenced by axisymlq(), edgeload(), and mechtop::give_ned().

long ** nip

array of numbers of integration points in sets

Definition at line 86 of file axisymlq-nb3.h.

Referenced by axisymlq(), eleminit(), and mechtop::give_nip().

long nne
long nned

number of nodes on edge

Definition at line 78 of file axisymlq-nb3.h.

Referenced by axisymlq(), edgenodeval(), and mechtop::give_nned().

stress/strain state

Definition at line 94 of file axisymlq-nb3.h.

Referenced by axisymlq(), and mechtop::give_ssst().

long tncomp
long tnip

total number of integration points on element

Definition at line 72 of file axisymlq-nb3.h.

Referenced by axisymlq(), and mechtop::give_tnip().


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

Generated by  doxygen 1.6.2