本文整理汇总了C++中typenamecloudtype::parcelType类的典型用法代码示例。如果您正苦于以下问题:C++ parcelType类的具体用法?C++ parcelType怎么用?C++ parcelType使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了parcelType类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1:
Foam::scalar Foam::VirtualMassForce<CloudType>::massAdd
(
const typename CloudType::parcelType& p,
const scalar mass
) const
{
return mass*p.rhoc()/p.rho()*Cvm_;
}
开发者ID:ADGlassby,项目名称:OpenFOAM-2.2.x,代码行数:8,代码来源:VirtualMassForce.C
示例2:
Foam::scalar Foam::WallLocalSpringSliderDashpot<CloudType>::pREff
(
const typename CloudType::parcelType& p
) const
{
if (useEquivalentSize_)
{
return p.d()/2*cbrt(p.nParticle()*volumeFactor_);
}
else
{
return p.d()/2;
}
}
开发者ID:daphilips,项目名称:philipsFOAM,代码行数:14,代码来源:WallLocalSpringSliderDashpot.C
示例3:
Foam::scalar Foam::LambertWall<CloudType>::pREff
(
const typename CloudType::parcelType& p
) const
{
if (useEquivalentSize_)
{
return p.d()/2*cbrt(p.nParticle()*volumeFactor_);
}
else
{
return p.d()/2;
}
}
开发者ID:Washino,项目名称:WashOpenFOAM-2.3.x,代码行数:14,代码来源:LambertWall.C
示例4:
void Foam::NoInjection<CloudType>::setProperties
(
const label,
const label,
const scalar,
typename CloudType::parcelType& parcel
)
{
// set particle velocity
parcel.U() = vector::zero;
// set particle diameter
parcel.d() = 0.0;
}
开发者ID:ku54713,项目名称:firefoam-dev,代码行数:14,代码来源:NoInjection.C
示例5:
void Foam::ManualInjection<CloudType>::setProperties
(
const label parcelI,
const label,
const scalar,
typename CloudType::parcelType& parcel
)
{
// set particle velocity
parcel.U() = U0_;
// set particle diameter
parcel.d() = diameters_[parcelI];
}
开发者ID:Cescfangs,项目名称:OpenFOAM-1.7.x,代码行数:14,代码来源:ManualInjection.C
示例6: value
Foam::forceSuSp Foam::GravityForce<CloudType>::calcNonCoupled
(
const typename CloudType::parcelType& p,
const scalar dt,
const scalar mass,
const scalar Re,
const scalar muc
) const
{
forceSuSp value(vector::zero, 0.0);
value.Su() = mass*g_*(1.0 - p.rhoc()/p.rho());
return value;
}
开发者ID:Washino,项目名称:WM_PROJECT_USER_DIR,代码行数:15,代码来源:GravityForce.C
示例7: value
Foam::forceSuSp Foam::SphereDragForce<CloudType>::calcCoupled
(
const typename CloudType::parcelType& p,
const scalar dt,
const scalar mass,
const scalar Re,
const scalar muc
) const
{
forceSuSp value(vector::zero, 0.0);
value.Sp() = mass*0.75*muc*CdRe(Re)/(p.rho()*sqr(p.d()));
return value;
}
开发者ID:AmaneShino,项目名称:OpenFOAM-2.0.x,代码行数:15,代码来源:SphereDragForce.C
示例8:
Foam::scalar Foam::NoPendularWall<CloudType>::pREff
(
const typename CloudType::parcelType& p
) const
{
return p.d()/2;
}
开发者ID:Washino,项目名称:OpenFOAM-User-Dir,代码行数:7,代码来源:NoPendularWall.C
示例9: value
Foam::forceSuSp Foam::BrownianMotionForce<CloudType>::calcCoupled
(
const typename CloudType::parcelType& p,
const scalar dt,
const scalar mass,
const scalar Re,
const scalar muc
) const
{
forceSuSp value(vector::zero, 0.0);
const scalar dp = p.d();
const scalar Tc = p.Tc();
const scalar eta = rndGen_.sample01<scalar>();
const scalar alpha = 2.0*lambda_/dp;
const scalar cc = 1.0 + alpha*(1.257 + 0.4*exp(-1.1/alpha));
const scalar sigma = physicoChemical::sigma.value();
scalar f = 0.0;
if (turbulence_)
{
const label cellI = p.cell();
const volScalarField& k = *kPtr_;
const scalar kc = k[cellI];
const scalar Dp = sigma*Tc*cc/(3*mathematical::pi*muc*dp);
f = eta/mass*sqrt(2.0*sqr(kc)*sqr(Tc)/(Dp*dt));
}
else
{
const scalar rhoRatio = p.rho()/p.rhoc();
const scalar s0 =
216*muc*sigma*Tc/(sqr(mathematical::pi)*pow5(dp)*(rhoRatio)*cc);
f = eta*sqrt(mathematical::pi*s0/dt);
}
const scalar sqrt2 = sqrt(2.0);
for (label i = 0; i < 3; i++)
{
const scalar x = rndGen_.sample01<scalar>();
const scalar eta = sqrt2*erfInv(2*x - 1.0);
value.Su()[i] = mass*f*eta;
}
return value;
}
开发者ID:Kiiree,项目名称:OpenFOAM-dev,代码行数:47,代码来源:BrownianMotionForce.C
示例10: cloud
Foam::scalar Foam::VariableHardSphere<CloudType>::sigmaTcR
(
const typename CloudType::parcelType& pP,
const typename CloudType::parcelType& pQ
) const
{
const CloudType& cloud(this->owner());
label typeIdP = pP.typeId();
label typeIdQ = pQ.typeId();
scalar dPQ =
0.5
*(
cloud.constProps(typeIdP).d()
+ cloud.constProps(typeIdQ).d()
);
scalar omegaPQ =
0.5
*(
cloud.constProps(typeIdP).omega()
+ cloud.constProps(typeIdQ).omega()
);
scalar cR = mag(pP.U() - pQ.U());
if (cR < VSMALL)
{
return 0;
}
scalar mP = cloud.constProps(typeIdP).mass();
scalar mQ = cloud.constProps(typeIdQ).mass();
scalar mR = mP*mQ/(mP + mQ);
// calculating cross section = pi*dPQ^2, where dPQ is from Bird, eq. 4.79
scalar sigmaTPQ =
pi*dPQ*dPQ
*pow(2.0*physicoChemical::k.value()*Tref_/(mR*cR*cR), omegaPQ - 0.5)
/exp(Foam::lgamma(2.5 - omegaPQ));
return sigmaTPQ*cR;
}
开发者ID:BarisCumhur,项目名称:OpenFOAM-dev,代码行数:46,代码来源:VariableHardSphere.C
示例11:
void Foam::ManualInjectionWet<CloudType>::setProperties
(
const label parcelI,
const label,
const scalar,
typename CloudType::parcelType& parcel
)
{
// set particle velocity
parcel.U() = U0_;
// set particle diameter
parcel.d() = diameters_[parcelI];
// set initial liquid volume
parcel.Vliq() = iniVliq_;
}
开发者ID:Washino,项目名称:OpenFOAM-User-Dir,代码行数:17,代码来源:ManualInjectionWet.C
示例12: alphac
Foam::forceSuSp Foam::WenYuDragForce<CloudType>::calcCoupled
(
const typename CloudType::parcelType& p,
const scalar dt,
const scalar mass,
const scalar Re,
const scalar muc
) const
{
scalar alphac(alphac_[p.cell()]);
return forceSuSp
(
vector::zero,
(mass/p.rho())
*0.75*CdRe(alphac*Re)*muc*pow(alphac, -2.65)/(alphac*sqr(p.d()))
);
}
开发者ID:BarisCumhur,项目名称:OpenFOAM-dev,代码行数:18,代码来源:WenYuDragForce.C
示例13: value
Foam::forceSuSp Foam::PressureGradientForce<CloudType>::calcCoupled
(
const typename CloudType::parcelType& p,
const scalar dt,
const scalar mass,
const scalar Re,
const scalar muc
) const
{
forceSuSp value(Zero, 0.0);
vector DUcDt =
DUcDtInterp().interpolate(p.position(), p.currentTetIndices());
value.Su() = mass*p.rhoc()/p.rho()*DUcDt;
return value;
}
开发者ID:mattijsjanssens,项目名称:OpenFOAM-dev,代码行数:18,代码来源:PressureGradientForce.C
示例14: mag
void Foam::LambertWall<CloudType>::evaluatePendularWall
(
typename CloudType::parcelType& p,
const point& site,
const WallSiteData<vector>& data,
scalar pREff
) const
{
const scalar& st = this->surfaceTension();
const scalar& ca = this->contactAngle();
const scalar& lf = this->liqFrac();
const scalar& vis = this->viscosity();
const scalar& ms = this->minSep();
scalar Vtot = lf*(p.Vliq());
vector r_PW = p.position() - site;
vector U_PW = p.U() - data.wallData();
scalar r_PW_mag = mag(r_PW);
scalar normalOverlapMag = pREff - r_PW_mag;
scalar S = -normalOverlapMag;
vector rHat_PW = r_PW/(r_PW_mag + VSMALL);
// Normal force
scalar capMag =
4*mathematical::pi*pREff*st*cos(ca)/
(1+max(S, 0)*sqrt(mathematical::pi*pREff/Vtot));
//Info << "the value of capMag is " << capMag << endl;
//Info << " the value of overlapMag S is " << S << endl;
//Info << " the volume of Vtot is " << Vtot << endl;
scalar Svis = max(pREff*ms, S);
scalar etaN = 6*mathematical::pi*vis*pREff*pREff/Svis;
vector fN_PW = (-capMag - etaN*(U_PW & rHat_PW)) * rHat_PW;
p.f() += fN_PW;
vector UT_PW = U_PW - (U_PW & rHat_PW)*rHat_PW
- ((pREff*p.omega()) ^ rHat_PW);
scalar etaT =
6*mathematical::pi*vis*pREff*(8./15.*log(pREff/Svis) + 0.9588);
vector fT_PW = -etaT * UT_PW;
p.f() += fT_PW;
p.torque() += (pREff*-rHat_PW) ^ fT_PW;
}
开发者ID:miyazakiKoki,项目名称:OpenFoam,代码行数:59,代码来源:LambertWall.C
示例15: value
Foam::forceSuSp Foam::ParamagneticForce<CloudType>::calcNonCoupled
(
const typename CloudType::parcelType& p,
const typename CloudType::parcelType::trackingData& td,
const scalar dt,
const scalar mass,
const scalar Re,
const scalar muc
) const
{
forceSuSp value(Zero, 0.0);
const interpolation<vector>& HdotGradHInterp = *HdotGradHInterpPtr_;
value.Su()=
mass*3.0*constant::electromagnetic::mu0.value()/p.rho()
*magneticSusceptibility_/(magneticSusceptibility_ + 3)
*HdotGradHInterp.interpolate(p.coordinates(), p.currentTetIndices());
return value;
}
开发者ID:OpenFOAM,项目名称:OpenFOAM-dev,代码行数:21,代码来源:ParamagneticForce.C
示例16: value
Foam::forceSuSp Foam::LiftForce<CloudType>::calcCoupled
(
const typename CloudType::parcelType& p,
const typename CloudType::parcelType::trackingData& td,
const scalar dt,
const scalar mass,
const scalar Re,
const scalar muc
) const
{
forceSuSp value(Zero, 0.0);
vector curlUc =
curlUcInterp().interpolate(p.coordinates(), p.currentTetIndices());
scalar Cl = this->Cl(p, td, curlUc, Re, muc);
value.Su() = mass/p.rho()*td.rhoc()*Cl*((td.Uc() - p.U())^curlUc);
return value;
}
开发者ID:OpenFOAM,项目名称:OpenFOAM-dev,代码行数:21,代码来源:LiftForce.C
示例17: FatalErrorIn
void Foam::SwakScriptableInjection<CloudType>::setProperties
(
const label parcelI,
const label,
const scalar,
typename CloudType::parcelType& parcel
)
{
// set particle velocity
scalarField U0Vals(particleData_["U0"]);
if(U0Vals.size()<3) {
FatalErrorIn("void Foam::SwakScriptableInjection<CloudType>::setPositionAndCell")
<< "Expected a list with at least 3 values. Got " << U0Vals
<< endl
<< exit(FatalError);
}
parcel.U() = vector(U0Vals[0],U0Vals[1],U0Vals[2]);
// set particle diameter
parcel.d() = readScalar(particleData_["diameter"]);
// Info << parcel << endl;
}
开发者ID:Unofficial-Extend-Project-Mirror,项目名称:openfoam-extend-swak4Foam-dev,代码行数:23,代码来源:SwakScriptableInjection.C
示例18: value
Foam::forceSuSp Foam::SRFForce<CloudType>::calcNonCoupled
(
const typename CloudType::parcelType& p,
const scalar dt,
const scalar mass,
const scalar Re,
const scalar muc
) const
{
forceSuSp value(Zero, 0.0);
const typename SRF::SRFModel& srf = *srfPtr_;
const vector& omega = srf.omega().value();
const vector& r = p.position();
// Coriolis and centrifugal acceleration terms
value.Su() =
mass*(1.0 - p.rhoc()/p.rho())
*(2.0*(p.U() ^ omega) + (omega ^ (r ^ omega)));
return value;
}
开发者ID:EricAlex,项目名称:OpenFOAM-dev,代码行数:24,代码来源:SRFForce.C
示例19: value
Foam::forceSuSp Foam::NonInertialFrameForce<CloudType>::calcNonCoupled
(
const typename CloudType::parcelType& p,
const scalar dt,
const scalar mass,
const scalar Re,
const scalar muc
) const
{
forceSuSp value(vector::zero, 0.0);
const vector r = p.position() - centreOfRotation_;
value.Su() =
mass
*(
-W_
+ (r ^ omegaDot_)
+ 2.0*(p.U() ^ omega_)
+ (omega_ ^ (r ^ omega_))
);
return value;
}
开发者ID:0184561,项目名称:OpenFOAM-2.1.x,代码行数:24,代码来源:NonInertialFrameForce.C
示例20: tetIs
Foam::vector Foam::DampingModels::Relaxation<CloudType>::velocityCorrection
(
typename CloudType::parcelType& p,
const scalar deltaT
) const
{
const tetIndices
tetIs(p.cell(), p.tetFace(), p.tetPt(), this->owner().mesh());
const scalar x =
deltaT*oneByTimeScaleAverage_->interpolate(p.position(), tetIs);
const vector u = uAverage_->interpolate(p.position(), tetIs);
return (u - p.U())*x/(x + 2.0);
}
开发者ID:BarisCumhur,项目名称:OpenFOAM-dev,代码行数:16,代码来源:Relaxation.C
注:本文中的typenamecloudtype::parcelType类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论