ZeroOrderTerm.cc 30.7 KB
Newer Older
1001
	vecsArg[i] = vecsAtQPs[i][iq];     
1002
      for (int i = 0; i < nGrads; i++)
1003
	gradsArg[i] = gradsAtQPs[i][iq];      
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
      result[iq] += 
	fac * (*f_)(coordsAtQPs_[iq],  elementNormal_, vecsArg, gradsArg) * uhAtQP[iq];
    }
  }


  // ========== CoordsAtQP_ZOT ==========

  void CoordsAtQP_ZOT::initElement(const ElInfo* elInfo, 
				   SubAssembler* subAssembler,
				   Quadrature *quad) 
  {
    coordsAtQPs = subAssembler->getCoordsAtQPs(elInfo, quad);
  }

1019
  void CoordsAtQP_ZOT::getC(const ElInfo *elInfo, int nPoints, ElementVector& C)
1020
1021
1022
1023
1024
1025
  { 
    for (int iq = 0; iq < nPoints; iq++)
      C[iq] += (*g)(coordsAtQPs[iq]);    
  }

  void CoordsAtQP_ZOT::eval(int nPoints,
1026
			    const ElementVector& uhAtQP,
1027
1028
			    const WorldVector<double> *grdUhAtQP,
			    const WorldMatrix<double> *D2UhAtQP,
1029
			    ElementVector& result,
1030
1031
1032
1033
1034
1035
1036
1037
			    double fac) 
  {
    for (int iq = 0; iq < nPoints; iq++)
      result[iq] += fac * (*g)(coordsAtQPs[iq]) * uhAtQP[iq];    
  }


}
For faster browsing, not all history is shown. View entire blame