Skip to content
Snippets Groups Projects
Commit 89ad2eb5 authored by Van Dung NGUYEN's avatar Van Dung NGUYEN
Browse files

add new function

parent e228e9b7
No related branches found
No related tags found
1 merge request!309Master
...@@ -922,6 +922,21 @@ void BimaterialHomogenization::computeBimaterial(const fullMatrix<double>& C1, c ...@@ -922,6 +922,21 @@ void BimaterialHomogenization::computeBimaterial(const fullMatrix<double>& C1, c
}; };
}; };
void BimaterialHomogenization::compute(const std::vector<fullMatrix<double> >& Cin, const std::vector<double>& f,
const std::vector<SVector3>& normal,
fullMatrix<double>& Ceff,
bool stiff,
std::vector<hyperFullMatrix>& DCeffDcin,
std::vector<fullMatrix<double> >& DCeffDf,
std::vector<std::vector<fullMatrix<double> > >&DCeffDnormal) const
{
if (DCeffDnormal.size() != 1)
{
DCeffDnormal.resize(1);
}
compute(Cin,f,normal[0],Ceff,stiff,DCeffDcin,DCeffDf,DCeffDnormal[0]);
};
void BimaterialHomogenization::compute(const std::vector<fullMatrix<double> >& Cin, const std::vector<double>& f, const SVector3& normal, void BimaterialHomogenization::compute(const std::vector<fullMatrix<double> >& Cin, const std::vector<double>& f, const SVector3& normal,
......
...@@ -90,12 +90,21 @@ class Homogenization ...@@ -90,12 +90,21 @@ class Homogenization
public: public:
#ifndef SWIG #ifndef SWIG
virtual ~Homogenization(){} virtual ~Homogenization(){}
virtual void compute(const std::vector<fullMatrix<double> >& Cin, const std::vector<double>& f,
const std::vector<SVector3>& normal,
fullMatrix<double>& Ceff,
bool stiff,
std::vector<hyperFullMatrix>& DCeffDcin,
std::vector<fullMatrix<double> >& DCeffDf,
std::vector<std::vector<fullMatrix<double> > >&DCeffDnormal) const = 0;
virtual void compute(const std::vector<fullMatrix<double> >& Cin, const std::vector<double>& f, const SVector3& normal, virtual void compute(const std::vector<fullMatrix<double> >& Cin, const std::vector<double>& f, const SVector3& normal,
fullMatrix<double>& Ceff, fullMatrix<double>& Ceff,
bool stiff, bool stiff,
std::vector<hyperFullMatrix>& DCeffDcin, std::vector<hyperFullMatrix>& DCeffDcin,
std::vector<fullMatrix<double>>& DCeffDf, std::vector<fullMatrix<double>>& DCeffDf,
std::vector<fullMatrix<double>>&DCeffDnormal) const = 0; std::vector<fullMatrix<double>>&DCeffDnormal) const = 0;
virtual void printInfos() const = 0; virtual void printInfos() const = 0;
virtual bool withPlaneStrain() const = 0; virtual bool withPlaneStrain() const = 0;
#endif //SWIG #endif //SWIG
...@@ -113,6 +122,15 @@ class BimaterialHomogenization : public Homogenization ...@@ -113,6 +122,15 @@ class BimaterialHomogenization : public Homogenization
fullMatrix<double>& DCeffDf1, fullMatrix<double>& DCeffDf2 ) const; fullMatrix<double>& DCeffDf1, fullMatrix<double>& DCeffDf2 ) const;
#ifndef SWIG #ifndef SWIG
virtual ~BimaterialHomogenization(){} virtual ~BimaterialHomogenization(){}
virtual void compute(const std::vector<fullMatrix<double> >& Cin, const std::vector<double>& f,
const std::vector<SVector3>& normal,
fullMatrix<double>& Ceff,
bool stiff,
std::vector<hyperFullMatrix>& DCeffDcin,
std::vector<fullMatrix<double> >& DCeffDf,
std::vector<std::vector<fullMatrix<double> > >&DCeffDnormal) const;
virtual void compute(const std::vector<fullMatrix<double> >& Cin, const std::vector<double>& f, const SVector3& normal, virtual void compute(const std::vector<fullMatrix<double> >& Cin, const std::vector<double>& f, const SVector3& normal,
fullMatrix<double>& Ceff, fullMatrix<double>& Ceff,
bool stiff, bool stiff,
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment