![]() |
LifeV
|
File containing the procedures for the local assembly of the differential operators. More...
#include <string>#include <iostream>#include <Epetra_LAPACK.h>#include <Epetra_BLAS.h>#include <Epetra_SerialDenseMatrix.h>#include <Epetra_SerialDenseVector.h>#include <lifev/core/array/MatrixElemental.hpp>#include <lifev/core/array/VectorElemental.hpp>#include <lifev/core/LifeV.hpp>#include <lifev/core/fem/FESpace.hpp>#include <lifev/core/fem/CurrentFEManifold.hpp>#include <lifev/core/fem/CurrentFE.hpp>#include <lifev/core/fem/DOF.hpp>#include <lifev/core/array/VectorEpetra.hpp>#include <boost/shared_ptr.hpp>
Include dependency graph for fsi_blocks/solver/AssemblyElementalStructure.hpp:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Namespaces | |
| LifeV | |
| Default Physical Solver. | |
| LifeV::AssemblyElementalStructure | |
Functions | |
| template<typename FunctorType , typename MeshType , typename MapType > | |
| void | saveVectorAccordingToFunctor (const std::shared_ptr< FESpace< MeshType, MapType > > dispFESpace, const FunctorType functor, const VectorEpetra &originVector, const std::shared_ptr< VectorEpetra > statusVector, const std::shared_ptr< VectorEpetra > saveVector, const UInt offset) |
| Save displacement according to a functor. More... | |
| template<typename FunctorType , typename MeshType , typename MapType > | |
| void | saveBooleanVectorAccordingToFunctor (const std::shared_ptr< FESpace< MeshType, MapType > > dispFESpace, const FunctorType &functor, const std::shared_ptr< VectorEpetra > originVector, std::shared_ptr< VectorEpetra > saveVector, const UInt offset) |
| void | computeGradientLocalDisplacement (boost::multi_array< Real, 3 > &gradientLocalDisplacement, const VectorElemental &uk_loc, const CurrentFE &fe) |
| Gradient of the displacement on the local element. More... | |
| void | computeLocalDeformationGradient (const VectorElemental &uk_loc, std::vector< Epetra_SerialDenseMatrix > &tensorF, const CurrentFE &fe) |
| Deformation Gradient on the local element. More... | |
| void | computeLocalDeformationGradientWithoutIdentity (const VectorElemental &uk_loc, std::vector< Epetra_SerialDenseMatrix > &tensorF, const CurrentFE &fe) |
| Gradient on the local element. More... | |
| void | stiff_derdiv (Real coef, const boost::multi_array< Real, 3 > &gradientLocalDisplacement, MatrixElemental &elmat, const CurrentFE &fe) |
| METHODS SHARED BETWEEN LINEAR ELASTIC MODEL AND ST.VENANT-KIRCHHOFF MODEL These two methods are implemented in AssemblyElemental.cpp. More... | |
| void | stiff_dergradbis (Real coef, const boost::multi_array< Real, 3 > &gradientLocalDisplacement, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary second term of the nonlinear stiffness matrix for St.Venant-Kirchhoff model (see the reference) More... | |
| void | stiff_divgrad (Real coef, const VectorElemental &uk_loc, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary third term of the nonlinear stiffness matrix for St.Venant-Kirchhoff model (see the reference) More... | |
| void | stiff_gradgrad (Real coef, const VectorElemental &uk_loc, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary fourth term of the nonlinear stiffness matrix for St.Venant-Kirchhoff model (see the reference) More... | |
| void | stiff_dergrad_gradbis (Real coef, const boost::multi_array< Real, 3 > &gradientLocalDisplacement, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary fifth term of the nonlinear stiffness matrix for St.Venant-Kirchhoff model (see the reference) More... | |
| void | stiff_dergrad_gradbis_Tr (Real coef, const boost::multi_array< Real, 3 > &gradientLocalDisplacement, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary fifth-2 term of the nonlinear stiffness matrix for St.Venant-Kirchhoff model (see the reference) More... | |
| void | stiff_gradgradTr_gradbis (Real coef, const VectorElemental &uk_loc, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary sixth term of the nonlinear stiffness matrix for St.Venant-Kirchhoff model (see the reference) More... | |
| void | stiff_dergrad (Real coef, const boost::multi_array< Real, 3 > &gradientLocalDisplacement, MatrixElemental &elmat, const CurrentFE &fe) |
| METHODS FOR THE JACOBIAN MATRIX. More... | |
| void | stiff_divgrad_2 (Real coef, const boost::multi_array< Real, 3 > &gradientLocalDisplacement, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary second term of the Jacobian matrix for the nonlinear stiffness matrix of the St.Venant-Kirchhoff model (see the reference) More... | |
| void | stiff_gradgrad_2 (Real coef, const boost::multi_array< Real, 3 > &gradientLocalDisplacement, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary third term of the Jacobian matrix for the nonlinear stiffness matrix of the St.Venant-Kirchhoff model (see the reference) More... | |
| void | stiff_dergrad_gradbis_2 (Real coef, const boost::multi_array< Real, 3 > &gradientLocalDisplacement, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary fourth term of the Jacobian matrix for the nonlinear stiffness matrix of the St.Venant-Kirchhoff model (see the reference) More... | |
| void | stiff_dergrad_gradbis_Tr_2 (Real coef, const boost::multi_array< Real, 3 > &gradientLocalDisplacement, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary fifth term of the Jacobian matrix for the nonlinear stiffness matrix of the St.Venant-Kirchhoff model (see the reference) More... | |
| void | stiff_gradgradTr_gradbis_2 (Real coef, const boost::multi_array< Real, 3 > &gradientLocalDisplacement, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary sixth term of the Jacobian matrix for the nonlinear stiffness matrix of the St.Venant-Kirchhoff model (see the reference) More... | |
| void | stiff_gradgradTr_gradbis_3 (Real coef, const VectorElemental &uk_loc, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary seventh term of the Jacobian matrix for the nonlinear stiffness matrix of the St.Venant-Kirchhoff model (see the reference) More... | |
| void | source_Pvol (Real coef, const boost::multi_array< Real, 3 > &CofFk, const std::vector< Real > &Jk, VectorElemental &elvec, const CurrentFE &fe) |
| METHODS SHARED BETWEEN NEO-HOOKEAN AND EXPONENTIAL MODELS The volumetric part for Neo-Hookean and Exponential models is the same Methods for the volumetric part of the stiffness vector. More... | |
| void | stiff_Jac_Pvol_1term (Real coef, const boost::multi_array< Real, 3 > &CofFk, const std::vector< Real > &Jk, MatrixElemental &elmat, const CurrentFE &fe) |
| Methods for the volumetric part of the Jacobian matrix. More... | |
| void | stiff_Jac_Pvol_2term (Real coef, const boost::multi_array< Real, 3 > &CofFk, const std::vector< Real > &Jk, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary second volumetric term of the nonlinear Jacobian matrix of the Neo-Hookean and Exponential models (see the reference) More... | |
| void | source_P1iso_NH (Real coef, const boost::multi_array< Real, 3 > &CofFk, const boost::multi_array< Real, 3 > &Fk, const std::vector< Real > &Jk, const std::vector< Real > &Ic_isok, VectorElemental &elvec, const CurrentFE &fe) |
| METHODS FOR NEO-HOOKEAN MODEL Methods for the isochoric part of the stiffness vector. More... | |
| void | computeInvariantsRightCauchyGreenTensor (std::vector< LifeV::Real > &invariants, const Epetra_SerialDenseMatrix &tensorF, Epetra_SerialDenseMatrix &cofactorF) |
| METHODS FOR TENSORIAL CALCULUS In this part of the namespace, the methods to perform basics operations on tensors are defined. More... | |
| void | computeInvariantsRightCauchyGreenTensor (std::vector< LifeV::Real > &invariants, const Epetra_SerialDenseMatrix &tensorF) |
| Computation of the Right Cauchy Green tensor given the tensor F. More... | |
| void | computeCauchyStressTensor (Epetra_SerialDenseMatrix &cauchy, Epetra_SerialDenseMatrix &firstPiola, LifeV::Real det, Epetra_SerialDenseMatrix &tensorF) |
| void | computeEigenvalues (const Epetra_SerialDenseMatrix &cauchy, std::vector< LifeV::Real > &eigenvaluesR, std::vector< LifeV::Real > &eigenvaluesI) |
| void | stiff_Jac_P1iso_NH_1term (Real coef, const boost::multi_array< Real, 3 > &CofFk, const boost::multi_array< Real, 3 > &Fk, const std::vector< Real > &Jk, MatrixElemental &elmat, const CurrentFE &fe) |
| Methods for the isochoric part of the Jacobian matrix. More... | |
| void | stiff_Jac_P1iso_NH_2term (Real coef, const boost::multi_array< Real, 3 > &CofFk, const std::vector< Real > &Jk, const std::vector< Real > &Ic_isok, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary second nonlinear isochoric Jacobian matrix for Neo-Hookean model (see the reference) More... | |
| void | stiff_Jac_P1iso_NH_3term (Real coef, const std::vector< Real > &Jk, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary third nonlinear isochoric Jacobian matrix for Neo-Hookean model (see the reference) More... | |
| void | stiff_Jac_P1iso_NH_4term (Real coef, const boost::multi_array< Real, 3 > &CofFk, const boost::multi_array< Real, 3 > &Fk, const std::vector< Real > &Jk, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary fourth nonlinear isochoric Jacobian matrix for Neo-Hookean model (see the reference) More... | |
| void | stiff_Jac_P1iso_NH_5term (Real coef, const boost::multi_array< Real, 3 > &CofFk, const std::vector< Real > &Jk, const std::vector< Real > &Ic_isok, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary fifth nonlinear isochoric Jacobian matrix for Neo-Hookean model (see the reference) More... | |
| void | source_P1iso_Exp (Real coef, Real coefExp, const boost::multi_array< Real, 3 > &CofFk, const boost::multi_array< Real, 3 > &Fk, const std::vector< Real > &Jk, const std::vector< Real > &Ic_isok, VectorElemental &elvec, const CurrentFE &fe) |
| METHODS FOR EXPONENTIAL MODEL Methods for the isochoric part of the stiffness vector. More... | |
| void | stiff_Jac_P1iso_Exp_1term (Real coef, Real coefExp, const boost::multi_array< Real, 3 > &CofFk, const boost::multi_array< Real, 3 > &Fk, const std::vector< Real > &Jk, const std::vector< Real > &Ic_isok, MatrixElemental &elmat, const CurrentFE &fe) |
| Methods for the isochoric part of the Jacobian matrix. More... | |
| void | stiff_Jac_P1iso_Exp_2term (Real coef, Real coefExp, const boost::multi_array< Real, 3 > &Fk, const std::vector< Real > &Jk, const std::vector< Real > &Ic_isok, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary second nonlinear isochoric Jacobian matrix for Exponential model (see the reference) More... | |
| void | stiff_Jac_P1iso_Exp_3term (Real coef, Real coefExp, const boost::multi_array< Real, 3 > &CofFk, const std::vector< Real > &Jk, const std::vector< Real > &Ic_isok, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary third nonlinear isochoric Jacobian matrix for Exponential model (see the reference) More... | |
| void | stiff_Jac_P1iso_Exp_4term (Real coef, Real coefExp, const boost::multi_array< Real, 3 > &CofFk, const boost::multi_array< Real, 3 > &Fk, const std::vector< Real > &Jk, const std::vector< Real > &Ic_isok, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary fourth nonlinear isochoric Jacobian matrix for Exponential model (see the reference) More... | |
| void | stiff_Jac_P1iso_Exp_5term (Real coef, Real coefExp, const std::vector< Real > &Jk, const std::vector< Real > &Ic_isok, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary fifth nonlinear isochoric Jacobian matrix for Exponential model (see the reference) More... | |
| void | stiff_Jac_P1iso_Exp_6term (Real coef, Real coefExp, const boost::multi_array< Real, 3 > &CofFk, const std::vector< Real > &Jk, const std::vector< Real > &Ic_isok, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary sixth nonlinear isochoric Jacobian matrix for Exponential model (see the reference) More... | |
| void | source_P1iso_VKPenalized (Real lambda, Real mu, const boost::multi_array< Real, 3 > &FkMinusTransposed, const boost::multi_array< Real, 3 > &Fk, const std::vector< Real > &Ic_isok, const std::vector< Real > &Ic_k, const std::vector< Real > &Jack_k, VectorElemental &elvec, const CurrentFE &fe) |
| METHOD FOR THE ST. More... | |
| void | source_P2iso_VKPenalized (Real mu, const boost::multi_array< Real, 3 > &FkMinusTransposed, const boost::multi_array< Real, 3 > &FkCk, const std::vector< Real > &Ic_Squared, const std::vector< Real > &Jk, VectorElemental &elvec, const CurrentFE &fe) |
| Elementary nonlinear isochoric stiffness vector for St. Venant-Kirchhoff Penalized model. More... | |
| void | stiff_Jac_P1iso_VKPenalized_0term (Real lambda, Real mu, const boost::multi_array< Real, 3 > &FkMinusTransposed, const boost::multi_array< Real, 3 > &Fk, const std::vector< Real > &Jk, const std::vector< Real > &Ic_k, const std::vector< Real > &IcIso_k, MatrixElemental &elmat, const CurrentFE &fe) |
| Methdos for the Jacobian of the St. More... | |
| void | stiff_Jac_P1iso_VKPenalized_1term (Real coeff, const boost::multi_array< Real, 3 > &FkMinusTransposed, const boost::multi_array< Real, 3 > &Fk, const std::vector< Real > &Jk, const std::vector< Real > &Ic_k, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary first nonlinear isochoric Jacobian matrix for VK-Penalized model (see the reference) More... | |
| void | stiff_Jac_P1iso_VKPenalized_2term (Real coef, const boost::multi_array< Real, 3 > &FkMinusTransposed, const std::vector< Real > &Jk, const std::vector< Real > &Ic_k, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary third nonlinear isochoric Jacobian matrix for VK-Penalized model (see the reference) More... | |
| void | stiff_Jac_P1iso_VKPenalized_3term (Real coef, const boost::multi_array< Real, 3 > &Fk, const std::vector< Real > &Jk, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary second nonlinear isochoric Jacobian matrix for VK-Penalized model (see the reference) More... | |
| void | stiff_Jac_P1iso_VKPenalized_4term (Real coef, const boost::multi_array< Real, 3 > &FkMinusTransposed, const boost::multi_array< Real, 3 > &Fk, const std::vector< Real > &Jk, const std::vector< Real > &Ic_k, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary fourth nonlinear isochoric Jacobian matrix for VK-Penalized model (see the reference) More... | |
| void | stiff_Jac_P1iso_VKPenalized_5term (Real coef, Real secondCoef, const std::vector< Real > &Jk, const std::vector< Real > &Ic_isok, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary fifth nonlinear isochoric Jacobian matrix for VK-Penalized model (see the reference) More... | |
| void | stiff_Jac_P1iso_VKPenalized_6term (Real coef, Real secondCoef, const std::vector< Real > &Jk, const std::vector< Real > &Ic_isok, const boost::multi_array< Real, 3 > &Fk, const boost::multi_array< Real, 3 > &FkMinusTransposed, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary sixth nonlinear isochoric Jacobian matrix for VK-Penalized model (see the reference) More... | |
| void | stiff_Jac_P1iso_VKPenalized_7term (Real coef, Real secondCoef, const boost::multi_array< Real, 3 > &FkMinusTransposed, const std::vector< Real > &Ic_isok, const std::vector< Real > &Ic_k, const std::vector< Real > &Jk, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary seventh nonlinear isochoric Jacobian matrix for VK-Penalized model (see the reference) More... | |
| void | stiff_Jac_P1iso_VKPenalized_8term (Real coef, const std::vector< Real > &Jack_k, const boost::multi_array< Real, 3 > &FkMinusTransposed, const boost::multi_array< Real, 3 > &FkCk, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary seventh nonlinear isochoric Jacobian matrix for VK-Penalized model (see the reference) More... | |
| void | stiff_Jac_P1iso_VKPenalized_9term (Real coef, const std::vector< Real > &Jack_k, const std::vector< Real > &Ic_kSquared, const boost::multi_array< Real, 3 > &FkMinusTransposed, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary seventh nonlinear isochoric Jacobian matrix for VK-Penalized model (see the reference) More... | |
| void | stiff_Jac_P1iso_VKPenalized_10term (Real coef, const std::vector< Real > &Jack_k, const boost::multi_array< Real, 3 > &Ck, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary eigth nonlinear isochoric Jacobian matrix for VK-Penalized model (see the reference) More... | |
| void | stiff_Jac_P1iso_VKPenalized_11term (Real coef, const std::vector< Real > &Jk, const boost::multi_array< Real, 3 > &Fk, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary sixth nonlinear isochoric Jacobian matrix for VK-Penalized model (see the reference) More... | |
| void | stiff_Jac_P1iso_VKPenalized_12term (Real coef, const std::vector< Real > &Jk, const boost::multi_array< Real, 3 > &Fk, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary tenth nonlinear isochoric Jacobian matrix for VK-Penalized model (see the reference) More... | |
| void | stiff_Jac_P1iso_VKPenalized_13term (Real coef, const std::vector< Real > &Jk, const std::vector< Real > &Ic_kSquared, const boost::multi_array< Real, 3 > &FkMinusTransposed, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary eleventh nonlinear isochoric Jacobian matrix for VK-Penalized model (see the reference) More... | |
| void | stiff_Jac_P1iso_VKPenalized_14term (Real coef, const std::vector< Real > &Jk, const boost::multi_array< Real, 3 > &FkCk, const boost::multi_array< Real, 3 > &FkMinusTransposed, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary twelveth nonlinear isochoric Jacobian matrix for VK-Penalized model (see the reference) More... | |
| void | source_P1iso_SecondOrderExponential (Real coef, Real coefExp, const boost::multi_array< Real, 3 > &CofFk, const boost::multi_array< Real, 3 > &Fk, const std::vector< Real > &Jk, const std::vector< Real > &trCisok, VectorElemental &elvec, const CurrentFE &fe) |
| Methods for second order exponential law Methods for the first Piola-Kirchhoff tensor. More... | |
| void | stiff_Jac_P1iso_SecondOrderExp_1term (Real coef, Real coefExp, const boost::multi_array< Real, 3 > &CofFk, const boost::multi_array< Real, 3 > &Fk, const std::vector< Real > &Jk, const std::vector< Real > &Ic_isok, MatrixElemental &elmat, const CurrentFE &fe) |
| Methods for the Jacobian matrix Elementary first nonlinear isochoric Jacobian matrix for Second Order Exponential model (see the reference) More... | |
| void | stiff_Jac_P1iso_SecondOrderExp_2term (Real coef, Real coefExp, const boost::multi_array< Real, 3 > &Fk, const std::vector< Real > &Jk, const std::vector< Real > &Ic_isok, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary second nonlinear isochoric Jacobian matrix for Second Order Exponential model (see the reference) More... | |
| void | stiff_Jac_P1iso_SecondOrderExp_3term (Real coef, Real coefExp, const boost::multi_array< Real, 3 > &CofFk, const std::vector< Real > &Jk, const std::vector< Real > &Ic_isok, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary third nonlinear isochoric Jacobian matrix for Second Order Exponential model (see the reference) More... | |
| void | stiff_Jac_P1iso_SecondOrderExp_4term (Real coef, Real coefExp, const boost::multi_array< Real, 3 > &CofFk, const boost::multi_array< Real, 3 > &Fk, const std::vector< Real > &Jk, const std::vector< Real > &Ic_isok, const std::vector< Real > &Ic_k, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary fourth nonlinear isochoric Jacobian matrix for Second Order Exponential model (see the reference) More... | |
| void | stiff_Jac_P1iso_SecondOrderExp_5term (Real coef, Real coefExp, const std::vector< Real > &Jk, const std::vector< Real > &Ic_isok, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary fifth nonlinear isochoric Jacobian matrix for Second Order Exponential model (see the reference) More... | |
| void | stiff_Jac_P1iso_SecondOrderExp_6term (Real coef, Real coefExp, const boost::multi_array< Real, 3 > &CofFk, const std::vector< Real > &Jk, const std::vector< Real > &Ic_isok, MatrixElemental &elmat, const CurrentFE &fe) |
| Elementary sixth nonlinear isochoric Jacobian matrix for Second Order Exponential model (see the reference) More... | |
File containing the procedures for the local assembly of the differential operators.
All the methods are described in the report StructuralSolver framework in LifeV: Description and Usage
Definition in file fsi_blocks/solver/AssemblyElementalStructure.hpp.