Skip to content

Cylinder3D Simulation gets aborted after changes in the dimensions.

OpenLB – Open Source Lattice Boltzmann Code Forums on OpenLB General Topics Cylinder3D Simulation gets aborted after changes in the dimensions.

Viewing 14 posts - 1 through 14 (of 14 total)
  • Author
    Posts
  • #9071

    Dear OpenLB team,
    I made changes in the dimenssion of the stl file in which I made a new file where I extended the Y-axis upto 2000 mm using Solidworks and the others remain same. It gives out a message like this:

    [UnitConverter] ————————————————————-
    [prepareGeometry] Prepare Geometry …
    [SuperGeometry3D] cleaned 0 outer boundary voxel(s)
    cylinder3d: ../../../src/functors/analytical/indicator/indicatorF3D.hh:643: olb::IndicatorCuboid3D<T>::IndicatorCuboid3D(olb::Vector<T, 3>, olb::Vector<T, 3>) [with S = float]: Assertion `_xLength>0 && _yLength>0 && _zLength>0′ failed.
    Aborted

    I made changes in the code also where the make command doesnot show any error but still am getting the simulation aborted. The changes are given below:
    // Instantiation of the STLreader class
    // file name, voxel size in meter, stl unit in meter, outer voxel no., inner voxel no.
    STLreader<T> stlReader( “cylinder3d.stl”, converter.getConversionFactorLength()/5, 0.001 );
    IndicatorLayer3D<T> extendedDomain( stlReader, converter.getConversionFactorLength()/5 );

    // Instantiation of a cuboidGeometry with weights
    #ifdef PARALLEL_MODE_MPI
    const int noOfCuboids = singleton::mpi().getSize();
    #else
    const int noOfCuboids = 1;
    #endif
    CuboidGeometry3D<T> cuboidGeometry( extendedDomain, converter.getConversionFactorLength()/5, noOfCuboids );

    // Instantiation of a loadBalancer
    HeuristicLoadBalancer<T> loadBalancer( cuboidGeometry );

    What is the issue? How to solve it? Please reply

    #9072
    Adrian
    Keymaster

    As I said in the other thread where you posted the same question the likely issue is that your unit scaling is wrong. You can check this by e.g. opening both STLs in Paraview, the new one will likely be much smaller than the old one.

    You can adjust the scaling in the STL reader arguments.

    #9073

    Dear Adrian,
    I have seen both the files, the dimenssions are same but I have extended in the Y-axis. But the origin of the files are different. Is this creating the problem? Please reply.

    Thank you

    #9074
    Adrian
    Keymaster

    Obviously, once you have identified the differences between a working and a non working case this difference is a prime candidate for the problem.

    You need to read and understand the cuboid geometry setup as well as the prepareGeometry function in order to identify what you need to adapt for your case.

    I also, again, recommend a thorough read of the user guide lessons.

    #9075

    I will try that.

    Thank you

    #9076

    Dear ADrian,
    I am confused in one thing that when I make the new file it will be an stl file. But the Openlb folder also has a ftstd file. So how to create that “ftsd” file? Will it affect the simulation?

    Thank you

    #9077

    You mean that if I change the dimensions in the stl file, do I need to make changes in the PrepareGeometry function also or I need to adjust the scaling in the stl reader argument? Please Reply

    Thank you

    #9080

    Dear Adrian,
    I have checked all the things and saw that the measurements, origin all are as same as the previous file except I extended the Y-axis from 410 mm to 2000 mm. Do I need to make changes in the PrepareGeometry function also or I need to adjust the scaling in the stl reader argument? Please Reply.

    Thank you

    #9087
    stephan
    Moderator

    Dear atanuchaudhury,

    thank you for posting. It is likely that you have to adapt your code to the new geometry loaded.
    If this absolutely does not work, please consider using geometry primitives (indicator functors as in the 2D example) instead.

    However, we cannot offer full support on debugging your complete application.
    You might want to consider taking part in our upcoming spring school for this.
    More information is given here: https://www.openlb.net/spring-school-2025/

    BR
    Stephan

    #9093

    ok one thing please tell me that if I use the geometry primitives (indicator functors as in the 2D example) as per the dimensions in the stl file right and then I have to change the PrepareGeometry function also right..

    Thank you

    #9094
    Adrian
    Keymaster

    There is one thing you definitely should do: Read the user guide and do ateast a basic investigation of your problem yourself (e.g. read the code of the app, use a debugger, …)

    Otherwise you won’t ever be able to do anything on your own using OpenLB.

    #9099

    Thank you but it doesnot worked on the file made by Solidworks rather it worked with the Freecad file.

    #9123

    Dear OpenLB team,

    I tried to run a new model using GPU in servers. In the new model I extended the Y-axis from 410 mm to 2000 mm and also set the boundary condition to “SetSlip” boundary. When I try to run it in GPU, I am getting this problem. :

    BlockGeometryStatistics3D] WARNING: no discreteNormal is found
    [setslipBoundary] Warning: Could not setSlipBoundary (166, 60, 83), discreteNormal=(0,0,0,0), set to bounceBack
    [BlockGeometryStatistics3D] WARNING: no discreteNormal is found
    [setslipBoundary] Warning: Could not setSlipBoundary (168, 61, 83), discreteNormal=(0,0,0,0), set to bounceBack
    [BlockGeometryStatistics3D] WARNING: no discreteNormal is found
    [setslipBoundary] Warning: Could not setSlipBoundary (169, 60, 83), discreteNormal=(0,0,0,0), set to bounceBack
    [BlockGeometryStatistics3D] WARNING: no discreteNormal is found
    [setslipBoundary] Warning: Could not setSlipBoundary (170, 62, 83), discreteNormal=(0,0,0,0), set to bounceBack
    [BlockGeometryStatistics3D] WARNING: no discreteNormal is found
    [setslipBoundary] Warning: Could not setSlipBoundary (172, 63, 83), discreteNormal=(0,0,0,0), set to bounceBack
    [BlockGeometryStatistics3D] WARNING: no discreteNormal is found
    [setslipBoundary] Warning: Could not setSlipBoundary (232, 93, 83), discreteNormal=(0,0,0,0), set to bounceBack
    [BlockGeometryStatistics3D] WARNING: no discreteNormal is found
    [setslipBoundary] Warning: Could not setSlipBoundary (235, 94, 83), discreteNormal=(0,0,0,0), set to bounceBack
    [BlockGeometryStatistics3D] WARNING: no discreteNormal is found
    [setslipBoundary] Warning: Could not setSlipBoundary (235, 96, 83), discreteNormal=(0,0,0,0), set to bounceBack
    [BlockGeometryStatistics3D] WARNING: no discreteNormal is found
    [setslipBoundary] Warning: Could not setSlipBoundary (237, 99, 83), discreteNormal=(0,0,0,0), set to bounceBack
    [BlockGeometryStatistics3D] WARNING: no discreteNormal is found
    [setslipBoundary] Warning: Could not setSlipBoundary (238, 99, 83), discreteNormal=(0,0,0,0), set to bounceBack
    [BlockGeometryStatistics3D] WARNING: no discreteNormal is found
    [setslipBoundary] Warning: Could not setSlipBoundary (242, 99, 83), discreteNormal=(0,0,0,0), set to bounceBack
    [prepareLattice] Prepare Lattice … OK
    [main] starting simulation…
    [setBoundaryValues] step=0; maxVel=0.005
    [Timer] step=0; percent=0; passedTime=7.154; remTime=915705; MLUPs=0
    [LatticeStatistics] step=0; t=0; uMax=0.005; avEnergy=2.49386e-08; avRho=1.00001
    [getResults] pressure1=0; pressure2=0; pressureDrop=0; drag=0; lift=0
    cylinder3d: ../../../src/utilities

    What is the issue? How to solve it? Please reply

    Thank you

    #9124

    [getResults] pressure1=0; pressure2=0; pressureDrop=0; drag=0; lift=0
    cylinder3d: ../../../src/utilities/vectorHelpers.h:204: std::vector<_Tp> olb::util::normalize(const std::vector<_Tp>&) [with T = float]: Assertion `scale>0′ failed.
    Aborted (core dumped)

    This is the problem.

Viewing 14 posts - 1 through 14 (of 14 total)
  • You must be logged in to reply to this topic.