我想尝试计算1000时间步,然后从第500步计算到1500步,再从第1000步计算到2000步,这样可以实现嘛?每次重算时候,我希望根据情况改变出口值,我考虑过每次手动修改,但是希望可以通过程序实现,因为次数太多,没办法每次都手动修改。
希望能给与指点,谢谢各位!
我想尝试计算1000时间步,然后从第500步计算到1500步,再从第1000步计算到2000步,这样可以实现嘛?每次重算时候,我希望根据情况改变出口值,我考虑过每次手动修改,但是希望可以通过程序实现,因为次数太多,没办法每次都手动修改。
希望能给与指点,谢谢各位!
@李东岳 请问老师,可以实现计算一定步数后,时间步倒退,重新计算一遍嘛?我想尝试计算1000时间步,然后从第500步计算到1500步,再从第1000步计算到2000步,这样可以实现嘛?
我希望能够在计算域中创建一个内部面,仅用来导出数据,不知道有什么方便的方法没有。用fluent网格导入后,内部面直接消失了。
我在尝试通过externalCoupled进行耦合计算,利用externalCoupled输出网格patch的流速并与其他算法耦合。但我并不会在openFOAM的网格中建立内部面,尝试建立了循环边界,但是由于边界类型是cyclic而不是patch,无法用externalCoupled进行输出控制。
希望各位能够给予指点,感谢您的宝贵时间。
// Control for external coupled simulation
externalCoupled
{
// Mandatory entries
type externalCoupled;
libs (fieldFunctionObjects);
// Directory to use for communication
commsDir "<case>/comms";
// Does external process start first
// initByExternal true;
initByExternal false;
regions
{
// Region name (wildcards allowed)
".*"
{
// Patch or patchGroup
outlet
{
// Fields to output in commsDir
writeFields (U);
// Fields to read from commsDir
readFields ();
}
cyclicFaces_master
{
// Fields to output in commsDir
writeFields (U);
// Fields to read from commsDir
readFields ();
}
}
}
// Enabled or not?
#sinclude "<case>/externalCoupled.control"
// Optional entries
waitInterval 5;
timeOut 12000;
statusDone done; // Any arbitrary status=... value
calcFrequency 1000; //必须大于1
不好意思,这个TJunctionFan没看懂是在做什么模拟,他建立的这个cyclicFaces是做什么的,这个能告诉我一下吗?谢谢
啊,有了有了,太谢谢了!
@李东岳
老师,您好。我在尝试创建一个内部面,在计算的过程实时导出这个面的速度,不知道可不可行,在您提到的算例中,是不是有相关的信息?
@古奇古奇啦啦 你找到东岳老师说的算例了嘛?我的tutorials中没有,能不能分享一下这个算例呢?谢谢。
@李东岳 十分感谢
@李东岳 老师,稀薄两相流用什么求解器比较好? 我在用dsmcFoam,这个能计算两种气体的混合吗?谢谢
采用dsmc方法模拟稀薄气体混合过程,混合室包含两个入口,分别进入氧气和氩气,请问如何设置?dsmcProperties中只能设置一个气体(单质或混合物),如何让不同的入口流入不同的气体?