gmsh-TingyuanDoc
0.1
An Open-Source Timing-driven Analytical Mixed-size FPGA Placer
|
Go to the documentation of this file.
30 inline double dot(
const double &a,
const double &b) {
return a * b; }
43 for(
int i = 0; i < 3; i++) a(i) = b(i);
51 std::vector<T2> &vval)
const = 0;
69 std::vector<T2> &vval)
const;
86 std::vector<double> &vval)
const {};
202 template <
class T1,
class T2 =
double>
248 Msg::Error(
"LaplaceTerm<S1, S2> w/ S1 != S2 not implemented");
253 Msg::Error(
"LaplaceTerm<S1, S2> w/ S1 != S2 not implemented");
257 Msg::Error(
"LaplaceTerm<S1, S2> w/ S1 != S2 not implemented");
275 :
BilinearTerm<T1, T1>(space1_, space1_), diffusivity(diff)
virtual void get(MElement *ele, int npts, IntPt *GP, std::vector< double > &vval) const
virtual ~BilinearTermBase()
virtual void get(MElement *ele, int npts, IntPt *GP, std::vector< fullVector< double > > &vv) const
virtual void get(MElement *ele, int npts, IntPt *GP, fullMatrix< double > &m) const
virtual BilinearTermBase * clone() const
const LinearTermBase< T2 > * b
const LinearTermBase< T2 > * a
virtual ~LoadTermOnBorder()
virtual void get(MElement *ele, int npts, IntPt *GP, T2 &val) const
virtual LinearTermBase< typename TensorialTraits< T1 >::GradType > * clone() const
ScalarTermConstant(T2 val_=T2())
static void Error(const char *fmt,...)
virtual BilinearTermBase * clone() const
LoadTerm(FunctionSpace< T1 > &space1_, simpleFunction< typename TensorialTraits< T1 >::ValType > *Load_)
virtual BilinearTermBase * clone() const
virtual LinearTermBase< T2 > * clone() const =0
virtual void get(MVertex *ver, fullMatrix< double > &m)
LinearTerm(FunctionSpace< T1 > &space1_)
GradTerm(FunctionSpace< T1 > &space1_)
virtual void get(MElement *ele, int npts, IntPt *GP, fullMatrix< double > &m) const
LagrangeMultiplierTerm(FunctionSpace< T1 > &space1_, FunctionSpace< double > &space2_, const T1 &d)
LoadTermOnBorder(FunctionSpace< T1 > &space1_, simpleFunction< typename TensorialTraits< T1 >::ValType > *Load_, double eqfac=1.0)
BilinearTermContractWithLaw(const LinearTermBase< T2 > &a_, const ScalarTermBase< typename TensorialTraits< T2 >::TensProdType > &c_, const LinearTermBase< T2 > &b_)
FunctionSpace< T1 > & space1
virtual void get(MElement *ele, int npts, IntPt *GP, fullVector< typename TensorialTraits< T1 >::GradType > &vec) const
virtual void get(MElement *ele, int npts, IntPt *GP, fullVector< double > &m) const
virtual void get(MElement *ele, int npts, IntPt *GP, std::vector< fullMatrix< double > > &vm) const
virtual ScalarTermBase< double > * clone() const
virtual void get(MElement *ele, int npts, IntPt *GP, fullVector< T2 > &v) const
virtual void get(MElement *ele, int npts, IntPt *GP, std::vector< fullVector< T2 > > &vv) const
virtual ~LinearTermBase()
simpleFunction< typename TensorialTraits< T1 >::ValType > * Load
LaplaceTerm(FunctionSpace< T1 > &space1_, double diff=1)
virtual LinearTermBase< double > * clone() const
virtual void get(MElement *ele, int npts, IntPt *GP, fullMatrix< double > &m) const
virtual void get(MElement *ele, int npts, IntPt *GP, double &val) const
virtual void get(MElement *ele, int npts, IntPt *GP, std::vector< fullMatrix< double > > &vm) const
virtual ~ScalarTermConstant()
virtual void get(MElement *ele, int npts, IntPt *GP, std::vector< fullMatrix< double > > &vm) const
virtual ~ScalarTermBase()
virtual void get(MElement *ele, int npts, IntPt *GP, std::vector< fullMatrix< double > > &mv) const
virtual LinearTermBase< T2 > * clone() const
IsotropicElasticTerm(FunctionSpace< SVector3 > &space1_, FunctionSpace< SVector3 > &space2_, double E_, double nu_)
PlusTerm(const LinearTermBase< T2 > &a_, const LinearTermBase< T2 > &b_)
BilinearTerm(FunctionSpace< T1 > &space1_, FunctionSpace< T2 > &space2_)
virtual void get(MElement *ele, int npts, IntPt *GP, fullMatrix< double > &m) const
LagMultTerm(FunctionSpace< SVector3 > &space1_, FunctionSpace< SVector3 > &space2_, double eqfac=1.0)
simpleFunction< typename TensorialTraits< T1 >::ValType > * Load
virtual void get(MElement *ele, int npts, IntPt *GP, fullVector< double > &m) const
virtual void get(MElement *ele, int npts, IntPt *GP, fullMatrix< double > &m) const
virtual void get(MElement *ele, int npts, IntPt *GP, std::vector< fullVector< double > > &vv) const
FunctionSpace< T2 > & space2
virtual void get(MElement *ele, int npts, IntPt *GP, std::vector< T2 > &vval) const =0
virtual void get(MElement *ele, int npts, IntPt *GP, std::vector< fullVector< T2 > > &vv) const =0
BilinearTermBase & bilterm
virtual void get(MElement *ele, int npts, IntPt *GP, fullMatrix< double > &m) const
virtual ~BilinearTermContractWithLaw()
virtual void get(MElement *ele, int npts, IntPt *GP, std::vector< fullMatrix< double > > &mv) const =0
FunctionSpace< T1 > & space1
virtual void get(MElement *ele, int npts, IntPt *GP, fullMatrix< double > &m) const
double dot(const double &a, const double &b)
virtual ScalarTermBase< T2 > * clone() const
const ScalarTermBase< typename TensorialTraits< T2 >::TensProdType > * c
virtual ScalarTermBase< T2 > * clone() const =0
BilinearTermContract< T2 > operator|(const LinearTermBase< T2 > &L1, const LinearTermBase< T2 > &L2)
LaplaceTerm(FunctionSpace< T1 > &space1_, FunctionSpace< T2 > &space2_)
virtual BilinearTermBase * clone() const
PlusTerm< T2 > operator+(const LinearTermBase< T2 > &other)
virtual void get(MElement *ele, int npts, IntPt *GP, T2 &val) const =0
const LinearTermBase< T2 > * a
virtual void get(MElement *ele, int npts, IntPt *GP, std::vector< fullMatrix< double > > &vm) const
virtual BilinearTermBase * clone() const
virtual ~IsotropicElasticTerm()
const LinearTermBase< T2 > * b
virtual BilinearTermBase * clone() const =0
BilinearTermToScalarTerm(BilinearTermBase &bilterm_)
virtual LinearTermBase< double > * clone() const
virtual void get(MElement *ele, int npts, IntPt *GP, std::vector< fullMatrix< double > > &vm) const
virtual BilinearTermBase * clone() const
BilinearTermContract(const LinearTermBase< T2 > &a_, const LinearTermBase< T2 > &b_)
virtual ~BilinearTermContract()
virtual BilinearTermBase * clone() const
virtual ~BilinearTermToScalarTerm()
virtual ~LagrangeMultiplierTerm()
virtual void get(MElement *ele, int npts, IntPt *GP, fullVector< T2 > &v) const
void setDirection(double &a, const double &b)