quadlineart Class Reference

#include <quadlineart.h>

List of all members.

Public Member Functions

double approx (double xi, double eta, vector &nodval)
void averc_matrix (long eid, matrix &lm)
void averd_matrix (long eid, matrix &lm)
void bf_matrix (matrix &n, double xi, double eta)
void boundary_flux (vector &v, long lcid, long eid, long leid, long ri, long ci)
void capacity_matrix (long eid, long ri, long ci, matrix &cm)
void codnum (long *cn, long ri)
double compute_error (long eid, vector *rderfull, int mattid, double &e2, double &u2, double &sizel)
void conductivity_matrix (long lcid, long eid, long ri, long ci, matrix &km)
void convection_vector (vector &v, long lcid, long eid, long leid, long cid)
void edge_integral (long edg, vector &x, vector &y, long intord, vector &gp, vector &w, vector &t, vector &coef, matrix &km)
void edgenodeval (long edg, vector &nodval, vector &list)
double elem_area (long eid)
void grad_matrix (matrix &gm, vector &x, vector &y, double xi, double eta, double &jac)
void higher_to_lower_level (long eid, long *counter, double *buff)
void internal_fluxes (long lcid, long eid, vector &ifl)
void intpointflux (long eid)
void intpointgrad (long eid)
void intpointother (long eid)
void intpointval (long eid, vector &nodval, vector &ipval)
void intpointval (long eid)
void intpointval_puc (long eid)
void ipcoord (long eid, long ipp, long ri, long ci, vector &coord)
void ipcoordblock (long eid, long ri, long ci, double **coord)
void l_matrix (long lcid, long eid, long ri, long ci, matrix &lm)
void l_t_matrix (long lcid, long eid, long ri, long ci, matrix &lm)
void nod_eqother_ip (long eid)
void nod_fluxes_ip (long eid)
void nod_grads_ip (long eid)
void nod_others_comp (long lcid, long eid, long ri, long ci)
 quadlineart (void)
void quantity_source_vector (vector &sv, vector &nodval, long eid, long ri, long ci)
void res_boundary_flux (vector &f, long lcid, long eid, long leid)
void res_capacity_matrix (long eid, matrix &cm)
void res_conductivity_matrix (long eid, long lcid, matrix &km)
void res_convection_vector (vector &f, long lcid, long eid, long leid)
void res_internal_fluxes (long eid, vector &elemif)
void res_l_matrix (long eid, long lcid, matrix &lm)
void res_l_t_matrix (long eid, long lcid, matrix &lm)
void res_quantity_source_vector (vector &sv, vector &nodval, long lcid, long eid)
void res_transmission_vector (vector &f, long lcid, long eid, long leid)
void res_volume_rhs_vector (vector &f, long eid, long lcid)
double total_integral (long eid, vector &nodval)
void transf_coeff (long edg, vector &coeff, vector &list, long eid, long ri, long ci, long ipp, bocontypet *bc, int flag)
void transf_flux (long edg, vector &coeff, vector &list, vector &trc, vector &trr, long eid, long ri, long ci, long ipp, bocontypet *bc)
void transf_val (long edg, vector &nodval, vector &list, vector &trc, vector &trr, long eid, long ri, long ci, long ipp, bocontypet *bc)
void transmission_matrix (long lcid, long eid, long ri, long ci, matrix &km)
void transmission_vector (vector &v, long lcid, long eid, long leid, long cid)
void transq_nodval (long eid, vector &nodval, nonmechquant nmq)
void transq_nodval_comp (long eid, vector &nodval, long ncne, long nq, nonmechquant *qt)
void volume_rhs_vector (long lcid, long eid, long ri, long ci, vector &vrhs)
 ~quadlineart (void)

Public Attributes

long ** dofe
 numbers of DOFs for particular problems
long ** intordcm
 orders of integration of capacity matrices
long ** intordkm
 orders of integration of conductivity matrices
long napfun
 number of approximated functions
long ncomp
 problem dimension
long ndofe
 total number of DOFs on the element
long ned
 number of edges
long ** nip
 number of integration points
long nne
 number of nodes on one element
long nned
 number of nodes on one edge
long ntm
 number of transported matter
long ** ordering
 unknown ordering

Detailed Description

class quadlineart defines plane quadrilateral element with bi-linear approximation functions for transport problems

Definition at line 12 of file quadlineart.h.


Constructor & Destructor Documentation

quadlineart ( void   ) 
~quadlineart ( void   ) 

Definition at line 146 of file quadlineart.cpp.

References dofe, intordcm, intordkm, nip, ntm, and ordering.


Member Function Documentation

