CG  Version 25
Macros | Functions | Variables
sm/src/forcing.h File Reference

Go to the source code of this file.

Macros

#define exTrue(x, y, t)   sin(twoPi*(kx*(x)+ky*(y)-cc*(t)))*(-ky/(eps*cc))
 
#define eyTrue(x, y, t)   sin(twoPi*(kx*(x)+ky*(y)-cc*(t)))*( kx/(eps*cc))
 
#define hzTrue(x, y, t)   sin(twoPi*(kx*(x)+ky*(y)-cc*(t)))
 
#define exLaplacianTrue(x, y, t)   sin(twoPi*(kx*(x)+ky*(y)-cc*(t)))*(+ky*(twoPi*twoPi*(kx*kx+ky*ky))/(eps*cc))
 
#define eyLaplacianTrue(x, y, t)   sin(twoPi*(kx*(x)+ky*(y)-cc*(t)))*(-kx*(twoPi*twoPi*(kx*kx+ky*ky))/(eps*cc))
 
#define hzLaplacianTrue(x, y, t)   sin(twoPi*(kx*(x)+ky*(y)-cc*(t)))*( -(twoPi*twoPi*(kx*kx+ky*ky) ) )
 
#define hzGaussianPulse(xi)   exp(-betaGaussianPlaneWave*((xi)*(xi)))
 
#define exGaussianPulse(xi)   hzGaussianPulse(xi)*(-ky/(eps*cc))
 
#define eyGaussianPulse(xi)   hzGaussianPulse(xi)*( kx/(eps*cc))
 
#define hzLaplacianGaussianPulse(xi)
 
#define exLaplacianGaussianPulse(xi)   hzLaplacianGaussianPulse(xi,t)*(-ky/(eps*cc))
 
#define eyLaplacianGaussianPulse(xi)   hzLaplacianGaussianPulse(xi,t)*( kx/(eps*cc))
 
#define exTrue3d(x, y, z, t)   sin(twoPi*(kx*(x)+ky*(y)+kz*(z)-cc*(t)))*(-ky/(eps*cc))
 
#define eyTrue3d(x, y, z, t)   sin(twoPi*(kx*(x)+ky*(y)+kz*(z)-cc*(t)))*( kx/(eps*cc))
 
#define ezTrue3d(x, y, z, t)   0
 
#define hxTrue3d(x, y, z, t)   0
 
#define hyTrue3d(x, y, z, t)   0
 
#define hzTrue3d(x, y, z, t)   sin(twoPi*(kx*(x)+ky*(y)+kz*(z)-cc*(t)))
 
#define exLaplacianTrue3d(x, y, z, t)   sin(twoPi*(kx*(x)+ky*(y)-cc*(t)))*(+ky*(twoPi*twoPi*(kx*kx+ky*ky))/(eps*cc))
 
#define eyLaplacianTrue3d(x, y, z, t)   sin(twoPi*(kx*(x)+ky*(y)-cc*(t)))*(-kx*(twoPi*twoPi*(kx*kx+ky*ky))/(eps*cc))
 
#define ezLaplacianTrue3d(x, y, z, t)   0
 
#define hxLaplacianTrue3d(x, y, z, t)   0
 
#define hyLaplacianTrue3d(x, y, z, t)   0
 
#define hzLaplacianTrue3d(x, y, z, t)   sin(twoPi*(kx*(x)+ky*(y)-cc*(t)))*( -(twoPi*twoPi*(kx*kx+ky*ky) ) )
 

Functions

 if (pdeVariation==SmParameters::hemp)
 
 if (mg.numberOfDimensions()==2)
 
 if (t==0.)
 

Variables

const int v1c = parameters.dbase.get<int >("v1c")
 
const int v2c = parameters.dbase.get<int >("v2c")
 
const int v3c = parameters.dbase.get<int >("v3c")
 
bool assignVelocities = v1c>=0
 
const int s11c = parameters.dbase.get<int >("s11c")
 
const int s12c = parameters.dbase.get<int >("s12c")
 
const int s13c = parameters.dbase.get<int >("s13c")
 
const int s21c = parameters.dbase.get<int >("s21c")
 
const int s22c = parameters.dbase.get<int >("s22c")
 
const int s23c = parameters.dbase.get<int >("s23c")
 
const int s31c = parameters.dbase.get<int >("s31c")
 
const int s32c = parameters.dbase.get<int >("s32c")
 
const int s33c = parameters.dbase.get<int >("s33c")
 
const int pc = parameters.dbase.get<int >("pc")
 
bool assignStress = s11c >=0
 
real cp = sqrt( (lambda+2.*mu)/rho )
 
real cs = sqrt( mu/rho )
 
