Commit 230f73e1 authored by Paolo Tricerri's avatar Paolo Tricerri
Browse files

indented all the material classes as Tiziano suggested

Spliited long lines (Simone's review)
changed velocity() and acceleration() to firstDerivative and secondDerivative
parent 142d533d
......@@ -390,7 +390,7 @@ public:
//! Return the current velocity
virtual feVectorType velocity() const=0;
virtual feVectorType firstDerivative() const=0;
//!Return the velocity
/*!
......@@ -399,7 +399,7 @@ public:
this method is used for example in FSI to return the value of solid
in the internal loop
*/
feVectorType velocity(const feVector_Type& u) const;
feVectorType firstDerivative(const feVector_Type& u) const;
//! Return the velocity based on given vector on the next time step
......@@ -409,11 +409,11 @@ public:
this method is used for example in FSI to return the current mesh velocity
besed on the currently computed mesh displacement
*/
feVectorType nextVelocity( feVectorType const& newEntry ) const;
feVectorType nextFirstDerivative( feVectorType const& newEntry ) const;
//!Return the current acceleration
virtual feVectorType acceleration() const=0;
virtual feVectorType secondDerivative() const=0;
//! Return the accelerate
/*!
......@@ -651,7 +651,7 @@ TimeAdvance<feVectorType>::singleElement( const UInt& i) const
template<typename feVectorType>
feVectorType
TimeAdvance<feVectorType>::velocity( const feVector_Type& u ) const
TimeAdvance<feVectorType>::firstDerivative( const feVector_Type& u ) const
{
feVector_Type vel( u );
vel *= M_alpha[ 0 ] /M_timeStep;
......@@ -661,7 +661,7 @@ TimeAdvance<feVectorType>::velocity( const feVector_Type& u ) const
template<typename feVectorType>
feVectorType
TimeAdvance<feVectorType>::nextVelocity(feVectorType const& newEntry) const
TimeAdvance<feVectorType>::nextFirstDerivative(feVectorType const& newEntry) const
{
feVectorType rhsContribution(*this->M_unknowns[0]);
this->RHSFirstDerivative(M_timeStep, rhsContribution,1);
......
......@@ -293,10 +293,10 @@ public:
void extrapolationFirstDerivative(feVector_Type& extrapolation) const;
//! Return the current velocity
feVectorType velocity() const;
feVectorType firstDerivative() const;
//!Return the current acceleration
feVectorType acceleration() const;
feVectorType secondDerivative() const;
//@}
......@@ -638,7 +638,7 @@ TimeAdvanceBDF<feVectorType>::extrapolationFirstDerivative(feVector_Type& extrap
template<typename feVectorType>
feVectorType
TimeAdvanceBDF<feVectorType>::velocity() const
TimeAdvanceBDF<feVectorType>::firstDerivative() const
{
return (*this->M_unknowns[0])
* this->M_alpha[ 0 ] / this->M_timeStep
......@@ -647,7 +647,7 @@ TimeAdvanceBDF<feVectorType>::velocity() const
template<typename feVectorType>
feVectorType
TimeAdvanceBDF<feVectorType>::acceleration() const
TimeAdvanceBDF<feVectorType>::secondDerivative() const
{
return (*this->M_unknowns[0]) * this->M_xi[ 0 ]/(this->M_timeStep*this->M_timeStep) - ( *this->M_rhsContribution[1] );
}
......
......@@ -279,13 +279,13 @@ public:
void extrapolationFirstDerivative(feVector_Type& extrapolation) const;
//! Return the current velocity
feVector_Type velocity() const
feVector_Type firstDerivative() const
{
return( *this->M_unknowns[1]);
}
//!Return the current acceleration
feVector_Type acceleration() const
feVector_Type secondDerivative() const
{
return *this->M_unknowns[2];
}
......
......@@ -322,7 +322,7 @@ void FSIExactJacobian::eval(const vector_Type& _disp,
vector_Type meshDispRepeated( M_meshMotion->disp(), Repeated );
this->moveMesh(meshDispRepeated);
vector_Type vel ( this->M_ALETimeAdvance->velocity( ) );
vector_Type vel ( this->M_ALETimeAdvance->firstDerivative( ) );
transferMeshMotionOnFluid( vel, veloFluidMesh() );
M_fluidTimeAdvance->extrapolation(*M_beta);//explicit
*M_beta -= veloFluidMesh();//implicit
......@@ -402,7 +402,7 @@ void FSIExactJacobian::eval(const vector_Type& _disp,
if (this->isSolid())
{
this->transferSolidOnInterface(this->M_solid->displacement(), lambdaSolidUnique);
this->transferSolidOnInterface( this->M_solidTimeAdvance->velocity( this->M_solid->displacement()), lambdaDotSolidUnique );
this->transferSolidOnInterface( this->M_solidTimeAdvance->firstDerivative( this->M_solid->displacement()), lambdaDotSolidUnique );
this->transferSolidOnInterface(this->M_solid->residual(), sigmaSolidUnique);
}
......
......@@ -194,7 +194,7 @@ void FSIFixedPoint::eval( const vector_Type& _disp,
*M_beta += *this->M_fluid->solution();
vector_Type meshVelocity( M_meshMotion->disp(), Repeated );
meshVelocity = M_ALETimeAdvance->velocity(meshDisp);//implicit treatment of w (because I already did the shiftRight)
meshVelocity = M_ALETimeAdvance->firstDerivative(meshDisp);//implicit treatment of w (because I already did the shiftRight)
this->transferMeshMotionOnFluid(meshVelocity,
this->veloFluidMesh());
......@@ -261,7 +261,7 @@ void FSIFixedPoint::eval( const vector_Type& _disp,
{
this->M_solid->iterate( M_BCh_d );
this->transferSolidOnInterface(this->M_solid->displacement(), lambdaSolidUnique);
this->transferSolidOnInterface( M_solidTimeAdvance->velocity( this->solid().displacement()), lambdaDotSolidUnique );
this->transferSolidOnInterface( M_solidTimeAdvance->firstDerivative( this->solid().displacement()), lambdaDotSolidUnique );
this->transferSolidOnInterface(this->M_solid->residual(), sigmaSolidUnique);
}
......
......@@ -364,7 +364,7 @@ public:
*/
void exportSolidVelocity( vector_Type& solidVelocity )
{
solidVelocity = M_solidTimeAdvance->velocity();
solidVelocity = M_solidTimeAdvance->firstDerivative();
solidVelocity *= M_solid->rescaleFactor();
}
......@@ -375,7 +375,7 @@ public:
*/
void exportSolidAcceleration( vector_Type& solidAcceleration )
{
solidAcceleration = M_solidTimeAdvance->acceleration();
solidAcceleration = M_solidTimeAdvance->secondDerivative();
solidAcceleration *= M_solid->rescaleFactor();
}
......
......@@ -121,7 +121,7 @@ FSIMonolithicGE::evalResidual( vector_Type& res,
this->moveMesh(meshDispRepeated);
//here should use extrapolationFirstDerivative instead of velocity
vector_Type meshVelocityRepeated ( this->M_ALETimeAdvance->nextVelocity( M_meshMotion->disp() ), Repeated );
vector_Type meshVelocityRepeated ( this->M_ALETimeAdvance->nextFirstDerivative( M_meshMotion->disp() ), Repeated );
vector_Type interpolatedMeshVelocity(this->M_uFESpace->map());
interpolateVelocity( meshVelocityRepeated, interpolatedMeshVelocity );
......
......@@ -124,7 +124,7 @@ FSIMonolithicGI::evalResidual( vector_Type& res,
moveMesh( *mmRep );
//here should use extrapolationFirstDerivative instead of velocity
vector_Type meshVelocityRepeated ( this->M_ALETimeAdvance->nextVelocity( *meshDisp ), Repeated );
vector_Type meshVelocityRepeated ( this->M_ALETimeAdvance->nextFirstDerivative( *meshDisp ), Repeated );
vector_Type interpolatedMeshVelocity(this->M_uFESpace->map());
interpolateVelocity( meshVelocityRepeated, interpolatedMeshVelocity );
......@@ -368,7 +368,7 @@ void FSIMonolithicGI::shapeDerivatives( FSIOperator::fluidPtr_Type::value_type::
vectorPtr_Type meshVelRep( new vector_Type( M_mmFESpace->map(), Repeated ) );
*meshVelRep = M_ALETimeAdvance->velocity();
*meshVelRep = M_ALETimeAdvance->firstDerivative();
//When this class is used, the convective term is used implictly
un.subset( *M_uk, 0 );
......
......@@ -608,7 +608,7 @@ public:
virtual void getSolidDisp( vector_Type& soliddisp ) { soliddisp = M_solid->displacement(); }
//! gets the solid velocity by copy
virtual void getSolidVel( vector_Type& solidvel ) { solidvel = M_solidTimeAdvance->velocity(); }
virtual void getSolidVel( vector_Type& solidvel ) { solidvel = M_solidTimeAdvance->firstDerivative(); }
//! Export the solid displacement by copying it to an external vector
/*!
......@@ -620,13 +620,13 @@ public:
/*!
* @param solidVelocity vector to be filled with the solid velocity
*/
virtual void exportSolidVelocity( vector_Type& solidVelocity ) { solidVelocity = M_solidTimeAdvance->velocity(); }
virtual void exportSolidVelocity( vector_Type& solidVelocity ) { solidVelocity = M_solidTimeAdvance->firstDerivative(); }
//! Export the solid acceleration by copying it to an external vector
/*!
* @param solidAcc vector to be filled with the solid acceleration
*/
virtual void exportSolidAcceleration( vector_Type& solidAcc ) { solidAcc = M_solidTimeAdvance->acceleration(); }
virtual void exportSolidAcceleration( vector_Type& solidAcc ) { solidAcc = M_solidTimeAdvance->secondDerivative(); }
//! Export the fluid velocity by copying it to an external vector
/*!
......
......@@ -576,7 +576,7 @@ public:
{
*M_solidDisp = M_fsi->FSIOper()->solid().displacement();
// *M_solidVel = M_fsi->FSIOper()->solid().velocity();
*M_solidVel = M_fsi->FSIOper()->solidTimeAdvance()->velocity();
*M_solidVel = M_fsi->FSIOper()->solidTimeAdvance()->firstDerivative();
M_exporterSolid->postProcess( M_data->dataFluid()->dataTime()->time() );
}
......
......@@ -87,47 +87,47 @@ class StructuralConstitutiveLaw
{
public:
//!@name Type definitions
//@{
//!@name Type definitions
//@{
typedef StructuralConstitutiveLawData data_Type;
typedef StructuralConstitutiveLawData data_Type;
typedef typename LifeV::SolverAztecOO solver_Type;
typedef typename LifeV::SolverAztecOO solver_Type;
typedef typename solver_Type::matrix_type matrix_Type;
typedef boost::shared_ptr<matrix_Type> matrixPtr_Type;
typedef typename solver_Type::vector_type vector_Type;
typedef boost::shared_ptr<vector_Type> vectorPtr_Type;
typedef typename solver_Type::matrix_type matrix_Type;
typedef boost::shared_ptr<matrix_Type> matrixPtr_Type;
typedef typename solver_Type::vector_type vector_Type;
typedef boost::shared_ptr<vector_Type> vectorPtr_Type;
typedef typename boost::shared_ptr<data_Type> dataPtr_Type;
typedef typename boost::shared_ptr<const Displayer> displayerPtr_Type;
typedef typename boost::shared_ptr<data_Type> dataPtr_Type;
typedef typename boost::shared_ptr<const Displayer> displayerPtr_Type;
typedef FactorySingleton<Factory<StructuralConstitutiveLaw<Mesh>,std::string> > StructureMaterialFactory;
typedef FactorySingleton<Factory<StructuralConstitutiveLaw<Mesh>,std::string> > StructureMaterialFactory;
typedef RegionMesh<LinearTetra > mesh_Type;
typedef std::vector< mesh_Type::element_Type const *> vectorVolumes_Type;
typedef RegionMesh<LinearTetra > mesh_Type;
typedef std::vector< mesh_Type::element_Type const *> vectorVolumes_Type;
typedef std::map< UInt, vectorVolumes_Type> mapMarkerVolumes_Type;
typedef boost::shared_ptr<mapMarkerVolumes_Type> mapMarkerVolumesPtr_Type;
typedef std::map< UInt, vectorVolumes_Type> mapMarkerVolumes_Type;
typedef boost::shared_ptr<mapMarkerVolumes_Type> mapMarkerVolumesPtr_Type;
//@}
//@}
//! @name Constructor & Deconstructor
//@{
//! @name Constructor & Deconstructor
//@{
StructuralConstitutiveLaw();
StructuralConstitutiveLaw();
virtual ~StructuralConstitutiveLaw() {}
virtual ~StructuralConstitutiveLaw() {}
//@}
//@}
//!@name Methods
//@{
//!@name Methods
//@{
//! Setup the created object of the class StructuralConstitutiveLaw
/*!
......@@ -144,7 +144,7 @@ public:
/*!
\param dataMaterial the class with Material properties data
*/
virtual void computeLinearStiff( dataPtr_Type& dataMaterial, const mapMarkerVolumesPtr_Type mapsMarkerVolumes ) = 0;
virtual void computeLinearStiff( dataPtr_Type& dataMaterial, const mapMarkerVolumesPtr_Type mapsMarkerVolumes ) = 0;
//! Updates the Jacobian matrix in StructuralSolver::updateJacobian
/*!
......@@ -152,7 +152,7 @@ public:
\param dataMaterial: a pointer to the dataType member in StructuralSolver class to get the material coefficients (e.g. Young modulus, Poisson ratio..)
\param displayer: a pointer to the Dysplaier member in the StructuralSolver class
*/
virtual void updateJacobianMatrix( const vector_Type& disp, const dataPtr_Type& dataMaterial, const mapMarkerVolumesPtr_Type mapsMarkerVolumes, const displayerPtr_Type& displayer ) = 0;
virtual void updateJacobianMatrix( const vector_Type& disp, const dataPtr_Type& dataMaterial, const mapMarkerVolumesPtr_Type mapsMarkerVolumes, const displayerPtr_Type& displayer ) = 0;
//! Computes the new Stiffness matrix in StructuralSolver given a certain displacement field. This function is used both in StructuralSolver::evalResidual and in
//! StructuralSolver::updateSystem since the matrix is the expression of the matrix is the same.
......@@ -163,7 +163,7 @@ public:
\param dataMaterial: a pointer to the dataType member in StructuralSolver class to get the material coefficients (e.g. Young modulus, Poisson ratio..)
\param displayer: a pointer to the Dysplaier member in the StructuralSolver class
*/
virtual void computeStiffness( const vector_Type& sol, Real factor, const dataPtr_Type& dataMaterial, const mapMarkerVolumesPtr_Type mapsMarkerVolumes, const displayerPtr_Type& displayer ) = 0;
virtual void computeStiffness( const vector_Type& sol, Real factor, const dataPtr_Type& dataMaterial, const mapMarkerVolumesPtr_Type mapsMarkerVolumes, const displayerPtr_Type& displayer ) = 0;
//! Computes the deformation Gradient F, the cofactor of F Cof(F), the determinant of F J = det(F), the trace of C Tr(C).
......@@ -173,34 +173,34 @@ public:
virtual void computeKinematicsVariables( const VectorElemental& dk_loc ) = 0;
//! Output of the class
/*!
\param fileNamelinearStiff the filename where to apply the spy method for the linear part of the Stiffness matrix
\param fileNameStiff the filename where to apply the spy method for the Stiffness matrix
*/
virtual void showMe( std::string const& fileNameStiff, std::string const& fileNameJacobian ) = 0;
//! Output of the class
/*!
\param fileNamelinearStiff the filename where to apply the spy method for the linear part of the Stiffness matrix
\param fileNameStiff the filename where to apply the spy method for the Stiffness matrix
*/
virtual void showMe( std::string const& fileNameStiff, std::string const& fileNameJacobian ) = 0;
//! @name Set Methods
//@{
//! @name Set Methods
//@{
//No set Methods
//@}
//@}
//! @name Get Methods
//@{
//! @name Get Methods
//@{
//! Getters
//! Get the Epetramap
MapEpetra const& map() const { return *M_localMap; }
//! Getters
//! Get the Epetramap
MapEpetra const& map() const { return *M_localMap; }
//! Get the FESpace object
FESpace<Mesh, MapEpetra>& dFESpace() {return M_FESpace;}
//! Get the FESpace object
FESpace<Mesh, MapEpetra>& dFESpace() {return M_FESpace;}
//! Get the Stiffness matrix
matrixPtr_Type const jacobian() const {return M_jacobian; }
//! Get the Stiffness matrix
matrixPtr_Type const jacobian() const {return M_jacobian; }
//! Get the Stiffness matrix
virtual matrixPtr_Type const stiffMatrix() const = 0;
......@@ -208,9 +208,9 @@ public:
//! Get the Stiffness matrix
virtual vectorPtr_Type const stiffVector() const = 0;
virtual void apply( const vector_Type& sol, vector_Type& res, const mapMarkerVolumesPtr_Type mapsMarkerVolumes) =0;
virtual void apply( const vector_Type& sol, vector_Type& res, const mapMarkerVolumesPtr_Type mapsMarkerVolumes) =0;
//@}
//@}
protected:
......@@ -246,7 +246,7 @@ StructuralConstitutiveLaw<Mesh>::StructuralConstitutiveLaw( ):
M_jacobian ( ),
M_offset ( 0 )
{
// std::cout << "I am in the constructor of StructuralConstitutiveLaw" << std::endl;
// std::cout << "I am in the constructor of StructuralConstitutiveLaw" << std::endl;
}
}
......
......@@ -93,10 +93,10 @@ public:
bool operator()( const meshEntity_Type & entity ) const
{
//Extract the flag from the mesh entity
UInt flagChecked = entity.markerID();
//Extract the flag from the mesh entity
UInt flagChecked = entity.markerID();
return M_policy( flagChecked, M_reference );
return M_policy( flagChecked, M_reference );
}
private:
......@@ -113,7 +113,7 @@ private:
*/
template <typename Mesh,
typename SolverType = LifeV::SolverAztecOO >
typename SolverType = LifeV::SolverAztecOO >
class StructuralOperator
{
......@@ -646,9 +646,9 @@ StructuralOperator<Mesh, SolverType>::StructuralOperator( ):
template <typename Mesh, typename SolverType>
void
StructuralOperator<Mesh, SolverType>::setup(boost::shared_ptr<data_Type> data,
const boost::shared_ptr< FESpace<Mesh, MapEpetra> >& dFESpace,
bcHandler_Type& BCh,
boost::shared_ptr<Epetra_Comm>& comm)
const boost::shared_ptr< FESpace<Mesh, MapEpetra> >& dFESpace,
bcHandler_Type& BCh,
boost::shared_ptr<Epetra_Comm>& comm)
{
setup(data, dFESpace, comm);
M_BCh = BCh;
......@@ -657,8 +657,8 @@ StructuralOperator<Mesh, SolverType>::setup(boost::shared_ptr<data_Type>
template <typename Mesh, typename SolverType>
void
StructuralOperator<Mesh, SolverType>::setup(boost::shared_ptr<data_Type> data,
const boost::shared_ptr< FESpace<Mesh, MapEpetra> >& dFESpace,
boost::shared_ptr<Epetra_Comm>& comm)
const boost::shared_ptr< FESpace<Mesh, MapEpetra> >& dFESpace,
boost::shared_ptr<Epetra_Comm>& comm)
{
setup( data, dFESpace, comm, dFESpace->mapPtr(), (UInt)0 );
......@@ -674,10 +674,10 @@ StructuralOperator<Mesh, SolverType>::setup(boost::shared_ptr<data_Type>
template <typename Mesh, typename SolverType>
void
StructuralOperator<Mesh, SolverType>::setup(boost::shared_ptr<data_Type> data,
const boost::shared_ptr< FESpace<Mesh, MapEpetra> >& dFESpace,
boost::shared_ptr<Epetra_Comm>& comm,
const boost::shared_ptr<const MapEpetra>& monolithicMap,
UInt offset)
const boost::shared_ptr< FESpace<Mesh, MapEpetra> >& dFESpace,
boost::shared_ptr<Epetra_Comm>& comm,
const boost::shared_ptr<const MapEpetra>& monolithicMap,
UInt offset)
{
M_data = data;
M_FESpace = dFESpace;
......@@ -708,34 +708,34 @@ template <typename Mesh, typename SolverType>
void StructuralOperator<Mesh, SolverType>::setupMapMarkersVolumes( void )
{
this->M_Displayer->leaderPrint(" S- Building the map between volumesMarkers <--> volumes \n");
this->M_Displayer->leaderPrint(" S- Building the map between volumesMarkers <--> volumes \n");
//We first loop over the vector of the material_flags
for ( UInt i(0); i < M_data->vectorFlags().size(); i++ )
//We first loop over the vector of the material_flags
for ( UInt i(0); i < M_data->vectorFlags().size(); i++ )
{
//Create the functor to extract volumes
markerSelectorPtr_Type ref( new markerSelector_Type(M_data->vectorFlags()[i]) );
//Create the functor to extract volumes
markerSelectorPtr_Type ref( new markerSelector_Type(M_data->vectorFlags()[i]) );
//Number of volumes with the current marker
UInt numExtractedVolumes = this->M_FESpace->mesh()->elementList().countAccordingToPredicate( *ref );
//Number of volumes with the current marker
UInt numExtractedVolumes = this->M_FESpace->mesh()->elementList().countAccordingToPredicate( *ref );
this->M_Displayer->leaderPrint(" Current marker: ", M_data->vectorFlags()[i]);
this->M_Displayer->leaderPrint(" \n");
this->M_Displayer->leaderPrint(" Number of volumes:", numExtractedVolumes);
this->M_Displayer->leaderPrint(" \n");
this->M_Displayer->leaderPrint(" Current marker: ", M_data->vectorFlags()[i]);
this->M_Displayer->leaderPrint(" \n");
this->M_Displayer->leaderPrint(" Number of volumes:", numExtractedVolumes);
this->M_Displayer->leaderPrint(" \n");
//Vector large enough to contain the number of volumes with the current marker
vectorVolumes_Type extractedVolumes( numExtractedVolumes );
//Vector large enough to contain the number of volumes with the current marker
vectorVolumes_Type extractedVolumes( numExtractedVolumes );
//Extracting the volumes
extractedVolumes = this->M_FESpace->mesh()->elementList().extractAccordingToPredicate( *ref );
//Extracting the volumes
extractedVolumes = this->M_FESpace->mesh()->elementList().extractAccordingToPredicate( *ref );
//Insert the correspondande Marker <--> List of Volumes inside the map
M_mapMarkersVolumes->insert( pair<UInt, vectorVolumes_Type> (M_data->vectorFlags()[i], extractedVolumes) ) ;
//Insert the correspondande Marker <--> List of Volumes inside the map
M_mapMarkersVolumes->insert( pair<UInt, vectorVolumes_Type> (M_data->vectorFlags()[i], extractedVolumes) ) ;
//Cleaning the vector
extractedVolumes.clear();
//Cleaning the vector
extractedVolumes.clear();
}
}
......@@ -840,7 +840,7 @@ StructuralOperator<Mesh, SolverType>::computeMassMatrix( const Real factor)
// mass
// The method mass is implemented in AssemblyElemental.cpp
mass( factorMassMatrix , *M_elmatM, M_FESpace->fe(), 0, 0, nDimensions );
mass( factorMassMatrix , *M_elmatM, M_FESpace->fe(), 0, 0, nDimensions );
//! assembling
for ( UInt ic = 0; ic < nc; ic++ )
......@@ -998,7 +998,7 @@ StructuralOperator<Mesh, SolverType>::evalResidual( vector_Type &residual, const
*M_rhs=*M_rhsNoBC;
residual = *M_massMatrix * solution;
residual += *M_material->stiffVector();
vector_Type solRep(solution, Repeated);
vector_Type solRep(solution, Repeated);
bcManageResidual( residual, *M_rhs, solRep, *M_FESpace->mesh(), M_FESpace->dof(), *M_BCh, M_FESpace->feBd(), M_data->dataTime()->time(), 1.0 );
residual -= *M_rhs;
chrono.stop();
......@@ -1327,25 +1327,25 @@ solveJacobian(vector_Type& step,
M_linearSolver->solveSystem( res, step, matrFull );
// matrFull->spy("J");
// M_material->stiffMatrix()->spy("S");
// M_systemMatrix->spy("M");
// matrFull->spy("J");
// M_material->stiffMatrix()->spy("S");
// M_systemMatrix->spy("M");
chrono.stop();
}
template<typename Mesh, typename SolverType>
void StructuralOperator<Mesh, SolverType>::apply( const vector_Type& sol, vector_Type& res) const
{
M_material->apply(sol, res, M_mapMarkersVolumes);
M_material->apply(sol, res, M_mapMarkersVolumes);
res += (*M_massMatrix)*sol;
}
template<typename Mesh, typename SolverType>
void
StructuralOperator<Mesh, SolverType>::applyBoundaryConditions( matrix_Type& matrix,
vector_Type& rhs,
bcHandler_Type& BCh,
UInt offset)
vector_Type& rhs,
bcHandler_Type& BCh,
UInt offset)
{
// BC manage for the velocity
if (offset)
......
......@@ -47,10 +47,10 @@ template <typename Mesh>
class VenantKirchhoffMaterialLinear :
public StructuralConstitutiveLaw<Mesh>
{
//!@name Type definitions
//@{
//!@name Type definitions
//@{
public:
public:
typedef StructuralConstitutiveLaw<Mesh> super;
typedef typename super::data_Type data_Type;
......@@ -68,28 +68,28 @@ class VenantKirchhoffMaterialLinear :
typedef typename mapMarkerVolumes_Type::const_iterator mapIterator_Type;
//@}
//@}
//! @name Constructor & Destructor
//@{
//! @name Constructor & Destructor
//@{
VenantKirchhoffMaterialLinear();
virtual ~VenantKirchhoffMaterialLinear();
//@}
//!@name Methods
//@{
//! Setup the created object of the class StructuralConstitutiveLaw
/*!