Two adjacent cuboids
OpenLB – Open Source Lattice Boltzmann Code › Forums › on OpenLB › General Topics › Two adjacent cuboids
- This topic has 3 replies, 2 voices, and was last updated 6 years, 2 months ago by mathias.
-
AuthorPosts
-
December 5, 2018 at 10:47 am #2009ERodriguezMember
Hello,
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 );
IndicatorCuboid3D<T>cube( extend,origin);
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 error
Code: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>&)’
cuboidGeometry.add(cuboidGeometry2);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
Best regardsEduardo
December 5, 2018 at 11:13 am #2973mathiasKeymasterDear Eduardo,
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.Best
MathiasDecember 5, 2018 at 11:38 am #2974ERodriguezMemberHi Mathias,
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
Regards
EduardoDecember 5, 2018 at 12:28 pm #2975mathiasKeymasterDear Eduardo,
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.
Best
Mathias -
AuthorPosts
- You must be logged in to reply to this topic.