double approx ( double  xi,
double  eta,
vector nodval 
)
void averc_matrix ( long  eid,
matrix lm 
)

function assembles average C matrix

Parameters:
eid - element id
lm - resulting C matrix of one element

TKr, 05/04/2011

Definition at line 1255 of file quadlineart.cpp.

References intpointst::av, transmat::capcoeff(), transtop::elements, transmat::ip, elementt::ipp, ntm, probdesct::savemode, Tm, Tp, and Tt.

Referenced by avercmat().

void averd_matrix ( long  eid,
matrix lm 
)

function assembles average D matrix

Parameters:
eid - element id
lm - resulting D matrix of one element

TKr, 05/04/2010

Definition at line 1199 of file quadlineart.cpp.

References transtop::elements, elementt::ipp, mat_localize(), transmat::matcond(), ncomp, ntm, probdesct::savemode, Tm, Tp, and Tt.

Referenced by averdmat().

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

function assembles matrix of base functions

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

JK, 25.9.2001

Definition at line 646 of file quadlineart.cpp.

References matrix::a, bf_lin_4_2d(), and fillm().

Referenced by capacity_matrix(), conductivity_matrix(), edge_integral(), quadrilatc::lower_cap_coup_matrix(), quadrilatc::lower_cond_coup_matrix(), quantity_source_vector(), quadrilatc::upper_cap_coup_matrix(), quadrilatc::upper_cond_coup_matrix(), and quadrilatc::upper_cond_coup_vector().

void boundary_flux ( vector v,
long  lcid,
long  eid,
long  leid,
long  ri,
long  ci 
)

function computes contributions to the boundary flux from transmission vector

{Gamma_3} N^T c_{tr} N dGamma * nodal_external_value

Parameters:
tmv - vector of boundary fluxes
lcid - load case id
eid - element id
leid - element id
ri,ci - row and column indices of the computed block in the resulting matrix

TKr, 28.2.2004

Definition at line 1871 of file quadlineart.cpp.

References addv(), edge_integral(), edgenodeval(), transtop::elements, loadcaset::elemload, fillm(), fillv(), gauss_points(), loadelt::give_bc(), transtop::give_elemnodes(), transtop::give_node_coord2d(), loadelt::give_nodval(), transcrsec::give_thickness(), loadelt::give_trc(), loadelt::give_trr(), intordkm, elementt::ipp, transbclc::lc, mxv(), ned, nne, nned, nodes, nodval(), probdesct::savemode, Tb, Tc, Tp, transf_flux(), and Tt.

Referenced by res_boundary_flux().

void capacity_matrix ( long  eid,
long  ri,
long  ci,
matrix cm 
)

function computes capacity matrix of 2D problems for one transported matter finite element with bilinear approximation functions

Parameters:
eid - element id
ri,ci - row and column indices of the computed block in the resulting matrix
cm - capacity matrix

JK, 4.10.2001

Definition at line 911 of file quadlineart.cpp.

References matrix::a, approx(), bf_matrix(), transmat::capcoeff(), dofe, transtop::elements, fillm(), gauss_points(), transcrsec::give_density(), transtop::give_elemnodes(), transtop::give_node_coord2d(), transcrsec::give_thickness(), intordcm, intordkm, elementt::ipp, jac_2d(), matrix::m, matrix::n, nne, nnj(), nodes, print_err(), probdesct::savemode, Tc, Tm, Tp, and Tt.

Referenced by res_capacity_matrix().

void codnum ( long *  cn,
long  ri 
)

function assembles element code numbers they are used for localization between all element unknowns and unknowns related to one matter

Parameters:
cn - code numbers
ri - number of matter (usually row index)

Definition at line 171 of file quadlineart.cpp.

References nne, and ordering.

Referenced by res_boundary_flux(), res_capacity_matrix(), res_conductivity_matrix(), res_convection_vector(), res_internal_fluxes(), res_l_matrix(), res_l_t_matrix(), quadrilatc::res_lower_cap_coup_matrix(), quadrilatc::res_lower_cond_coup_matrix(), res_quantity_source_vector(), res_transmission_vector(), quadrilatc::res_upper_cap_coup_matrix(), quadrilatc::res_upper_cond_coup_matrix(), quadrilatc::res_upper_cond_coup_vector(), and res_volume_rhs_vector().

double compute_error ( long  eid,
vector rderfull,
int  mattid,
double &  e2,
double &  u2,
double &  sizel 
)

