dktelem Class Reference

#include <dkt.h>

List of all members.

Public Member Functions

double approx (vector &areacoord, vector &nodval)
void appval (vector &l, long fi, long nc, vector &eps, double **val)
void areaforces (long eid, double *nv, vector &nf)
void compute_nlstress (long lcid, long eid, long ri, long ci)
void compute_nlstressincr (long lcid, long eid, long ri, long ci)
void dbmat (matrix &d, matrix &db, double t)
 dktelem (void)
void elem_integration (integratedquant iq, long lcid, long eid, long ri, long ci, vector &nv, vector &x, vector &y)
void geom_matrix (matrix &gm, vector &x, vector &y, vector &l)
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 ip_strains (long lcid, long eid, long ri, long ci, vector &x, vector &y, vector &r)
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 nodecoord (vector &xi, vector &eta)
void nodeforces (long eid, long *le, double *nv, vector &nf)
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_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)
 ~dktelem (void)

Public Attributes

long * cncomp
long intordmm
long ** intordsm
long napfun
 number of approximated functions on the element
long nb
long * ncomp
 array containing numbers of components of stress and strain tensors
long ndofe
 number of DOFs on the element
long ned
 number of edges on one element
long ** nip
long nne
 number of nodes on one element
long nned
 number of nodes on one edge
long nnsurf
 number of nodes on surface
long nsurf
 number of surfaces
strastrestate ssst
long tncomp
 total number of components of stress and strain tensors
long tnip
 total number of integration points on element

Detailed Description

Definition at line 9 of file dkt.h.


Constructor & Destructor Documentation

dktelem ( void   ) 

Definition at line 12 of file dkt.cpp.

References cncomp, intordmm, intordsm, napfun, nb, ncomp, ndofe, ned, nip, nne, nned, nnsurf, nsurf, platek, ssst, tncomp, and tnip.

~dktelem ( void   ) 

Definition at line 70 of file dkt.cpp.

References cncomp, intordsm, nb, ncomp, and nip.


Member Function Documentation

double approx ( vector areacoord,
vector nodval 
)

function approximates function defined by nodal values

Parameters:
areacoord - vector containing area coordinates
nodval - nodal values

JK, 23.9.2008

Definition at line 94 of file dkt.cpp.

References f, and scprd().

Referenced by elem_integration().

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

Definition at line 296 of file dkt.cpp.

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

void areaforces ( long  eid,
double *  nv,
vector nf 
)

function computes load vector from area forces fz of the DKT 15.3.2002

Definition at line 753 of file dkt.cpp.

References mechtop::give_elemnodes(), mechtop::give_node_coord2d(), Mt, nne, and nodes.

Referenced by loadel::surfaceload().

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

JK, 27.9.2008

Definition at line 458 of file dkt.cpp.

References mechmat::computenlstresses(), mechtop::elements, gauss_points_tr(), mechtop::give_elemnodes(), mechcrsec::give_thickness(), mechmat::givestress(), intordsm, element::ipp, Mc, Mm, Mp, Mt, nb, nne, nodes, mechmat::storestress(), and probdesc::strcomp.

Referenced by shelltr::compute_nlstress(), internal_forces(), shelltr::res_ip_stresses(), and res_ip_stresses().

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

JK, 23.9.2008

Definition at line 504 of file dkt.cpp.

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

Referenced by shelltr::compute_nlstressincr(), and incr_internal_forces().

void dbmat ( matrix d,
matrix db,
double  t 
)

function extracts components of the shear part of stiffness matrix of the material to the matrix ds

20.3.2002

Definition at line 208 of file dkt.cpp.

Referenced by stiffness_matrix().

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

JK, 23.9.2008

Definition at line 649 of file dkt.cpp.

References vector::a, addv(), allocm(), allocv(), approx(), cmulv(), cncomp, destrm(), destrv(), mechtop::elements, fillv(), gauss_points_tr(), geom_matrix(), mechtop::give_elemnodes(), mechcrsec::give_thickness(), mechmat::givequantity(), intordsm, element::ipp, Mc, Mm, Mt, mtxv(), nb, ncomp, ndofe, nne, and nodes.

Referenced by incr_internal_forces(), and internal_forces().

void geom_matrix ( matrix gm,
vector x,
vector y,
vector l 
)

function assembles matrix of base functions

Parameters:
gm - geometric matrix
x,y - array containing node coordinates
l - areacoordinates

15.3.2002

Definition at line 110 of file dkt.cpp.

Referenced by elem_integration(), ip_strains(), and stiffness_matrix().

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 591 of file dkt.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 
)

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 807 of file dkt.cpp.

