#include <quadbartax.h>
Public Member Functions | |
double | approx (double xi, vector &nodval) |
void | bf_matrix (matrix &n, double xi) |
void | boundary_flux (vector &tmv, 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) |
void | conductivity_matrix (long lcid, long eid, long ri, long ci, matrix &km) |
void | convection_vector (vector &f, long lcid, long eid, long leid, long ri, long ci) |
void | grad_matrix (matrix &gm, vector &x, double xi, double &jac) |
void | internal_fluxes (long lcid, long eid, vector &ifl) |
void | intpointgrad (long eid) |
void | intpointother (long eid) |
void | intpointval (long eid) |
void | nod_others (long lcid, long eid, long ri, long ci) |
quadbartax (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_quantity_source_vector (vector &sv, vector &nodval, long lcid, long eid) |
void | res_transmission_vector (vector &f, long lcid, long eid, long leid) |
double | total_integral (long eid, vector &nodval) |
void | transmission_matrix (long lcid, long eid, long ri, long ci, matrix &km) |
void | transmission_vector (vector &tmv, long lcid, long eid, long leid, long ri, long ci) |
~quadbartax (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 | nen |
number of end nodes | |
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 matters | |
long ** | ordering |
unknown ordering |
class quadbartax defines onedimensional element with quadratic approximation functions for axisymmetric domain
Definition at line 9 of file quadbartax.h.
quadbartax | ( | void | ) |
Definition at line 11 of file quadbartax.cpp.
References dofe, intordcm, intordkm, napfun, ncomp, ndofe, ned, nen, nip, nne, nned, probdesct::ntm, ntm, onemedium, ordering, print_err(), probdesct::savemode, threemediacoup, probdesct::tmatt, Tp, and twomediacoup.
~quadbartax | ( | void | ) |
double approx | ( | double | xi, | |
vector & | nodval | |||
) |
function approximates function defined by nodal values
xi | - natural coordinate on element | |
nodval | - nodal values |
JK, 31.3.2002
Definition at line 139 of file quadbartax.cpp.
References vector::a, bf_quad_1d(), f, nne, and scprd().
Referenced by boundary_flux(), capacity_matrix(), conductivity_matrix(), convection_vector(), internal_fluxes(), intpointother(), intpointval(), quantity_source_vector(), total_integral(), transmission_matrix(), and transmission_vector().
void bf_matrix | ( | matrix & | n, | |
double | xi | |||
) |
function assembles matrix of base functions
n | - matrix of base functions | |
xi | - natural coordinate |
JK, 31.3.2002
Definition at line 353 of file quadbartax.cpp.
References matrix::a, bf_quad_1d(), and fillm().
Referenced by boundary_flux(), capacity_matrix(), conductivity_matrix(), convection_vector(), quantity_source_vector(), transmission_matrix(), and transmission_vector().
void boundary_flux | ( | vector & | tmv, | |
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 1127 of file quadbartax.cpp.
References matrix::a, addv(), approx(), bf_matrix(), dofe, transtop::elements, loadcaset::elemload, fillm(), transcrsec::give_area(), loadelt::give_bc(), transtop::give_elemnodes(), transtop::give_node_coord1d(), loadelt::give_nodval(), loadelt::give_trc(), loadelt::give_trr(), elementt::ipp, transbclc::lc, mxv(), nne, nnj(), nodes, nodval(), probdesct::savemode, Tb, Tc, Tm, Tp, transmat::transmission_flux(), and Tt.
Referenced by res_boundary_flux().
void capacity_matrix | ( | long | eid, | |
long | ri, | |||
long | ci, | |||
matrix & | cm | |||
) |
function computes capacity matrix of 1D problems for one transported matter finite element with quadratic approximation functions
eid | - number of element | |
ri,ci | - row and column indices of the computed block in the resulting matrix | |
cm | - capacity matrix |
JK, 31.3.2002
Definition at line 466 of file quadbartax.cpp.
References matrix::a, approx(), bf_matrix(), transmat::capcoeff(), dofe, transtop::elements, fillm(), gauss_points(), transcrsec::give_area(), transcrsec::give_densitye(), transtop::give_elemnodes(), transtop::give_node_coord1d(), intordcm, intordkm, elementt::ipp, jac_1d(), matrix::m, matrix::n, nne, nnj(), nodes, probdesct::savemode, Tc, Tm, Tp, and Tt.
Referenced by res_capacity_matrix().
void codnum | ( | long * | cn, | |
long | ri | |||
) |
Definition at line 123 of file quadbartax.cpp.
Referenced by res_boundary_flux(), res_capacity_matrix(), res_conductivity_matrix(), res_convection_vector(), res_internal_fluxes(), res_quantity_source_vector(), and res_transmission_vector().
void conductivity_matrix | ( | long | lcid, | |
long | eid, | |||
long | ri, | |||
long | ci, | |||
matrix & | km | |||
) |
function computes conductivity matrix of 1D problems for one transported matter finite element with quadratic approximation functions
lcid | - number of load case | |
eid | - number of element | |
ri,ci | - row and column indices of the computed block in the resulting matrix | |
km | - conductivity matrix |
JK, 31.3.2002
Definition at line 395 of file quadbartax.cpp.
References matrix::a, approx(), bdbj(), bdbjac(), bf_matrix(), dofe, transtop::elements, fillm(), gauss_points(), transcrsec::give_area(), transtop::give_elemnodes(), transtop::give_node_coord1d(), grad_matrix(), intordkm, elementt::ipp, transmat::matcond(), transmat::matcond2(), ncomp, nne, nodes, reallocm(), probdesct::savemode, Tc, Tm, Tp, elementt::transi, transmission_matrix(), and Tt.
Referenced by res_conductivity_matrix().
void convection_vector | ( | vector & | f, | |
long | lcid, | |||
long | eid, | |||
long | leid, | |||
long | ri, | |||
long | ci | |||
) |
function computes contribution to the convection vector
{Gamma_2} N^T N dGamma * nodal_flux_values
f | - convection 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, 8.10.2001
Definition at line 771 of file quadbartax.cpp.
References matrix::a, addv(), approx(), bf_matrix(), dofe, loadcaset::elemload, fillm(), transcrsec::give_area(), loadelt::give_bc(), transtop::give_elemnodes(), transtop::give_node_coord1d(), loadelt::give_nodval(), transbclc::lc, mxv(), nne, nnj(), nodes, nodval(), Tb, Tc, and Tt.
Referenced by res_convection_vector().
function assembles gradient of matrix of base functions
gm | - gradient matrix | |
x | - array containing node coordinates | |
xi | - natural coordinate |
JK, 31.3.2002
Definition at line 370 of file quadbartax.cpp.
References vector::a, derivatives_1d(), dx_bf_quad_1d(), and nne.
Referenced by conductivity_matrix(), internal_fluxes(), and intpointgrad().
void internal_fluxes | ( | long | lcid, | |
long | eid, | |||
vector & | ifl | |||
) |
function computes internal fluxes of 1D problems for one transported matter finite element with quadratic approximation functions
lcid | - number of load case | |
eid | - number of element | |
ifl | - vector of internal fluxes |
JK, 31.3.2002
Definition at line 832 of file quadbartax.cpp.
References addv(), approx(), cmulv(), transmat::computenlfluxes(), dofe, transtop::elements, gauss_points(), transcrsec::give_area(), transtop::give_elemnodes(), transtop::give_node_coord1d(), transmat::givefluxes(), grad_matrix(), intordkm, elementt::ipp, mtxv(), ncomp, nne, nodes, probdesct::savemode, Tc, Tm, Tp, and Tt.
Referenced by res_internal_fluxes().
void intpointgrad | ( | long | eid | ) |
function computes values in integration points from nodal values
eid | - element id |
JK, 31.3.2003
Definition at line 216 of file quadbartax.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 approximates nodal values of array other to integration points
eid | - element id |
JK, 17.9.2005
Definition at line 281 of file quadbartax.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 | ) |
function computes values in integration points from nodal values
eid | - element id |
JK, 31.3.2003
Definition at line 157 of file quadbartax.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, ntm, ordering, reallocv(), probdesct::savemode, Tm, Tp, and Tt.
Referenced by intpointvalues().
void nod_others | ( | long | lcid, | |
long | eid, | |||
long | ri, | |||
long | ci | |||
) |
function computes other values in nodes of element
lcid | - load case id | |
eid | - element id |
10.5.2002
Definition at line 1249 of file quadbartax.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, ntm, other, reallocv(), probdesct::savemode, Tm, Tp, and Tt.
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, 31.3.2002
Definition at line 526 of file quadbartax.cpp.
References matrix::a, addv(), approx(), bf_matrix(), dofe, fillm(), gauss_points(), transcrsec::give_area(), transtop::give_elemnodes(), transtop::give_node_coord1d(), intordcm, jac_1d(), mxv(), nne, nnj(), nodes, 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 1220 of file quadbartax.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 914 of file quadbartax.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 887 of file quadbartax.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 | - element id |
JK, 6.1.2002
Definition at line 959 of file quadbartax.cpp.
References vector::a, cmulv(), codnum(), convection_vector(), dofe, locglob(), and reallocv().
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 1036 of file quadbartax.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().
function assembles resulting element source vector
sv | - resulting source vector of one element | |
lcid | - load case id | |
eid | - element id |
JK, 6.1.2002
Definition at line 1015 of file quadbartax.cpp.
References vector::a, codnum(), dofe, locglob(), quantity_source_vector(), and reallocv().
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 | - element id |
JK, 6.1.2002
Definition at line 985 of file quadbartax.cpp.
References vector::a, codnum(), dofe, transtop::elements, locglob(), ntm, reallocv(), elementt::transi, transmission_vector(), and Tt.
Referenced by elem_newton_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 1076 of file quadbartax.cpp.
References approx(), f, gauss_points(), transcrsec::give_area(), transtop::give_elemnodes(), transtop::give_node_coord1d(), jac_1d(), nne, nodes, Tc, and Tt.
Referenced by elem_total_integral().
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 | - number of element | |
ri,ci | - row and column indices | |
km | - part of the conductivity matrix |
JK, 31.3.2002 TKr, 30.1.2004 - new added
Definition at line 579 of file quadbartax.cpp.
References matrix::a, approx(), bf_matrix(), dofe, loadelt::eid, transtop::elements, loadcaset::elemload, transcrsec::give_area(), loadelt::give_bc(), transtop::give_elemnodes(), transtop::give_node_coord1d(), loadelt::give_trc(), elementt::ipp, transbclc::lc, matrix::m, matrix::n, loadcaset::neb, nne, nnj(), nodes, probdesct::savemode, Tb, Tc, Tm, Tp, transmat::transmission_transcoeff(), and Tt.
Referenced by conductivity_matrix().
void transmission_vector | ( | vector & | tmv, | |
long | lcid, | |||
long | eid, | |||
long | leid, | |||
long | ri, | |||
long | ci | |||
) |
function computes contributions to the transmission vector
{Gamma_3} N^T c_{tr} N dGamma * nodal_external_value
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) |
JK, 5.10.2001 TKr, 30.1.2002 - new added
Definition at line 671 of file quadbartax.cpp.
References matrix::a, addv(), approx(), bf_matrix(), dofe, transtop::elements, loadcaset::elemload, fillm(), transcrsec::give_area(), loadelt::give_bc(), transtop::give_elemnodes(), transtop::give_node_coord1d(), loadelt::give_nodval(), loadelt::give_trc(), loadelt::give_trr(), elementt::ipp, transbclc::lc, mxv(), nne, nnj(), nodes, nodval(), probdesct::savemode, Tb, Tc, Tm, Tp, transmat::transmission_nodval(), and Tt.
Referenced by res_transmission_vector().
long** dofe |
numbers of DOFs for particular problems
Definition at line 47 of file quadbartax.h.
Referenced by boundary_flux(), capacity_matrix(), conductivity_matrix(), convection_vector(), internal_fluxes(), intpointgrad(), intpointval(), quadbartax(), quantity_source_vector(), res_boundary_flux(), res_capacity_matrix(), res_conductivity_matrix(), res_convection_vector(), res_internal_fluxes(), res_quantity_source_vector(), res_transmission_vector(), transmission_matrix(), transmission_vector(), and ~quadbartax().
long** intordcm |
orders of integration of capacity matrices
Definition at line 68 of file quadbartax.h.
Referenced by capacity_matrix(), transtop::give_intordcm(), intpointgrad(), intpointother(), intpointval(), quadbartax(), quantity_source_vector(), and ~quadbartax().
long** intordkm |
orders of integration of conductivity matrices
Definition at line 66 of file quadbartax.h.
Referenced by capacity_matrix(), conductivity_matrix(), transtop::give_intordkm(), internal_fluxes(), intpointgrad(), intpointother(), intpointval(), quadbartax(), and ~quadbartax().
long napfun |
number of approximated functions
Definition at line 58 of file quadbartax.h.
Referenced by quadbartax().
long ncomp |
problem dimension
Definition at line 60 of file quadbartax.h.
Referenced by conductivity_matrix(), transtop::give_ncomp(), internal_fluxes(), intpointgrad(), and quadbartax().
long ndofe |
total number of DOFs on the element
Definition at line 45 of file quadbartax.h.
Referenced by transtop::give_ndofe(), intpointgrad(), intpointval(), nod_others(), quadbartax(), and res_internal_fluxes().
long ned |
number of edges
Definition at line 54 of file quadbartax.h.
Referenced by transtop::give_ned(), and quadbartax().
long nen |
number of end nodes
Definition at line 51 of file quadbartax.h.
Referenced by transtop::give_nbobjects(), and quadbartax().
long** nip |
number of integration points
Definition at line 62 of file quadbartax.h.
Referenced by transtop::give_nip(), quadbartax(), and ~quadbartax().
long nne |
number of nodes on one element
Definition at line 49 of file quadbartax.h.
Referenced by approx(), boundary_flux(), capacity_matrix(), codnum(), conductivity_matrix(), convection_vector(), transtop::give_nne(), grad_matrix(), internal_fluxes(), intpointgrad(), intpointother(), intpointval(), nod_others(), quadbartax(), quantity_source_vector(), total_integral(), transmission_matrix(), and transmission_vector().
long nned |
number of nodes on one edge
Definition at line 56 of file quadbartax.h.
Referenced by transtop::give_nned(), and quadbartax().
long ntm |
number of transported matters
Definition at line 43 of file quadbartax.h.
Referenced by intpointval(), nod_others(), quadbartax(), res_boundary_flux(), res_capacity_matrix(), res_conductivity_matrix(), res_internal_fluxes(), res_transmission_vector(), and ~quadbartax().
long** ordering |
unknown ordering
Definition at line 64 of file quadbartax.h.
Referenced by codnum(), intpointgrad(), intpointval(), quadbartax(), and ~quadbartax().