Author: jonas1
A BoxProcessingFunctional3D_L is intended to act on a
single lattice, while a BoxProcessingFunctional3D_LL acts at the same
time on two lattices, for example to transfer information from one
lattice to the other. As examples that are potentially helpful to you,
a fully working instance of the BoxProcessingFunctional3D_LL can be
found in palabos/src/multiPhysics/boussinesqThermalProcessor3D.h,
where it is used to couple a fluid with the temperature field, and
other examples are in
palabos/src/dataProcessors/dataAnalysisFunctional3D.h, where the data
processors are used to transfer data from one lattice to another.
大意:
BoxProcessingFunctional3D_L 作用于一个lattice上。
BoxProcessingFunctional3D_LL同时作用在两个lattice上,比如从lattice1传递信息至lattice2,可以在palabos/src/multiPhysics/boussinesqThermalProcessor3D.h中找到一个例子 。这个例子是用来耦合流体与温度场。
另一个例子是palabos/src/dataProcessors/dataAnalysisFunctional3D.h,这里的数据处理器被用来从一个lattice传递信息至另一个lattice。
Author: orestis
Hello, if your boundary is not defined though dynamics then you have
to use a “mask” where you manually define the type of cell.For more than two fields it is totally possible. You have to use the
generic processors. For example ConvertNTensorToScalarFunctional3D is
using them
大意:提问者询问是否有处理3个lattices以上的函数,以及能不能这样判断格点是否为反弹格点if (cell.getDynamics().Name==“Bounceback”) {…}
Orestis回复为如果边界条件不是通过dynamics定义,则需要自己手动给这些类型的cell设定“mask”,多个lattices的处理器可用generic processors,例如ConvertNTensorToScalarFunctional3D。