#include <hexahedc.h>
Public Member Functions | |
void | eleminit (long eid) |
hexahedc (void) | |
void | intpointgrad (long eid) |
void | intpointval (long eid) |
void | lower_cap_coup_matrix (long eid, long ri, long ci, matrix &vm) |
void | lower_cond_coup_matrix (long eid, long ri, long ci, matrix &vm) |
void | mainip_strains (long eid, vector &r) |
void | mefel_metr (long eid) |
void | res_lower_cap_coup_matrix (long eid, matrix &vm) |
void | res_lower_cond_coup_matrix (long eid, matrix &vm) |
void | res_mainip_strains (long eid) |
void | res_upper_cap_coup_matrix (long eid, matrix &vm) |
void | res_upper_cond_coup_matrix (long eid, matrix &vm) |
void | res_upper_cond_coup_vector (vector &f, long eid) |
void | trfel_metr (long eid) |
void | upper_cap_coup_matrix (long eid, long ri, long ci, matrix &vm) |
void | upper_cond_coup_matrix (long eid, long ri, long ci, matrix &vm) |
void | upper_cond_coup_vector (vector &tvm, vector &nodval, long eid, long ri, long ci) |
~hexahedc (void) | |
Public Attributes | |
long * | dofe |
number of DOFs for particular medium | |
long ** | intordvlm |
orders of integration of lower coupling matrices | |
long ** | intordvum |
orders of integration of upper coupling matrices | |
long | mnb |
number of blocks in strain vector | |
long * | mncomp |
array of numbers of components in strain vectors | |
long | mndofe |
number of degrees of freedom of mechanical part | |
long * | mordering |
array containing ordering of mechanical unknowns | |
long ** | nipl |
numbers of integration points of lower coupling matrices | |
long ** | nipu |
numbers of integration points of upper coupling matrices | |
long | nnemp |
number of nodes on one element in mechanical problem | |
long | nnetp |
number of nodes on one element in transport problem | |
long | ntm |
number of transported media | |
long | tndofe |
number of degrees of freedom of transport part | |
long | tnipl |
long | tnipu |
total number of integration point | |
long | tnmcomp |
number of components of strain vector |
class of hexahedral 20-node finite element for thermo-mechanical coupling
JK
Definition at line 13 of file hexahedc.h.
hexahedc | ( | void | ) |
Definition at line 17 of file hexahedc.cpp.
References Cp, dofe, intordvlm, intordvum, probdescc::lbb, Lhex, Lht, lin_lin, mnb, mncomp, mndofe, mordering, quadhex::nb, linhex::nb, quadhex::ncomp, linhex::ncomp, quadhext::ndofe, quadhex::ndofe, linhext::ndofe, linhex::ndofe, nipl, nipu, quadhext::nne, quadhex::nne, linhext::nne, linhex::nne, nnemp, nnetp, probdesct::ntm, ntm, onemedium, Qhex, Qht, quad_lin, quad_quad, probdescc::savemode, threemediacoup, probdesct::tmatt, quadhex::tncomp, linhex::tncomp, tndofe, tnipl, tnipu, tnmcomp, Tp, and twomediacoup.
~hexahedc | ( | void | ) |
void eleminit | ( | long | eid | ) |
Definition at line 290 of file hexahedc.cpp.
References Ct, couptop::elements, intordvlm, elementc::intordvlm, intordvum, elementc::intordvum, mnb, nipl, elementc::nipl, nipu, elementc::nipu, and ntm.
void intpointgrad | ( | long | eid | ) |
function computes values (gradients) at integration points from nodal values
eid | - element id |
26.3.2004, JK
Definition at line 454 of file hexahedc.cpp.
void intpointval | ( | long | eid | ) |
function computes values at integration points from nodal values
eid | - element id |
26.3.2004, JK
Definition at line 324 of file hexahedc.cpp.
void lower_cap_coup_matrix | ( | long | eid, | |
long | ri, | |||
long | ci, | |||
matrix & | vm | |||
) |
function computes one block of coupling capacity matrix
eid | - number of element | |
ri,ci | - row and column indices of the computed block in the resulting matrix | |
vm | - coupling matrix |
JK, 10.4.2003
Definition at line 939 of file hexahedc.cpp.
References vector::a, bdbjac(), quadhext::bf_matrix(), linhext::bf_matrix(), Cml, Cp, Ct, dofe, couptop::elements, fillm(), gauss_points(), quadhex::geom_matrix(), linhex::geom_matrix(), mechtop::give_node_coord3d(), intordvlm, elementc::ippl, probdescc::lbb, Lhex, Lht, lin_lin, coupmatl::matcap(), mncomp, mndofe, Mt, ivector::n, nnemp, Qhex, Qht, quad_lin, quad_quad, and probdescc::savemode.
Referenced by res_lower_cap_coup_matrix().
void lower_cond_coup_matrix | ( | long | eid, | |
long | ri, | |||
long | ci, | |||
matrix & | vm | |||
) |
function computes one block of the lower coupling stiffness-conductivity matrix
eid | - number of element | |
ri,ci | - row and column indices of the computed block in the resulting matrix | |
vm | - coupling matrix |
JK, 10.4.2003
Definition at line 784 of file hexahedc.cpp.
References vector::a, bdbjac(), quadhext::bf_matrix(), linhext::bf_matrix(), Cml, Cp, Ct, dofe, couptop::elements, fillm(), gauss_points(), quadhex::geom_matrix(), linhex::geom_matrix(), mechtop::give_node_coord3d(), intordvlm, elementc::ippl, probdescc::lbb, Lhex, Lht, lin_lin, coupmatl::matcond(), mncomp, mndofe, Mt, ivector::n, nnemp, Qhex, Qht, quad_lin, quad_quad, and probdescc::savemode.
Referenced by res_lower_cond_coup_matrix().
void mainip_strains | ( | long | eid, | |
vector & | r | |||
) |
function computes strains at integration points of element
eid | - element id | |
r | - vector of nodal displacements |
26.3.2004, JK
Definition at line 598 of file hexahedc.cpp.
void mefel_metr | ( | long | eid | ) |
function copies mechanical data from MEFEL into integration points of coupled part in METR
eid | - element id |
JK, 29.10.2004
Definition at line 1391 of file hexahedc.cpp.
References Cml, Cmu, Cp, Ct, couptop::elements, mechtop::elements, coupmatl::ip, mechmat::ip, coupmatu::ip, element::ipp, elementc::ippl, elementc::ippu, Mm, Mt, nipl, nipu, probdescc::savemode, intpoints::strain, intpointsc::strains, intpoints::stress, intpointsc::stresses, and tnmcomp.
void res_lower_cap_coup_matrix | ( | long | eid, | |
matrix & | vm | |||
) |
function assembles the lower coupling capacity matrix
eid | - element id | |
vm | - coupling matrix |
26.3.2004, JK
Definition at line 1139 of file hexahedc.cpp.
References allocm(), quadhext::codnum(), linhext::codnum(), Cp, destrm(), dofe, fillm(), probdescc::lbb, Lht, lin_lin, lower_cap_coup_matrix(), mat_localize(), mnb, mndofe, mordering, ntm, Qht, quad_lin, and quad_quad.
Referenced by lower_cap_coupl_mat().
void res_lower_cond_coup_matrix | ( | long | eid, | |
matrix & | vm | |||
) |
function assembles the lower coupling stiffness-conductivity matrix
eid | - element id | |
vm | - matrix |
26.3.2004, JK
Definition at line 1059 of file hexahedc.cpp.
References allocm(), quadhext::codnum(), linhext::codnum(), Cp, destrm(), dofe, fillm(), probdescc::lbb, Lht, lin_lin, lower_cond_coup_matrix(), mat_localize(), mnb, mndofe, mordering, ntm, Qht, quad_lin, and quad_quad.
Referenced by lower_cond_coupl_mat().
void res_mainip_strains | ( | long | eid | ) |
function computes strains at integration points of element
eid | - element id |
26.3.2004, JK
Definition at line 659 of file hexahedc.cpp.
void res_upper_cap_coup_matrix | ( | long | eid, | |
matrix & | vm | |||
) |
function assembles the upper coupling capacity matrix
eid | - element id | |
vm | - coupling matrix |
26.3.2004, JK
Definition at line 1100 of file hexahedc.cpp.
References allocm(), quadhext::codnum(), linhext::codnum(), Cp, destrm(), dofe, fillm(), probdescc::lbb, Lht, lin_lin, mat_localize(), mnb, mndofe, mordering, ntm, Qht, quad_lin, quad_quad, and upper_cap_coup_matrix().
Referenced by upper_cap_coupl_mat().
void res_upper_cond_coup_matrix | ( | long | eid, | |
matrix & | vm | |||
) |
function assembles the upper coupling stiffness-conductivity matrix
eid | - element id | |
vm | - coupling matrix |
26.3.2004, JK
Definition at line 1020 of file hexahedc.cpp.
References allocm(), quadhext::codnum(), linhext::codnum(), Cp, destrm(), dofe, fillm(), probdescc::lbb, Lht, lin_lin, mat_localize(), mnb, mndofe, mordering, ntm, Qht, quad_lin, quad_quad, and upper_cond_coup_matrix().
Referenced by upper_cond_coupl_mat().
void res_upper_cond_coup_vector | ( | vector & | f, | |
long | eid | |||
) |
function computes
f | - | |
eid | - element id |
TKr, 26.4.2007
Definition at line 1263 of file hexahedc.cpp.
References vector::a, allocv(), quadhext::codnum(), linhext::codnum(), Cp, destrv(), dofe, fillv(), transtop::give_code_numbers(), globloc(), initialvalues(), probdescc::lbb, Lht, lin_lin, mnb, ntm, Qht, quad_lin, tndofe, Tt, and upper_cond_coup_vector().
Referenced by assemble_coup().
void trfel_metr | ( | long | eid | ) |
function copies transport data from TRFEL into integration points of coupled part in METR
eid | - element id |
JK, 29.10.2004
Definition at line 1450 of file hexahedc.cpp.
References intpointst::av, intpointsc::av, Cml, Cmu, Cp, Ct, mechtop::elements, couptop::elements, transtop::elements, coupmatl::ip, transmat::ip, coupmatu::ip, element::ipp, elementt::ipp, elementc::ippl, elementc::ippu, Mt, nipl, nipu, ntm, probdescc::savemode, Tm, and Tt.
void upper_cap_coup_matrix | ( | long | eid, | |
long | ri, | |||
long | ci, | |||
matrix & | vm | |||
) |
function computes one block of upper coupling capacity matrix
eid | - number of element | |
ri,ci | - row and column indices of the computed block in the resulting matrix | |
vm | - coupling matrix |
JK, 9.1.2003
Definition at line 860 of file hexahedc.cpp.
References vector::a, bdbjac(), quadhext::bf_matrix(), linhext::bf_matrix(), Cmu, Cp, Ct, dofe, couptop::elements, fillm(), gauss_points(), quadhex::geom_matrix(), linhex::geom_matrix(), mechtop::give_node_coord3d(), intordvum, elementc::ippu, probdescc::lbb, Lhex, Lht, lin_lin, coupmatu::matcap(), mncomp, mndofe, Mt, ivector::n, nnemp, Qhex, Qht, quad_lin, quad_quad, and probdescc::savemode.
Referenced by res_upper_cap_coup_matrix().
void upper_cond_coup_matrix | ( | long | eid, | |
long | ri, | |||
long | ci, | |||
matrix & | vm | |||
) |
function computes one block of the upper coupling stiffness-conductivity matrix
eid | - number of element | |
ri,ci | - row and column indices of the computed block in the resulting matrix | |
vm | - block of coupling matrix |
JK, 10.4.2003
Definition at line 706 of file hexahedc.cpp.
References vector::a, bdbjac(), quadhext::bf_matrix(), linhext::bf_matrix(), Cmu, Cp, Ct, dofe, couptop::elements, fillm(), gauss_points(), quadhex::geom_matrix(), linhex::geom_matrix(), mechtop::give_node_coord3d(), intordvum, elementc::ippu, probdescc::lbb, Lhex, Lht, lin_lin, coupmatu::matcond(), mncomp, mndofe, Mt, ivector::n, nnemp, Qhex, Qht, quad_lin, quad_quad, and probdescc::savemode.
Referenced by res_upper_cond_coup_matrix().
function computes coupling vector of 3D problems
vm | - coupling vector | |
nodval | - vector of nodal values | |
eid | - number of element | |
ri,ci | - row and column indices of the computed block in the resulting matrix |
TKr, 26.4.2007
Definition at line 1181 of file hexahedc.cpp.
References addv(), bdbjac(), quadhext::bf_matrix(), linhext::bf_matrix(), Cmu, Cp, Ct, dofe, couptop::elements, fillm(), gauss_points(), quadhex::geom_matrix(), linhex::geom_matrix(), mechtop::give_node_coord3d(), intordvum, elementc::ippu, probdescc::lbb, Lhex, Lht, lin_lin, mncomp, mndofe, Mt, mxv(), ivector::n, nnemp, Qhex, Qht, quad_lin, quad_quad, probdescc::savemode, and coupmatu::volume_rhs1().
Referenced by res_upper_cond_coup_vector().
long* dofe |
number of DOFs for particular medium
Definition at line 66 of file hexahedc.h.
Referenced by hexahedc(), lower_cap_coup_matrix(), lower_cond_coup_matrix(), res_lower_cap_coup_matrix(), res_lower_cond_coup_matrix(), res_upper_cap_coup_matrix(), res_upper_cond_coup_matrix(), res_upper_cond_coup_vector(), upper_cap_coup_matrix(), upper_cond_coup_matrix(), upper_cond_coup_vector(), and ~hexahedc().
long** intordvlm |
orders of integration of lower coupling matrices
Definition at line 60 of file hexahedc.h.
Referenced by eleminit(), hexahedc(), lower_cap_coup_matrix(), lower_cond_coup_matrix(), and ~hexahedc().
long** intordvum |
orders of integration of upper coupling matrices
Definition at line 58 of file hexahedc.h.
Referenced by eleminit(), hexahedc(), upper_cap_coup_matrix(), upper_cond_coup_matrix(), upper_cond_coup_vector(), and ~hexahedc().
long mnb |
number of blocks in strain vector
Definition at line 49 of file hexahedc.h.
Referenced by eleminit(), couptop::give_mnb(), hexahedc(), res_lower_cap_coup_matrix(), res_lower_cond_coup_matrix(), res_upper_cap_coup_matrix(), res_upper_cond_coup_matrix(), res_upper_cond_coup_vector(), and ~hexahedc().
long* mncomp |
array of numbers of components in strain vectors
Definition at line 55 of file hexahedc.h.
Referenced by hexahedc(), lower_cap_coup_matrix(), lower_cond_coup_matrix(), upper_cap_coup_matrix(), upper_cond_coup_matrix(), and upper_cond_coup_vector().
long mndofe |
number of degrees of freedom of mechanical part
Definition at line 41 of file hexahedc.h.
Referenced by hexahedc(), lower_cap_coup_matrix(), lower_cond_coup_matrix(), res_lower_cap_coup_matrix(), res_lower_cond_coup_matrix(), res_upper_cap_coup_matrix(), res_upper_cond_coup_matrix(), upper_cap_coup_matrix(), upper_cond_coup_matrix(), and upper_cond_coup_vector().
long* mordering |
array containing ordering of mechanical unknowns
Definition at line 68 of file hexahedc.h.
Referenced by hexahedc(), res_lower_cap_coup_matrix(), res_lower_cond_coup_matrix(), res_upper_cap_coup_matrix(), res_upper_cond_coup_matrix(), and ~hexahedc().
long** nipl |
numbers of integration points of lower coupling matrices
Definition at line 64 of file hexahedc.h.
Referenced by eleminit(), couptop::give_lower_nip(), hexahedc(), mefel_metr(), trfel_metr(), and ~hexahedc().
long** nipu |
numbers of integration points of upper coupling matrices
Definition at line 62 of file hexahedc.h.
Referenced by eleminit(), couptop::give_upper_nip(), hexahedc(), mefel_metr(), trfel_metr(), and ~hexahedc().
long nnemp |
number of nodes on one element in mechanical problem
Definition at line 45 of file hexahedc.h.
Referenced by hexahedc(), lower_cap_coup_matrix(), lower_cond_coup_matrix(), upper_cap_coup_matrix(), upper_cond_coup_matrix(), and upper_cond_coup_vector().
long nnetp |
number of nodes on one element in transport problem
Definition at line 47 of file hexahedc.h.
Referenced by hexahedc().
long ntm |
number of transported media
Definition at line 51 of file hexahedc.h.
Referenced by eleminit(), hexahedc(), res_lower_cap_coup_matrix(), res_lower_cond_coup_matrix(), res_upper_cap_coup_matrix(), res_upper_cond_coup_matrix(), res_upper_cond_coup_vector(), trfel_metr(), and ~hexahedc().
long tndofe |
number of degrees of freedom of transport part
Definition at line 43 of file hexahedc.h.
Referenced by couptop::give_ndofe(), hexahedc(), and res_upper_cond_coup_vector().
long tnipl |
Definition at line 70 of file hexahedc.h.
Referenced by couptop::give_lower_tnip(), and hexahedc().
long tnipu |
total number of integration point
Definition at line 70 of file hexahedc.h.
Referenced by couptop::give_upper_tnip(), and hexahedc().
long tnmcomp |
number of components of strain vector
Definition at line 53 of file hexahedc.h.
Referenced by couptop::give_mncomp(), hexahedc(), and mefel_metr().