如题,想关闭人工对流项,看看扩散情况,请问具体在哪个位置,alphaEqn.H看不太懂
danao
帖子
-
interFoam相方程里人工对流项在哪里? -
v1812 decmopose在v1812里,使用了 cyclic boundary
preservePatches (LEFT RIGHT) (TOP DOWN);
decompose时报错:
--> FOAM Warning : Using 'preservePatches' constraint specification. This constraint keyword is deemed to be 54 months old. --> FOAM FATAL IO ERROR: Entry 'preservePatches' has 4 excess tokens in stream 8(( LEFT RIGHT ) ( TOP DOWN ))
怎么回事
-
paraview动画坐标@aiweimo 解决了!万分感谢啊!
-
paraview动画坐标动画的每一帧range的最大值随时间变化。保存出来的动画只是第一步时刻的范围最大值。
paraview把范围上限设置成全过程的最大值?(因为我也不知道整个过程的最大值是多少。。自定义一个范围,可能会丢失实际的最大值) -
ceil(alpha2)@东岳 要判断alpha2是否大于0.5,只能用forAll了啊?。。刚试了一下,好像volScalarField不能进行布尔运算。
-
ceil(alpha2)@东岳 必须要循环吗?太慢了啊。。不能用三目运算符啊
-
ceil(alpha2)@东岳 非常感谢!还想请教一下,我仿写了个判别条件:
volScalarField test("test", alpha2=0?0:1);
报错:
error:invalid use of void expression
这是哪错了?
-
ceil(alpha2)@东岳
ceil是向上取整。换个例子 ,VolScalarField A=max(0.5,alpha2),也是同样的错误。求救! -
ceil(alpha2)定义一个标量场,赋值为ceil(alpha2),报错
cannot convert VolScalarField to double...该如何解决啊?
-
forAll boundary自定义了Sb,防止越界,对边界的值进行修正:
forAll(Sb.boundaryField(), patchI) { forAll (Sb.boundaryField()[patchI],facei) { if(Sb.boundaryField()[patchI][facei] < 0.001) { Sb.boundaryField()[patchI][facei] = 0.001; } } }
wmake失败:
error: assignment of read-only location ‘(&(& Sb.Foam::GeometricField<Type, PatchField, GeoMesh>::boundaryField<double, Foam::fvPatchField, Foam::volMesh>())->Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>::Boundary::<anonymous>.Foam::FieldField<Foam::fvPatchField, double>::<anonymous>.Foam::PtrList<Foam::fvPatchField<double> >::<anonymous>.Foam::UPtrList<T>::operator[]<Foam::fvPatchField<double> >(patchI))->Foam::fvPatchField<double>::<anonymous>.Foam::Field<double>::<anonymous>.Foam::List<double>::<anonymous>.Foam::UList<T>::operator[]<double>(facei)’ Sb.boundaryField()[patchI][facei] = 0.001;
错在哪里啊?
-
paraview如何定义与密度时间有关的物理量并显示云图?如题。
-
incompatible fields for operation源项改为显式可以计算,但结果不太对。
-
incompatible fields for operation在interFoam方程加入一个加速度aB.
volVectorField aB ( IOobject ( "aB", runTime.timeName(), mesh, IOobject::NO_READ, IOobject::NO_WRITE ), mesh, A*2*pi/T*Foam::sin(2*pi/T*runTime.value())*vector(1,0,0) );
fvm::ddt(rho, U) + fvm::div(rhoPhi, U)+... fvm::Sp(rho, aB) == fvOptions(rho, U)
一开始计算就报错:
incompatible fields for operation [U]+[aB]
请问该如何处理?
-
改写interFoam中的ghf@东岳 万分感谢!
-
改写interFoam中的ghf在UEqn.H中有:
(mixture.surfaceTensionForce()- ghf*fvc::snGrad(rho)- fvc::snGrad(p_rgh)) * mesh.magSf();
surfaceScalarField ghf("ghf", (g & mesh.Cf()) - ghRef);
g的类型是uniformDimensionedVectorField。若采用: volVectorField B,公式“𝑩∙𝒉−𝒉∙∇𝑩”该怎么写?
-
OF6可以用funkySetField吗? -
OF6可以用funkySetField吗?@东岳 funkySetFields似乎有问题,wall经过funky后从noSlip变成了zerogradient,会让结果发散。这个问题有解决办法吗?或者不用funky? 需要将速度场初始化为U=(0,0,1)^mesh.C()。
-
OF6可以用funkySetField吗?@东岳 用来初始化速度场,按照公式是非均匀的。
-
OF6可以用funkySetField吗?如题。
-
定义加速度的phi@东岳 非惯性坐标系啊,体积力与每个网格的具体位置有关,这样就不用动网格了