Skip to content
Snippets Groups Projects
Commit b8ed889f authored by Gauthier Becker's avatar Gauthier Becker
Browse files

Fix bug with Quadrangle9::getEdgeVertices()

Add a space manager to manage different function  space
Add a explicit solver (alpha generalized Newmark with damping)
Add a dynamic benchmark
Update benchmarks (the bulk mass must be given in argument)
parent b4bb2440
No related branches found
No related tags found
No related merge requests found
......@@ -283,9 +283,10 @@ class MQuadrangle9 : public MQuadrangle {
virtual void getEdgeRep(int num, double *x, double *y, double *z, SVector3 *n);
virtual void getEdgeVertices(const int num, std::vector<MVertex*> &v) const
{
v.resize(3);
// v.resize(3);
MQuadrangle::getEdgeVertices(num, v);
v[2] = _vs[num];
v.push_back(_vs[num]);
// v[2] = _vs[num];
}
virtual int getNumFacesRep();
virtual void getFaceRep(int num, double *x, double *y, double *z, SVector3 *n);
......
......@@ -130,7 +130,7 @@ class dofManager{
//_linearSystems.["A"] = l1;
//_linearSystems["B"] = l2;
}
inline void fixDof(Dof key, const dataVec &value)
virtual inline void fixDof(Dof key, const dataVec &value)
{
if(unknown.find(key) != unknown.end())
return;
......@@ -189,7 +189,7 @@ class dofManager{
numberDof(v->getNum(), Dof::createTypeWithTwoInts(iComp, iField));
}
inline void getDofValue(std::vector<Dof> &keys,std::vector<dataVec> &Vals)
virtual inline void getDofValue(std::vector<Dof> &keys,std::vector<dataVec> &Vals)
{
int ndofs=keys.size();
size_t originalSize = Vals.size();
......@@ -197,7 +197,7 @@ class dofManager{
for (int i=0;i<ndofs;++i) getDofValue(keys[i], Vals[originalSize+i]);
}
inline void getDofValue(Dof key, dataVec &val) const
virtual inline void getDofValue(Dof key, dataVec &val) const
{
{
typename std::map<Dof, dataVec>::const_iterator it = fixed.find(key);
......
......@@ -229,6 +229,7 @@ class linearSystemPETSc : public linearSystem<scalar> {
virtual void zeroMatrix() {}
virtual void zeroRightHandSide() {}
virtual int systemSolve() { return 0; }
virtual double normInfRightHandSide() const{return 0;}
};
#endif
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment