Changing Cell Linearization

Hi Giuseppe,

I want to change the cell linearization in my model because now I can’t run my case with more than 1 GPU. Now, the cell linearization is y,z,x. How Can I change it?

Regards,
Alireza

Hello @AlirezaZarei,

currently cell linearization is a compile-time option (e.g. make linearization=zyx)

Thank you!
In my case the linearization is yzx and my flume is cut along x-axis (while using multi-GPU). I want it to be cut along the y-axis. I used different combinations of x, y, and z but still, it’s cut along the x-axis. I checked the source code but couldn’t find an explanation for the order of the x,y, and z in the linearization. Could you please tell me how I can cut the domain in y direction (along flume width)?

Regards,
Alireza

Ah, sorry, in that case you don’t want to change the linearization. To change the axis used for domain splitting, you should override the fillDeviceMap() member function for your test case, and then define it by calling a different fillDeviceMapByAxis, something like:

void YourTestCase::fillDeviceMap()
{
    fillDeviceMapByAxis(Y_AXIS);
}

You can see this in action for example in the DamBreak3D test case.