std::vector< real > & twd = parameters.dbase.get<std::vector<real> >("travelingWaveData")
 
const int np = int(twd[0])
 
const int ns = int(twd[1])
 
int i1
 
int i2
 
int i3
 
 else
 
std::vector< real > & data = parameters.dbase.get<std::vector<real> >("RayleighWaveData")
 
const int nk = int(data[0])
 
const real cr = data[1]
 
const real ySurf = data[2]
 
const real period = data[3]
 
const real xShift = data[4]
 
const int mStart =5
 
real cb1 = sqrt(1.-SQR(cr/cp))
 
real cb2 = sqrt(1.-SQR(cr/cs))
 
real c1 = .5*SQR(cr/cs)-1.
 
real scale = -1./( cb1+(c1/cb2) )
 
real xp1 = pow(xx,p-1)
 
real z =cg2*xp1
 
 f = cp*fg(xx,z) - .5*(a/p)*xp1*xx
 
 fPrime = .5*( -cg1*pow( 1. + z , 7.) + a*xp1/cp )
 

Macro Definition Documentation

#define exGaussianPulse (   xi)    hzGaussianPulse(xi)*(-ky/(eps*cc))
#define exLaplacianGaussianPulse (   xi)    hzLaplacianGaussianPulse(xi,t)*(-ky/(eps*cc))
#define exLaplacianTrue (   x,
  y,
 
)    sin(twoPi*(kx*(x)+ky*(y)-cc*(t)))*(+ky*(twoPi*twoPi*(kx*kx+ky*ky))/(eps*cc))
#define exLaplacianTrue3d (   x,
  y,
  z,
 
)    sin(twoPi*(kx*(x)+ky*(y)-cc*(t)))*(+ky*(twoPi*twoPi*(kx*kx+ky*ky))/(eps*cc))
#define exTrue (   x,
  y,
 
)    sin(twoPi*(kx*(x)+ky*(y)-cc*(t)))*(-ky/(eps*cc))
#define exTrue3d (   x,
  y,
  z,
 
)    sin(twoPi*(kx*(x)+ky*(y)+kz*(z)-cc*(t)))*(-ky/(eps*cc))
#define eyGaussianPulse (   xi)    hzGaussianPulse(xi)*( kx/(eps*cc))
#define eyLaplacianGaussianPulse (   xi)    hzLaplacianGaussianPulse(xi,t)*( kx/(eps*cc))
#define eyLaplacianTrue (   x,
  y,
 
)    sin(twoPi*(kx*(x)+ky*(y)-cc*(t)))*(-kx*(twoPi*twoPi*(kx*kx+ky*ky))/(eps*cc))
#define eyLaplacianTrue3d (   x,
  y,
  z,
 
)    sin(twoPi*(kx*(x)+ky*(y)-cc*(t)))*(-kx*(twoPi*twoPi*(kx*kx+ky*ky))/(eps*cc))
#define eyTrue (   x,
  y,
 
)    sin(twoPi*(kx*(x)+ky*(y)-cc*(t)))*( kx/(eps*cc))
#define eyTrue3d (   x,
  y,
  z,
 
)    sin(twoPi*(kx*(x)+ky*(y)+kz*(z)-cc*(t)))*( kx/(eps*cc))
#define ezLaplacianTrue3d (   x,
  y,
  z,
 
)    0
#define ezTrue3d (   x,
  y,
  z,
 
)    0
#define hxLaplacianTrue3d (   x,
  y,
  z,
 
)    0
#define hxTrue3d (   x,
  y,
  z,
 
)    0
#define hyLaplacianTrue3d (   x,
  y,
  z,
 
)    0
#define hyTrue3d (   x,
  y,
  z,
 
)    0
#define hzGaussianPulse (   xi)    exp(-betaGaussianPlaneWave*((xi)*(xi)))
#define hzLaplacianGaussianPulse (   xi)
Value:
((4.*betaGaussianPlaneWave*betaGaussianPlaneWave*(kx*kx+ky*ky))*xi*xi-\
(2.*betaGaussianPlaneWave*(kx*kx+ky*ky)))*exp(-betaGaussianPlaneWave*((xi)*(xi)))
#define hzLaplacianTrue (   x,
  y,
 
)    sin(twoPi*(kx*(x)+ky*(y)-cc*(t)))*( -(twoPi*twoPi*(kx*kx+ky*ky) ) )
#define hzLaplacianTrue3d (   x,
  y,
  z,
 
)    sin(twoPi*(kx*(x)+ky*(y)-cc*(t)))*( -(twoPi*twoPi*(kx*kx+ky*ky) ) )
#define hzTrue (   x,
  y,
 
)    sin(twoPi*(kx*(x)+ky*(y)-cc*(t)))
#define hzTrue3d (   x,
  y,
  z,
 
)    sin(twoPi*(kx*(x)+ky*(y)+kz*(z)-cc*(t)))

