关于理解setFieldsDict
-
大家好,我在看v1912的overInterDyMFoam中的floatingBody算例,里面的system/setFieldsDict有些地方不理解,
- defaultFielsValues是设置场的默认值,默认全是0,然后volScalarFieldValue zoneID的意思是什么意思?
- 用regions指定水域的时候,为什么需要两个box,而且这两个box是有重合的,box1(-100 -100 -100)(100 100 0.45),box2(0.9 0.9 -100)(100 100 0.75);
- 给c0设置zoneID 0,给c1设置zoneID 1的意思是不是把c0集合叫做0,c1 这集合起名叫做1?
-
- volScalarFieldValue zoneID 的意思是有一个场的名字叫 zoneID,默认值是123
- 两个box 的并集区域设置为水域,之所以弄成两个box,大概是因为水域不是一个规则的 box,所以用两个box。如果是更复杂的形状,那还可能是 3个 box,或者用其他的复杂形状。
- 不是,而是对属于 c0 这个set 的网格,把场 zoneID 的值设置为0,同理,c1里面的网格,zoneID 设置为 1。
setFieldDict 的逻辑还是比较清楚的,无非是指定一个区域,把这个区域内的某个场设置为某个值。区域的指定方式可以是规则的 box,sphere之类的,也可以是某个 cellSet,至于这个cellSet 则可以使用 topoSet 来生成。topoSet 生成 cellSet 有很多很多选项可以用。