Function 1. 1. computes "e2" - square of energy norm of error of solution on element e2 = integral{ (sig_star - sig_roof)T * D_inv * (sig_star - sig_roof) } sig_star = recovered stress, values in nodes are defined by "rsigfull" and over element are interpolated by base functions sig_roof = stress obtained by FEM D_inv = inverse stiffness matrix of material 2. computes "u2" - square of energy norm of strain on element u2 = integral{ epsT * D * eps } eps = strain obtained by FEM D = stiffness matrix of material 3. computes area of element and adds to "volume" (sum of areas of previous elements) 4. computes "sizel" (characteristic size of element)

Parameters:
eid - element id
volume - sum of areas of previous elements
e2 - empty(returned) value;
u2 - empty(returned) value;
sizel - empty(returned) value;
rsigfull - 1Darray of stress in nodes; dimmension is ncomp*gt->nn after this manner {(val[0]; ... ;val[gt->nn])[0] ; ... ; (val[0]; ... ;val[gt->nn])[ncomp]}

created 3.5.2002, Ladislav Svoboda, termit@cml.fsv.cvut.cz

Definition at line 2433 of file quadlineart.cpp.

References approx(), bf_lin_4_2d(), transtop::elements, gauss_points(), give_der_star(), transtop::give_elemnodes(), transtop::give_node_coord2d(), transcrsec::give_thickness(), transmat::givegrad(), elementt::ipp, jac_2d(), transmat::matcond(), ncomp, transtop::nn, nne, nodes, print_err(), probdesct::savemode, subv(), Tc, Tm, Tp, Tt, and vxmxv().

Referenced by adaptivityt::compute_error().

void conductivity_matrix ( long  lcid,
long  eid,
long  ri,
long  ci,
matrix km 
)

function computes conductivity matrix of 2D problems for one transported matter finite element with bilinear approximation functions

Parameters:
lcid - number of load case
eid - element id
ri,ci - row and column indices of the computed block in the resulting matrix
km - conductivity matrix

JK, 25.9.2001

Definition at line 694 of file quadlineart.cpp.

References matrix::a, approx(), bdbj(), bdbjac(), bf_matrix(), dofe, transtop::elements, fillm(), gauss_points(), transtop::give_elemnodes(), transtop::give_node_coord2d(), transcrsec::give_thickness(), grad_matrix(), intordkm, elementt::ipp, transmat::matcond(), transmat::matcond2(), ncomp, nne, nodes, print_err(), reallocm(), probdesct::savemode, Tc, Tm, Tp, elementt::transi, transmission_matrix(), and Tt.

Referenced by res_conductivity_matrix().

void convection_vector ( vector v,
long  lcid,
long  eid,
long  leid,
long  cid 
)

function computes nodal fluxes caused by prescribed fluxes (Neumann boundary condition)

Parameters:
v - array of nodal fluxes
lcid - load case id (corresponds to the row index)
eid - element id
leid - loaded element id
cid - component id (corresponds to the column index)

JK, 19.8.2004

Definition at line 1658 of file quadlineart.cpp.

References addv(), edge_integral(), edgenodeval(), transtop::elements, loadcaset::elemload, fillm(), fillv(), gauss_points(), loadelt::give_bc(), transtop::give_elemnodes(), transtop::give_node_coord2d(), loadelt::give_nodval(), transcrsec::give_thickness(), intordkm, elementt::ipp, transbclc::lc, mxv(), ned, nne, nned, nodes, nodval(), probdesct::savemode, Tb, Tc, Tp, and Tt.

Referenced by res_convection_vector().

