#include <quadlineart.h>
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 |
class quadlineart defines plane quadrilateral element with bi-linear approximation functions for transport problems
Definition at line 12 of file quadlineart.h.
quadlineart | ( | void | ) |
Definition at line 12 of file quadlineart.cpp.
References dofe, fourmediacoup, intordcm, intordkm, napfun, ncomp, ndofe, ned, nip, nne, nned, nomedium, probdesct::ntm, ntm, onemedium, ordering, print_err(), probdesct::savemode, threemediacoup, probdesct::tmatt, Tp, and twomediacoup.
~quadlineart | ( | void | ) |
double approx | ( | double | xi, | |
double | eta, | |||
vector & | nodval | |||
) |
function approximates function defined by nodal values
xi,eta | - coordinates on element | |
nodval | - vector of nodal values |
JK, 8.5.2002
Definition at line 187 of file quadlineart.cpp.
References vector::a, bf_lin_4_2d(), f, nne, and scprd().
Referenced by capacity_matrix(), compute_error(), conductivity_matrix(), edge_integral(), internal_fluxes(), intpointother(), intpointval(), quadrilatc::intpointval(), intpointval_puc(), ipcoord(), ipcoordblock(), l_matrix(), l_t_matrix(), quadrilatc::lower_cap_coup_matrix(), quadrilatc::lower_cond_coup_matrix(), quantity_source_vector(), total_integral(), quadrilatc::upper_cap_coup_matrix(), quadrilatc::upper_cond_coup_matrix(), quadrilatc::upper_cond_coup_vector(), and volume_rhs_vector().
void averc_matrix | ( | long | eid, | |
matrix & | lm | |||
) |
function assembles average C matrix
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
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
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
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
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
cn | - code numbers | |
ri | - number of matter (usually row index) |
Definition at line 171 of file quadlineart.cpp.
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)
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
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)
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
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().
function picks up nodal values on required edges
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
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().
function assembles gradient of matrix of base functions
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
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
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
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
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().
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
eid | - element id | |
nodval | - nodal values | |
ipval | - value at integration points |
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
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]
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}
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}
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
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
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
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
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().
function computes source vector of one matter on one element
{Omega} N^T N d Omega . s
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
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
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
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
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
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}
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}
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().
function assembles resulting element source vector
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
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
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
eid | - element id | |
nodval | - vector of quantity nodal 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
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
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
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
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}
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.
eid | - element id | |
nodval | - vector of nodal values | |
ntq | - type of non-mechanical quantity |
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.
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 |
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
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().
long** dofe |
numbers of DOFs for particular problems
Definition at line 80 of file quadlineart.h.
Referenced by capacity_matrix(), conductivity_matrix(), elem_area(), internal_fluxes(), intpointgrad(), intpointval(), intpointval_puc(), l_matrix(), l_t_matrix(), quadlineart(), quantity_source_vector(), res_boundary_flux(), res_capacity_matrix(), res_conductivity_matrix(), res_convection_vector(), res_internal_fluxes(), res_l_matrix(), res_l_t_matrix(), res_quantity_source_vector(), res_transmission_vector(), res_volume_rhs_vector(), volume_rhs_vector(), and ~quadlineart().
long** intordcm |
orders of integration of capacity matrices
Definition at line 98 of file quadlineart.h.
Referenced by capacity_matrix(), transtop::give_intordcm(), intpointflux(), intpointgrad(), intpointother(), intpointval(), intpointval_puc(), quadlineart(), quantity_source_vector(), and ~quadlineart().
long** intordkm |
orders of integration of conductivity matrices
Definition at line 96 of file quadlineart.h.
Referenced by boundary_flux(), capacity_matrix(), adaptivityt::check_consistency(), conductivity_matrix(), convection_vector(), export_gid_gauss_ptt(), transtop::give_intordkm(), internal_fluxes(), intpointflux(), intpointgrad(), intpointother(), intpointval(), intpointval_puc(), ipcoord(), ipcoordblock(), l_matrix(), l_t_matrix(), nod_eqother_ip(), nod_fluxes_ip(), nod_grads_ip(), quadlineart(), transmission_matrix(), transmission_vector(), transq_nodval(), transq_nodval_comp(), volume_rhs_vector(), and ~quadlineart().
long napfun |
number of approximated functions
Definition at line 88 of file quadlineart.h.
Referenced by quadlineart().
long ncomp |
problem dimension
Definition at line 90 of file quadlineart.h.
Referenced by averd_matrix(), adaptivityt::check_consistency(), compute_error(), conductivity_matrix(), elem_area(), transtop::give_ncomp(), internal_fluxes(), intpointgrad(), l_matrix(), l_t_matrix(), nod_fluxes_ip(), nod_grads_ip(), quadlineart(), res_l_matrix(), res_l_t_matrix(), and volume_rhs_vector().
long ndofe |
total number of DOFs on the element
Definition at line 78 of file quadlineart.h.
Referenced by transtop::give_ndofe(), intpointgrad(), intpointval(), intpointval_puc(), nod_others_comp(), quadlineart(), quadrilatc::quadrilatc(), and res_internal_fluxes().
long ned |
number of edges
Definition at line 84 of file quadlineart.h.
Referenced by boundary_flux(), convection_vector(), transtop::give_nbobjects(), transtop::give_ned(), quadlineart(), transmission_matrix(), and transmission_vector().
long** nip |
number of integration points
Definition at line 92 of file quadlineart.h.
Referenced by transtop::give_nip(), quadlineart(), and ~quadlineart().
long nne |
number of nodes on one element
Definition at line 82 of file quadlineart.h.
Referenced by approx(), boundary_flux(), capacity_matrix(), codnum(), compute_error(), conductivity_matrix(), convection_vector(), edge_integral(), elem_area(), transtop::give_nne(), grad_matrix(), internal_fluxes(), intpointgrad(), intpointother(), intpointval(), intpointval_puc(), ipcoord(), ipcoordblock(), l_matrix(), l_t_matrix(), nod_eqother_ip(), nod_fluxes_ip(), nod_grads_ip(), nod_others_comp(), quadlineart(), quadrilatc::quadrilatc(), quantity_source_vector(), total_integral(), transf_coeff(), transf_flux(), transf_val(), transmission_matrix(), transmission_vector(), transq_nodval(), transq_nodval_comp(), and volume_rhs_vector().
long nned |
number of nodes on one edge
Definition at line 86 of file quadlineart.h.
Referenced by boundary_flux(), convection_vector(), edgenodeval(), transtop::give_nbobjects(), transtop::give_nned(), quadlineart(), transf_coeff(), transf_flux(), transf_val(), transmission_matrix(), and transmission_vector().
long ntm |
number of transported matter
Definition at line 76 of file quadlineart.h.
Referenced by averc_matrix(), averd_matrix(), higher_to_lower_level(), nod_others_comp(), quadlineart(), res_boundary_flux(), res_capacity_matrix(), res_conductivity_matrix(), res_internal_fluxes(), res_l_matrix(), res_l_t_matrix(), res_transmission_vector(), res_volume_rhs_vector(), transq_nodval_comp(), and ~quadlineart().
long** ordering |
unknown ordering
Definition at line 94 of file quadlineart.h.
Referenced by codnum(), intpointgrad(), intpointval(), intpointval_puc(), quadlineart(), and ~quadlineart().