Function Documentation

if ( pdeVariation  = SmParameters::hemp)

References printF().

if ( mg.  numberOfDimensions() = =2)

References ERR, FOR_3D, SmParameters::hemp, I1, I2, I3, lambda, m, mg, mu, n, np, ns, U, uc, vc, and X.

if ( = =0.)

References a, k, mStart, n, nk, and printF().

Variable Documentation

bool assignStress = s11c >=0
bool assignVelocities = v1c>=0
real c1 = .5*SQR(cr/cs)-1.
real cb1 = sqrt(1.-SQR(cr/cp))
real cb2 = sqrt(1.-SQR(cr/cs))
real cp = sqrt( (lambda+2.*mu)/rho )
const real cr = data[1]
real cs = sqrt( mu/rho )
std::vector<real>& data = parameters.dbase.get<std::vector<real> >("RayleighWaveData")
else
Initial value:
{
OV_ABORT("Error: finish me")
f = cp*fg(xx,z) - .5*(a/p)*xp1*xx

Referenced by Cgins::addForcingToPressureEquation(), Cgasf::addForcingToPressureEquation(), Maxwell::advanceFDTD(), Cgsm::advanceFOS(), Cgins::advanceLineSolveNew(), Cgins::advanceLineSolveOld(), Maxwell::advanceNFDTD(), Cgsm::advanceSOS(), Maxwell::advanceSOSUP(), DomainSolver::advanceSteadyStateRungeKutta(), Maxwell::advanceUnstructuredDSI(), Cgasf::allSpeedImplicitTimeStep(), PenaltyWallFunctionBC::applyBC(), Maxwell::applyDSIForcing(), Maxwell::assignBoundaryConditions(), Cgsm::assignBoundaryConditionsFOS(), Cgsm::assignBoundaryConditionsSOS(), Maxwell::assignInitialConditions(), Cgins::assignLineSolverBoundaryConditions(), Cgins::assignPressureRHS(), DomainSolver::computeBodyForcing(), computeDSIErrors(), Maxwell::computeTimeStep(), RigidBodyMotion::getCoordinates(), Maxwell::getEnergy(), DeformingBodyMotion::getFace(), TestRigidBody::getForce(), Cgsm::getForcing(), Maxwell::getForcing(), Cgins::getResidual(), MovingGrids::gridAccelerationBC(), Cgasf::gridAccelerationBC(), Cgins::gridAccelerationBC(), if(), Cgins::lineSolverBoundaryConditions(), main(), Maxwell::project(), RigidBodyMotion::put(), MovingGrids::rigidBodyMotion(), Maxwell::setupDSICoefficients(), TestRigidBody::solve(), Cgasf::solveForAllSpeedPressure(), Cgasf::solveForTimeIndependentVariables(), Reactions::solveImplicitForPTYGivenR(), Reactions::solveImplicitForRTYGivenP(), Reactions::solveImplicitForYGivenRTP(), solveProblem(), solveSmallSystem(), TimeFunction::update(), MovingGrids::update(), DomainSolver::userDefinedBoundaryValues(), Cgsm::userDefinedForcing(), and MovingGrids::userDefinedGridAccelerationBC().

fPrime = .5*( -cg1*pow( 1. + z , 7.) + a*xp1/cp )
int i1
int i2
int i3
const int mStart =5
const int nk = int(data[0])
const int np = int(twd[0])
const int ns = int(twd[1])
const int pc = parameters.dbase.get<int >("pc")
const real period = data[3]
const int s11c = parameters.dbase.get<int >("s11c")
const int s12c = parameters.dbase.get<int >("s12c")
const int s13c = parameters.dbase.get<int >("s13c")
const int s21c = parameters.dbase.get<int >("s21c")
const int s22c = parameters.dbase.get<int >("s22c")
const int s23c = parameters.dbase.get<int >("s23c")
const int s31c = parameters.dbase.get<int >("s31c")
const int s32c = parameters.dbase.get<int >("s32c")
const int s33c = parameters.dbase.get<int >("s33c")
real scale = -1./( cb1+(c1/cb2) )
std::vector< real > & twd = parameters.dbase.get<std::vector<real> >("travelingWaveData")
const int v1c = parameters.dbase.get<int >("v1c")
const int v2c = parameters.dbase.get<int >("v2c")
const int v3c = parameters.dbase.get<int >("v3c")
real xp1 = pow(xx,p-1)
const real xShift = data[4]
const real ySurf = data[2]
real z =cg2*xp1