void edge_integral ( long  edg,
vector x,
vector y,
long  intord,
vector gp,
vector w,
vector t,
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
t - nodal thicknesses
coef - array of nodal values of coefficient
km - output matrix

JK

Definition at line 1942 of file quadlineart.cpp.

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

Referenced by boundary_flux(), convection_vector(), transmission_matrix(), and transmission_vector().

void edgenodeval ( long  edg,
vector nodval,
vector 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 2163 of file quadlineart.cpp.

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

Referenced by boundary_flux(), and convection_vector().

double elem_area ( long  eid  ) 

function assembles area of one element

Parameters:
eid - element id

TKr, 05/04/2011

Definition at line 1284 of file quadlineart.cpp.

References dofe, transtop::give_node_coord2d(), grad_matrix(), ncomp, nne, and Tt.

Referenced by avercmat(), and averdmat().

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

function assembles gradient of matrix of base functions

Parameters:
gm - gradient matrix
x,y - array containing node coordinates
xi,eta - natural coordinates
jac - Jacobian

JK, 25.9.2001

Definition at line 662 of file quadlineart.cpp.

References vector::a, derivatives_2d(), dx_bf_lin_4_2d(), dy_bf_lin_4_2d(), fillm(), and nne.

Referenced by conductivity_matrix(), elem_area(), internal_fluxes(), intpointgrad(), quadrilatc::intpointgrad(), l_matrix(), l_t_matrix(), and volume_rhs_vector().

void higher_to_lower_level ( long  eid,
long *  counter,
double *  buff 
)

function selects values and gradients from the global level

Parameters:
eid - element id
counter - actual position in the array buff
buff - array containing selected components

JK, 19.4.2011

Definition at line 2383 of file quadlineart.cpp.

References intpointst::av, transtop::elements, transmat::givegrad(), transmat::ip, elementt::ipp, ntm, Tm, and Tt.

Referenced by higher_to_lower_level_elem().

void internal_fluxes ( long  lcid,
long  eid,
vector ifl 
)

function computes internal fluxes of 1D problems for one transported matter finite element with linear approximation functions

Parameters:
lcid - number of load case
eid - number of element
ifl - vector of internal fluxes

JK, 31.3.2002

Definition at line 1022 of file quadlineart.cpp.

References vector::a, addv(), approx(), cmulv(), transmat::computenlfluxes(), dofe, transtop::elements, gauss_points(), transtop::give_elemnodes(), transtop::give_node_coord2d(), transcrsec::give_thickness(), transmat::givefluxes(), grad_matrix(), intordkm, elementt::ipp, mtxv(), ncomp, nne, nodes, print_err(), reallocv(), probdesct::savemode, Tc, Tm, Tp, and Tt.

Referenced by res_internal_fluxes().

void intpointflux ( long  eid  ) 

function computes correct fluxes at integration points on element

Parameters:
eid - element id

TKr, 01/02/2010

Definition at line 2186 of file quadlineart.cpp.

References transmat::computenlfluxes(), transtop::elements, probdesct::fluxcomp, intordcm, intordkm, elementt::ipp, probdesct::ntm, probdesct::savemode, Tm, Tp, and Tt.

Referenced by intpointfluxes(), and nod_fluxes_ip().

void intpointgrad ( long  eid  ) 

function computes gradients in integration points from nodal values

eid - element id

JK, 25.9.2001

Definition at line 488 of file quadlineart.cpp.

References vector::a, ivector::a, dofe, transtop::elements, elemvalues(), gauss_points(), transtop::give_code_numbers(), transtop::give_node_coord2d(), grad, grad_matrix(), intordcm, intordkm, elementt::ipp, mxv(), ncomp, ndofe, nne, probdesct::ntm, ordering, reallocv(), probdesct::savemode, transmat::storegrad(), Tm, Tp, and Tt.

Referenced by intpointgradients().

void intpointother ( long  eid  ) 

function interpolates nodal values of array other to integration points

Parameters:
eid - element id

JK, 17.9.2005

Definition at line 565 of file quadlineart.cpp.

References vector::a, approx(), transtop::elements, gauss_points(), transtop::give_elemnodes(), intordcm, intordkm, transmat::ip, elementt::ipp, nodet::ncompother, nne, nodalotherval(), transtop::nodes, nodes, probdesct::ntm, intpointst::other, reallocv(), probdesct::savemode, Tm, Tp, and Tt.

Referenced by intpointothers().

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

function computes values in integration points from nodal values this function is used for arbitrary variable, not only for variables used as unknowns in the problem

Parameters:
eid - element id
nodval - nodal values
ipval - value at integration points
Return values:
Function returns approximated values at integration points in the vector ipval.

12/06/2012 TKr according to JK

Definition at line 356 of file quadlineart.cpp.

References vector::a, approx(), transtop::elements, gauss_points(), intordcm, intordkm, elementt::ipp, probdesct::ntm, reallocv(), probdesct::savemode, Tp, and Tt.

void intpointval ( long  eid  ) 

function computes values in integration points from nodal values (function interpolates the nodal values to integration points)

eid - element id

JK, 25.9.2001

Definition at line 280 of file quadlineart.cpp.

References vector::a, ivector::a, approx(), intpointst::av, dofe, transtop::elements, elemvalues(), gauss_points(), transtop::give_code_numbers(), intordcm, intordkm, transmat::ip, elementt::ipp, ndofe, nne, probdesct::ntm, ordering, reallocv(), probdesct::savemode, Tm, Tp, and Tt.

Referenced by elem_intpointvalt(), and intpointvalues().

void intpointval_puc ( long  eid  ) 

function computes values in integration points from nodal values for PUC (function interpolates the nodal values to integration points)

eid - element id

TKr, 05/04/2010

Definition at line 417 of file quadlineart.cpp.

References vector::a, ivector::a, approx(), intpointst::av, dofe, transtop::elements, elemvalues_puc(), gauss_points(), transtop::give_code_numbers(), intordcm, intordkm, transmat::ip, elementt::ipp, ndofe, nne, probdesct::ntm, ordering, reallocv(), probdesct::savemode, Tm, Tp, and Tt.

Referenced by intpointvalues_puc().

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

function assembles coordinates of rquired integration point

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

JK, 8.5.2002 + TKr 14.11.2003

Definition at line 211 of file quadlineart.cpp.

References vector::a, approx(), transtop::elements, gauss_points(), transtop::give_node_coord2d(), intordkm, elementt::ipp, nne, probdesct::savemode, Tp, and Tt.

void ipcoordblock ( long  eid,
long  ri,
long  ci,
double **  coord 
)

function assembles coordinates of integration points in block [ri][ci]

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

JK, 8.5.2002 + TKr 14.11.2003

Definition at line 250 of file quadlineart.cpp.

References vector::a, approx(), gauss_points(), transtop::give_node_coord2d(), intordkm, nne, and Tt.

void l_matrix ( long  lcid,
long  eid,
long  ri,
long  ci,
matrix lm 
)

function computes L matrix

L = {} D B { d}

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

TKr, 05/04/2011

Definition at line 776 of file quadlineart.cpp.

References approx(), cmulm(), dofe, transtop::elements, fillm(), gauss_points(), transtop::give_elemnodes(), transtop::give_node_coord2d(), transcrsec::give_thickness(), grad_matrix(), intordkm, elementt::ipp, transmat::matcond(), mxm(), ncomp, nne, nodes, print_err(), reallocm(), probdesct::savemode, Tc, Tm, Tp, and Tt.

Referenced by res_l_matrix().

void l_t_matrix ( long  lcid,
long  eid,
long  ri,
long  ci,
matrix lm 
)

function computes L^T (L transposed) matrix

L^T = {} B^T D { d}

Parameters:
lcid - load case id
eid - element id
ri,ci - row and column indices
lm - L^T matrix

TKr, 05/04/2011

Definition at line 844 of file quadlineart.cpp.

References approx(), cmulm(), dofe, transtop::elements, fillm(), gauss_points(), transtop::give_elemnodes(), transtop::give_node_coord2d(), transcrsec::give_thickness(), grad_matrix(), intordkm, elementt::ipp, transmat::matcond(), mtxm(), ncomp, nne, nodes, print_err(), reallocm(), probdesct::savemode, Tc, Tm, Tp, and Tt.

Referenced by res_l_t_matrix().

void nod_eqother_ip ( long  eid  ) 

function computes other values in nodes of element

Parameters:
eid - element id

Tomas Koudelka, 6.5.2014

Definition at line 2301 of file quadlineart.cpp.

References vector::a, transtop::elements, transtop::give_elemnodes(), transmat::giveeqother(), transmat::givencompeqother(), intordkm, elementt::ipp, nne, nod, transtop::nodes, nodip_planelq(), reallocv(), nodet::storeeqother(), Tm, and Tt.

Referenced by compute_nodeeqotherst().

void nod_fluxes_ip ( long  eid  ) 

function computes fluxes in nodes of element

Parameters:
eid - element id

TKr, 01/02/2010

Definition at line 2264 of file quadlineart.cpp.

References transtop::elements, flux, transtop::give_elemnodes(), transmat::givefluxes(), intordkm, intpointflux(), elementt::ipp, ncomp, nne, nod, transtop::nodes, nodip_planelq(), probdesct::ntm, nodet::storeflux(), Tm, Tp, and Tt.

Referenced by compute_nodefluxes().

void nod_grads_ip ( long  eid  ) 

function computes gradients in nodes of element

Parameters:
eid - element id

TKr, 01/02/2010

Definition at line 2229 of file quadlineart.cpp.

References transtop::elements, transtop::give_elemnodes(), transmat::givegrad(), grad, intordkm, elementt::ipp, ncomp, nne, nod, transtop::nodes, nodip_planelq(), probdesct::ntm, nodet::storegrad(), Tm, Tp, and Tt.

Referenced by compute_nodegrads().

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

function computes other values directly in nodes of element

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

TKr, 03/02/2010

Definition at line 2339 of file quadlineart.cpp.

References vector::a, ivector::a, transtop::elements, elemvalues(), transtop::give_code_numbers(), transtop::give_elemnodes(), transmat::givecompother(), transmat::givencompother(), h(), elementt::ipp, ndofe, nne, nod, transtop::nodes, ntm, other, reallocv(), probdesct::savemode, nodet::storeother(), Tm, Tp, and Tt.

Referenced by compute_nodeotherst_comp().

void quantity_source_vector ( vector sv,
vector nodval,
long  eid,
long  ri,
long  ci 
)

function computes source vector of one matter on one element

{Omega} N^T N d Omega . s

Parameters:
sv - source vector of one matter
lcid - load case id
eid - element id
ri,ci - row and column indices of the block (ri must be equal to ci)

JK, 4.10.2001

Definition at line 970 of file quadlineart.cpp.

References matrix::a, addv(), approx(), bf_matrix(), dofe, fillm(), gauss_points(), transtop::give_elemnodes(), transtop::give_node_coord2d(), transcrsec::give_thickness(), intordcm, jac_2d(), mxv(), nne, nnj(), nodes, print_err(), Tc, and Tt.

Referenced by res_quantity_source_vector().

void res_boundary_flux ( vector f,
long  lcid,
long  eid,
long  leid 
)

function assembles resulting element boundary flux vector

Parameters:
f - resulting boundary flux vector of one element
lcid - load case id
eid - element id
leid - element id

TKr, 28.2.2004

Definition at line 1531 of file quadlineart.cpp.

References vector::a, boundary_flux(), codnum(), dofe, transtop::elements, locglob(), ntm, reallocv(), elementt::transi, and Tt.

Referenced by elem_transmission_flux().

void res_capacity_matrix ( long  eid,
matrix cm 
)

function assembles resulting element capacity matrix

Parameters:
eid - element id
cm - resulting capacity matrix of one element

JK, 6.1.2002

Definition at line 1312 of file quadlineart.cpp.

References capacity_matrix(), codnum(), probdesct::diagcap, dofe, mat_localize(), ntm, reallocm(), and Tp.

Referenced by capacmat(), and res_internal_fluxes().

void res_conductivity_matrix ( long  eid,
long  lcid,
matrix km 
)

function assembles resulting element conductivity matrix

Parameters:
eid - element id
lcid - load case id
km - resulting conductivity matrix of one element

JK, 6.1.2002

Definition at line 1087 of file quadlineart.cpp.

References codnum(), conductivity_matrix(), dofe, mat_localize(), ntm, and reallocm().

Referenced by conductmat().

void res_convection_vector ( vector f,
long  lcid,
long  eid,
long  leid 
)

function assembles resulting element convection vector

Parameters:
f - resulting convection vector of one element
lcid - load case id
eid - element id
leid - id of element with boundary condition

JK, 6.1.2002

Definition at line 1357 of file quadlineart.cpp.

References vector::a, cmulv(), codnum(), convection_vector(), dofe, transtop::elements, locglob(), reallocv(), elementt::transi, and Tt.

Referenced by elem_neumann_vector().

void res_internal_fluxes ( long  eid,
vector elemif 
)

function assembles resulting element internal fluxes vector

Parameters:
eid - element id
elemif - resulting internal fluxes vector of one element

JK, 6.1.2002

Definition at line 1449 of file quadlineart.cpp.

References vector::a, codnum(), dofe, gtopology::give_code_numbers(), Gtt, internal_fluxes(), locglob(), mxv(), ndofe, nodalderivatives(), ntm, reallocm(), reallocv(), res_capacity_matrix(), and subv().

Referenced by internal_fluxes().

void res_l_matrix ( long  eid,
long  lcid,
matrix lm 
)

function assembles resulting element L matrix

L^T = {} B^T D { d}

Parameters:
eid - element id
lcid - load case id
lm - resulting L matrix of one element

TKr, 05/04/2010

Definition at line 1121 of file quadlineart.cpp.

References codnum(), dofe, l_matrix(), mat_localize(), ncomp, ntm, and reallocm().

Referenced by lmat().

void res_l_t_matrix ( long  eid,
long  lcid,
matrix lm 
)

function assembles resulting element L^T (L transposed) matrix

L^T = {} B^T D { d}

Parameters:
eid - element id
lcid - load case id
lm - resulting L^T matrix of one element

TKr, 05/04/2010

Definition at line 1161 of file quadlineart.cpp.

References codnum(), dofe, l_t_matrix(), mat_localize(), ncomp, ntm, and reallocm().

Referenced by ltmat().

void res_quantity_source_vector ( vector sv,
vector nodval,
long  lcid,
long  eid 
)

function assembles resulting element source vector

Parameters:
sv - resulting source vector of one element
nodval - array of nodal values
lcid - load case id
eid - element id

JK, 6.1.2002

Definition at line 1428 of file quadlineart.cpp.

References vector::a, codnum(), dofe, locglob(), quantity_source_vector(), and reallocv().

Referenced by source_vector().

void res_transmission_vector ( vector f,
long  lcid,
long  eid,
long  leid 
)

function assembles resulting element transmission vector

Parameters:
f - resulting transmission vector of one element
lcid - load case id
eid - element id
leid - id of element with boundary condition

JK, 6.1.2002, 18. 4. 2014

Definition at line 1393 of file quadlineart.cpp.

References vector::a, codnum(), dofe, transtop::elements, locglob(), vector::n, ntm, nullv(), reallocv(), elementt::transi, transmission_vector(), and Tt.

Referenced by elem_newton_vector().

void res_volume_rhs_vector ( vector f,
long  eid,
long  lcid 
)

function assembles resulting element volume right-hand side

Parameters:
eid - element id
lcid - load case id
f - resulting volume right-hand side vector of one element

TKr, 10/12/2013

Definition at line 1628 of file quadlineart.cpp.

References vector::a, codnum(), dofe, locglob(), ntm, reallocv(), and volume_rhs_vector().

Referenced by volume_rhs_vector().

double total_integral ( long  eid,
vector nodval 
)

function computes element quantity integral

Parameters:
eid - element id
nodval - vector of quantity nodal values
Return values:
f - element quantity integral

TKr, 30.1.2004

Definition at line 1489 of file quadlineart.cpp.

References approx(), f, gauss_points(), transtop::give_elemnodes(), transtop::give_node_coord2d(), transcrsec::give_thickness(), jac_2d(), nne, nodes, Tc, and Tt.

Referenced by elem_total_integral().

void transf_coeff ( long  edg,
vector coeff,
vector list,
long  eid,
long  ri,
long  ci,
long  ipp,
bocontypet bc,
int  flag 
)

function

Parameters:
edg - edge id
coeff - array of
list - array of nodal values prescribed on boundary
eid - element id
ri,ci - row and column indices
ipp - integration point id
bc - array describing type of boundary condition
flag - coefficient is computing for what 0=matrix,1=loading vector

Definition at line 2074 of file quadlineart.cpp.

References ivector::a, fillv(), transtop::give_elemnodes(), linquadrilat_edgnod(), nne, nned, nodes, Tm, transmat::transmission_transcoeff(), and Tt.

Referenced by transmission_matrix(), and transmission_vector().

void transf_flux ( long  edg,
vector coeff,
vector list,
vector trc,
vector trr,
long  eid,
long  ri,
long  ci,
long  ipp,
bocontypet bc 
)

function

Parameters:
edg - edge id
coeff - array of
list - array of nodal values prescribed on boundary
trc - array of transmission coefficients
trr - array of transmission/radiation coefficients
eid - element id
ri,ci - row and column indices
ipp - integration point id
bc - array describing type of boundary condition

Definition at line 2028 of file quadlineart.cpp.

References ivector::a, fillv(), transtop::give_elemnodes(), linquadrilat_edgnod(), nne, nned, nodes, Tm, transmat::transmission_flux(), and Tt.

Referenced by boundary_flux().

void transf_val ( long  edg,
vector nodval,
vector list,
vector trc,
vector trr,
long  eid,
long  ri,
long  ci,
long  ipp,
bocontypet bc 
)

function prepares nodal values of transported quantity, transmission coefficents and transmission/radiation coefficients

Parameters:
edg - number of required edge (edge id)
nodval - array of transformed nodal values
list - array of nodal values defined on all edges
trc - array of transmission coefficients
trr - array of transmission/radiation coefficients
ri,ci - row and column indices
ipp - integration point number
bc - array defining boundary conditions

JK, 19.8.2004

Definition at line 2119 of file quadlineart.cpp.

References ivector::a, fillv(), transtop::give_elemnodes(), linquadrilat_edgnod(), nne, nned, nodes, Tm, transmat::transmission_nodval(), and Tt.

Referenced by transmission_vector().

void transmission_matrix ( long  lcid,
long  eid,
long  ri,
long  ci,
matrix km 
)

function computes transmission complement to the conductivity matrix for one matter

{Gamma_3} N^T c_{tr} N dGamma

Parameters:
lcid - number of load case
eid - element id
ri,ci - row and column indices
km - part of the conductivity matrix

JK, 19.8.2004

Definition at line 1731 of file quadlineart.cpp.

References vector::a, edge_integral(), loadelt::eid, transtop::elements, loadcaset::elemload, gauss_points(), loadelt::give_bc(), transtop::give_elemnodes(), transtop::give_node_coord2d(), transcrsec::give_thickness(), loadelt::give_trc(), intordkm, elementt::ipp, transbclc::lc, loadcaset::neb, ned, nne, nned, nodes, probdesct::savemode, Tb, Tc, Tp, transf_coeff(), and Tt.

Referenced by conductivity_matrix().

void transmission_vector ( vector v,
long  lcid,
long  eid,
long  leid,
long  cid 
)

function computes nodal values on element caused by prescribed transmission (Newton boundary condition)

function computes T_{ext}

Parameters:
v - vector of nodal values
lcid - load case id (corresponds to the row index)
eid - element id
leid - loaded element id
cid - component id (corresponds to the column index)

JK, 18. 4. 2014

Definition at line 1797 of file quadlineart.cpp.

References addv(), edge_integral(), transtop::elements, loadcaset::elemload, fillm(), fillv(), gauss_points(), loadelt::give_bc(), transtop::give_elemnodes(), loadelt::give_external_nodval(), transtop::give_node_coord2d(), transcrsec::give_thickness(), loadelt::give_trc(), loadelt::give_trr(), intordkm, elementt::ipp, transbclc::lc, mxv(), ned, nne, nned, nodes, nodval(), probdesct::savemode, Tb, Tc, Tp, transf_coeff(), transf_val(), and Tt.

Referenced by res_transmission_vector().

void transq_nodval ( long  eid,
vector nodval,
nonmechquant  nmq 
)

Function returns transport (non-mechanical) quantities at nodes of element. The values of selected quantity is copied from the closest integration points to element nodes.

Parameters:
eid - element id
nodval - vector of nodal values
ntq - type of non-mechanical quantity
Returns:
The function does not return anything.

Created by TKo, 3.2.2014

Definition at line 2496 of file quadlineart.cpp.

References transtop::elements, transmat::givetransq(), intordkm, elementt::ipp, nne, nodip_planelq(), Tm, and Tt.

Referenced by elem_transq_nodval().

void transq_nodval_comp ( long  eid,
vector nodval,
long  ncne,
long  nq,
nonmechquant qt 
)

Function computes transport (non-mechanical) quantities at nodes of element.

Parameters:
eid - element id
nodval - vector of nodal values of all required quantities, i.e., nodal value of i-th quantity in j-th node is given by nodval[i*ncnv+j] where ncnv is the number of calculated nodes on eid-th element.
ncne - number of computed nodes on element (only first ncne of nodes is calculated)
nq - number of required transport quantities
qt - array of types of required non-mechanical, i.e. transport quantities
Returns:
The function does not return anything.

Modified by TKo, 31.1.2014

Created by 26/09/2012 TKr

Definition at line 2532 of file quadlineart.cpp.

References intpointst::av, intpointst::copy(), transtop::elements, intpointst::eqother, transtop::give_elemnodes(), transmat::givetransq(), intordkm, transmat::ip, elementt::ipp, transmat::mat_aux_values(), intpointst::ncompeqother, intpointst::ncompother, nne, nodalval(), nodip_planelq(), ntm, intpointst::other, transmat::storeeqother(), transmat::storeother(), Tm, and Tt.

Referenced by elem_transq_nodval_comp().

void volume_rhs_vector ( long  lcid,
long  eid,
long  ri,
long  ci,
vector vrhs 
)

function computes contributions to the right-hand side - volume integral

{Omega} B^T D dOmega

Parameters:
tmv - transmission vector of one matter
lcid - load case id
eid - element id
ri,ci - row and column indices of the block (ri must be equal to ci)

TKr, 10/12/2013

Definition at line 1566 of file quadlineart.cpp.

References approx(), dofe, transtop::elements, fillm(), gauss_points(), transtop::give_elemnodes(), transtop::give_node_coord2d(), grad_matrix(), intordkm, elementt::ipp, vector::n, ncomp, nne, nnjac(), nodes, reallocm(), probdesct::savemode, Tm, Tp, Tt, and transmat::volume_rhs().

Referenced by res_volume_rhs_vector().


Member Data Documentation

long** dofe
long** intordcm
long** intordkm
long napfun

number of approximated functions

Definition at line 88 of file quadlineart.h.

Referenced by quadlineart().

long ncomp
long ndofe
long ned
long** nip

number of integration points

Definition at line 92 of file quadlineart.h.

Referenced by transtop::give_nip(), quadlineart(), and ~quadlineart().

long nne
long nned
long ntm
long** ordering

unknown ordering

Definition at line 94 of file quadlineart.h.

Referenced by codnum(), intpointgrad(), intpointval(), intpointval_puc(), quadlineart(), and ~quadlineart().


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

Generated by  doxygen 1.6.2