added subdomain support in Mesh class, CalculateLaplaceMult implementation
This commit is contained in:
parent
90a0e83c35
commit
2e887c04bc
13 changed files with 4336 additions and 69057 deletions
|
|
@ -340,6 +340,19 @@ class FEM_Matrix: public CRS_Matrix
|
|||
void Derive_Matrix_Pattern_slow();
|
||||
|
||||
|
||||
/**
|
||||
* Calculates the entries of f.e. stiffness matrix for the Laplace operator
|
||||
* for multiple domains with different conductivities
|
||||
* and load/rhs vector @p f.
|
||||
* No memory is allocated.
|
||||
*
|
||||
* @param[in,out] f (preallocated) rhs/load vector
|
||||
*/
|
||||
void CalculateLaplaceMult(std::vector<double> &f);
|
||||
|
||||
double Thermal_coefficient(const int subdomain);
|
||||
|
||||
|
||||
/**
|
||||
* Calculates the entries of f.e. stiffness matrix for the Laplace operator
|
||||
* and load/rhs vector @p f.
|
||||
|
|
@ -647,6 +660,17 @@ class BisectIntDirichlet: public BisectInterpolation
|
|||
*/
|
||||
void CalcElem(int const ial[3], double const xc[], double ske[3][3], double fe[3]);
|
||||
|
||||
/**
|
||||
* Calculates the element stiffness matrix @p ske
|
||||
* of one triangular element with linear shape functions
|
||||
* for specific thermal conductivity in subdomain
|
||||
* @param[in] ial node indices of the three element vertices
|
||||
* @param[in] xc vector of node coordinates with x(2*k,2*k+1) as coordinates of node k
|
||||
* @param[in] lambda thermal conductivity of element
|
||||
* @param[out] ske element stiffness matrix
|
||||
*/
|
||||
void CalcElemSpecific(int const ial[3], double const xc[], double const lambda, double ske[3][3]);
|
||||
|
||||
/**
|
||||
* Calculates the element mass matrix @p ske.
|
||||
* of one triangular element with linear shape functions.
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue