Esempio n. 1
0
 void ScalarFiniteElement<D> :: 
 CalcMappedDShape (const MappedIntegrationPoint<D,D> & mip, 
                   SliceMatrix<> dshape) const
 {
   CalcDShape (mip.IP(), dshape);
   for (int i = 0; i < dshape.Height(); i++)
     {
       Vec<D> hv = dshape.Row(i);
       FlatVec<D> (&dshape(i,0)) = Trans (mip.GetJacobianInverse ()) * hv;
     }
 }
Esempio n. 2
0
 void ScalarFiniteElement<D> :: 
 CalcMappedDShape (const MappedIntegrationRule<D,D> & mir, 
                   SliceMatrix<> dshapes) const
 {
   for (int i = 0; i < mir.Size(); i++)
     CalcMappedDShape (mir[i], dshapes.Cols(i*D,(i+1)*D));
 }
Esempio n. 3
0
  void ScalarFiniteElement<D> :: 
  CalcShape (const IntegrationRule & ir, 
	     SliceMatrix<> shape) const
  {
    for (int i = 0; i < ir.Size(); i++)
      CalcShape (ir[i], shape.Col(i));
  }
Esempio n. 4
0
 inline void MultMatMat (SliceMatrix<> a, SliceMatrix<SIMD<double>> b, SliceMatrix<SIMD<double>> c)
 {
   MultMatMat_intern (a.Height(), a.Width(), b.Width(), a, b, c);
 }