Two adjacent cuboids
December 5, 2018 at 10:47 am #2009ERodriguezMember
I have what I think it is a simple question but I may be wrong.
I know that, at the moment, there is no grid-refinement functionality implemented in OLB. As I understand, this implies the mesh cannot be modified once the simulation is started/running. However, from the manual (point 6.1.1 and, in particular, Fig. 6.1), I understand that I can have two adjacent geometries with two different resolutions (grid spacing) in each of them.
As a toy problem, I want to get two cuboids side by side where the second one has double the resolution of the first one.
I can define both cubes based on indicators as:Code:Vector<T,3>origin( 0.0, 0.0, 0.0 );
Vector<T,3>extend( 1.0, 1.0, 1.0 );
CuboidGeometry3D<T>cuboidGeometry(cube, converter.getConversionFactorLength(), 1);
Vector<T,3>origin2( 1.0, 0.0, 0.0 );
IndicatorCuboid3D<T>cube2( extend,origin2 );
CuboidGeometry3D<T>cuboidGeometry2(cube2, 2*converter.getConversionFactorLength(), 1);
But I am having problems in adding them.
I was trying:Code:cuboidGeometry.add(cuboidGeometry2);
but it does not work and it gives me the following errorCode:MyFile.cpp: In function ‘int main(int, char**)’:
MyFile.cpp:330:37: error: no matching function for call to ‘olb::CuboidGeometry3D<double>::add(olb::CuboidGeometry3D<double>&)’
Do you have any help on how can I proceed from here?
And, additionally, I have two more questions:
-) Do you see any problem in this way of working (two or more adjacent meshes with different resolutions)
-) I am having trouble to understand how to use/call some of the functions forming OLB, I have read the user guide but the ‘class list’ for developers is hard to read. Is there anything intermediate which I could use to keep learning this?
Thank you very much
EduardoDecember 5, 2018 at 11:13 am #2973mathiasKeymaster
a/ At the moment we have no grid refinement implemented. Therefore, your idea will not work.
b/ To have a good start, you can come to our next spring school.
MathiasDecember 5, 2018 at 11:38 am #2974ERodriguezMember
Thanks for you quick response.
In that case, I misunderstood the purpose of the division in Cell->Lattice->superLattice, and I thought that the lack of grid refinement reffered only to the dynamic capacity but I could attach two lattices of different spacing together.
As for the spring school; Although I have seen that it is strongly recommended in the forum, I am hesitant about its suitability for my application. It is very unlikely that I have the time to develop new code and I am using this only as a end user. Further, for large aerodynamic problems, as the ones I am interested in, mesh refinement is significantly important (I need mesh resolution to get the model details but I cannot afford to have the whole domain at the finest level or my simulations would run for ages!) so I am not entirely sure whether I would be the adequate person for the workshop
EduardoDecember 5, 2018 at 12:28 pm #2975mathiasKeymaster
A grid refinement will need time to be finished. Especially since there are still issues in the LBM theor – so it is not just the coding. The spring school is design for starters in LBM and OpenLB. And more for applicants that developers.
- You must be logged in to reply to this topic.