References vector::a, allocv(), destrv(), mechtop::elements, gauss_points_tr(), inicond, iniother, inistrain, inistress, intordsm, mechmat::ip, element::ipp, Mm, Mt, matrix::n, nb, intpoints::ncompeqother, intpoints::ncompstr, nne, and print_err().

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

Parameters:
lcid - load case id
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 538 of file dkt.cpp.

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

Referenced by shelltr::res_internal_forces(), and res_internal_forces().

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

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

Parameters:
lcid - load case id
eid - element id
ri - row index
ci - column index
x,y - node coordinates
r - nodal displacements

JK, 23.9.2008

Definition at line 337 of file dkt.cpp.

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

Referenced by shelltr::res_ip_strains(), and res_ip_strains().

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

Definition at line 410 of file dkt.cpp.

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

Definition at line 428 of file dkt.cpp.

Referenced by shelltr::nod_stresses_ip().

void nodecoord ( vector xi,
vector eta 
)

Definition at line 288 of file dkt.cpp.

void nodeforces ( long  eid,
long *  le,
double *  nv,
vector nf 
)

function computes load vector from edge forces fz of the DKT 15.3.2002

Definition at line 707 of file dkt.cpp.

References mechtop::give_elemnodes(), mechtop::give_node_coord2d(), Mt, nne, and nodes.

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

JK, 23.9.2008

Definition at line 612 of file dkt.cpp.

References copyv(), mechtop::give_elemnodes(), mechtop::give_node_coord2d(), glvectortransf(), incr_internal_forces(), mechtop::locsystems(), Mt, ndofe, nne, nodes, and transf_matrix().

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

function computes resulting internal forces

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

TKo, 7.2008

Definition at line 558 of file dkt.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 of element

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

Parameters:
lcid - load case id
eid - element id
ri - row index
ci - column index
x,y - node coordinates
r - nodal displacements

JK, 23.9.2008

Definition at line 383 of file dkt.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

Parameters:
lcid - load case id
eid - element id

JK

Definition at line 423 of file dkt.cpp.

References compute_nlstress().

Referenced by compute_ipstresses().

void res_stiffness_matrix ( long  eid,
matrix sm 
)
void stiffness_matrix ( long  eid,
long  ri,
long  ci,
matrix sm,
vector x,
vector y 
)

function computes stiffness matrix of dkt element

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

15.3.2002

Definition at line 228 of file dkt.cpp.

References matrix::a, bdbj(), dbmat(), mechtop::elements, fillm(), gauss_points_tr(), geom_matrix(), mechtop::give_elemnodes(), mechcrsec::give_thickness(), intordsm, element::ipp, mechmat::matstiff(), Mc, Mm, Mt, ndofe, nne, nodes, and tncomp.

Referenced by shelltr::res_stiffness_matrix(), and res_stiffness_matrix().

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

Definition at line 435 of file dkt.cpp.

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

Definition at line 441 of file dkt.cpp.

Referenced by computestresses().

void transf_matrix ( ivector nodes,
matrix tmat 
)

Member Data Documentation

long* cncomp

Definition at line 57 of file dkt.h.

Referenced by dktelem(), elem_integration(), ip_strains(), and ~dktelem().

long intordmm

Definition at line 77 of file dkt.h.

Referenced by dktelem().

long** intordsm
long napfun

number of approximated functions on the element

Definition at line 61 of file dkt.h.

Referenced by dktelem(), and mechtop::give_napfun().

long nb
long* ncomp

array containing numbers of components of stress and strain tensors

Definition at line 56 of file dkt.h.

Referenced by dktelem(), elem_integration(), ip_strains(), and ~dktelem().

long ndofe
long ned

number of edges on one element

Definition at line 63 of file dkt.h.

Referenced by dktelem(), and mechtop::give_ned().

long** nip

Definition at line 73 of file dkt.h.

Referenced by dktelem(), mechtop::give_nip(), shelltr::shelltr(), and ~dktelem().

long nne
long nned

number of nodes on one edge

Definition at line 65 of file dkt.h.

Referenced by dktelem(), and mechtop::give_nned().

long nnsurf

number of nodes on surface

Definition at line 69 of file dkt.h.

Referenced by dktelem(), and mechtop::give_nnsurf().

long nsurf

number of surfaces

Definition at line 67 of file dkt.h.

Referenced by dktelem(), and mechtop::give_nsurf().

Definition at line 79 of file dkt.h.

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

long tncomp

total number of components of stress and strain tensors

Definition at line 59 of file dkt.h.

Referenced by dktelem(), mechtop::give_ncomp(), mechtop::give_tncomp(), shelltr::shelltr(), and stiffness_matrix().

long tnip

total number of integration points on element

Definition at line 54 of file dkt.h.

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


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

Generated by  doxygen 1.6.2