quadbart Class Reference

#include <quadbart.h>

List of all members.

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_comp (long lcid, long eid, long ri, long ci)
 quadbart (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)
void res_volume_rhs_vector (vector &f, long eid, long lcid)
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)
void volume_rhs_vector (long lcid, long eid, long ri, long ci, vector &vrhs)
 ~quadbart (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

Detailed Description

class quadbart defines onedimensional element with quadratic approximation functions

Definition at line 9 of file quadbart.h.


Constructor & Destructor Documentation

quadbart ( void   ) 
~quadbart ( void   ) 

Definition at line 106 of file quadbart.cpp.

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


Member Function Documentation

double approx ( double  xi,
vector nodval 
)

function approximates function defined by nodal values

Parameters:
xi - natural coordinate on element
nodval - nodal values

JK, 31.3.2002

Definition at line 140 of file quadbart.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(), barelc::intpointval(), quantity_source_vector(), total_integral(), transmission_matrix(), transmission_vector(), and volume_rhs_vector().

void bf_matrix ( matrix n,
double  xi 
)
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

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 1204 of file quadbart.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

Parameters:
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 469 of file quadbart.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 
)
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

Parameters:
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 401 of file quadbart.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

Parameters:
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 766 of file quadbart.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().

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

function assembles gradient of matrix of base functions

Parameters:
gm - gradient matrix
x - array containing node coordinates
xi - natural coordinate

JK, 31.3.2002

Definition at line 376 of file quadbart.cpp.

References vector::a, derivatives_1d(), dx_bf_quad_1d(), and nne.

Referenced by conductivity_matrix(), internal_fluxes(), intpointgrad(), barelc::intpointgrad(), barelc::lower_internal_fluxes(), and volume_rhs_vector().

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

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

JK, 31.3.2002

Definition at line 824 of file quadbart.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

Parameters:
eid - element id

JK, 31.3.2003

Definition at line 219 of file quadbart.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

Parameters:
eid - element id

JK, 17.9.2005

Definition at line 286 of file quadbart.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

Parameters:
eid - element id

JK, 31.3.2003

Definition at line 158 of file quadbart.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_comp ( long  lcid,
long  eid,
long  ri,
long  ci 
)

function computes other values in nodes of element

Parameters:
lcid - load case id
eid - element id

TKr, 23/02/2011

Definition at line 1325 of file quadbart.cpp.

References vector::a, ivector::a, allocv(), destrv(), transtop::elements, elemvalues(), transtop::give_code_numbers(), transtop::give_elemnodes(), transmat::givecompother(), transmat::givencompother(), h(), elementt::ipp, ndofe, nne, nod, transtop::nodes, ntm, other, 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, 31.3.2002

Definition at line 527 of file quadbart.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

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 1294 of file quadbart.cpp.

References vector::a, allocv(), boundary_flux(), codnum(), destrv(), dofe, transtop::elements, locglob(), ntm, 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 995 of file quadbart.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 876 of file quadbart.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 - element id

JK, 6.1.2002

Definition at line 1038 of file quadbart.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

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

JK, 6.1.2002

Definition at line 1115 of file quadbart.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_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
lcid - load case id
eid - element id

JK, 6.1.2002

Definition at line 1094 of file quadbart.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

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

JK, 6.1.2002

Definition at line 1064 of file quadbart.cpp.

References vector::a, codnum(), dofe, transtop::elements, locglob(), ntm, 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, 23/02/2011

Definition at line 970 of file quadbart.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 1155 of file quadbart.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

Parameters:
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 578 of file quadbart.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

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)

JK, 5.10.2001 TKr, 30.1.2002 - new added

Definition at line 668 of file quadbart.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().

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, 23/02/2011

Definition at line 908 of file quadbart.cpp.

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

Referenced by res_volume_rhs_vector().


Member Data Documentation

long** dofe
long** intordcm

orders of integration of capacity matrices

Definition at line 71 of file quadbart.h.

Referenced by capacity_matrix(), transtop::give_intordcm(), intpointgrad(), intpointother(), intpointval(), quadbart(), quantity_source_vector(), and ~quadbart().

long** intordkm

orders of integration of conductivity matrices

Definition at line 69 of file quadbart.h.

Referenced by capacity_matrix(), conductivity_matrix(), transtop::give_intordkm(), internal_fluxes(), intpointgrad(), intpointother(), intpointval(), quadbart(), volume_rhs_vector(), and ~quadbart().

long napfun

number of approximated functions

Definition at line 61 of file quadbart.h.

Referenced by quadbart().

long ncomp

problem dimension

Definition at line 63 of file quadbart.h.

Referenced by conductivity_matrix(), transtop::give_ncomp(), internal_fluxes(), intpointgrad(), quadbart(), and volume_rhs_vector().

long ndofe

total number of DOFs on the element

Definition at line 48 of file quadbart.h.

Referenced by barelc::barelc(), transtop::give_ndofe(), intpointgrad(), intpointval(), nod_others_comp(), quadbart(), and res_internal_fluxes().

long ned

number of edges

Definition at line 57 of file quadbart.h.

Referenced by transtop::give_ned(), and quadbart().

long nen

number of end nodes

Definition at line 54 of file quadbart.h.

Referenced by transtop::give_nbobjects(), and quadbart().

long** nip

number of integration points

Definition at line 65 of file quadbart.h.

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

long nne
long nned

number of nodes on one edge

Definition at line 59 of file quadbart.h.

Referenced by transtop::give_nned(), and quadbart().

long ntm
long** ordering

unknown ordering

Definition at line 67 of file quadbart.h.

Referenced by codnum(), intpointgrad(), intpointval(), quadbart(), and ~quadbart().


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

Generated by  doxygen 1.6.2