Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Help on Fixing Error with snappyMultiRegionHeater case #7

Open
Cledito-Delta opened this issue Oct 4, 2024 · 10 comments
Open

Help on Fixing Error with snappyMultiRegionHeater case #7

Cledito-Delta opened this issue Oct 4, 2024 · 10 comments
Assignees
Labels
bug Something isn't working

Comments

@Cledito-Delta
Copy link
Collaborator

Please help solve the problem with the recently uploaded OpenFOAM case, snappyMultiRegionHeater. The following error comes up after running the Allrun_Modified bash script and then running "chtMultiRegionFoam" in the terminal:

#0 Foam::error::printStack(Foam::Ostream&) at ??:?
#1 Foam::sigFpe::sigHandler(int) at ??:?
#2 ? in /lib/x86_64-linux-gnu/libc.so.6
#3 Foam::heRhoThermo<Foam::rhoReactionThermo, Foam::SpecieMixture<Foam::singleComponentMixture<Foam::constTransport<Foam::species::thermo<Foam::hConstThermo<Foam::perfectGasFoam::specie >, Foam::sensibleEnthalpy> > > > >::calculate(Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh> const&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, Foam::GeometricField<double, Foam::fvPatchField, Foam::volMesh>&, bool) at ??:?
#4 Foam::rhoReactionThermo::addfvMeshConstructorToTable<Foam::heRhoThermo<Foam::rhoReactionThermo, Foam::SpecieMixture<Foam::singleComponentMixture<Foam::constTransport<Foam::species::thermo<Foam::hConstThermo<Foam::perfectGasFoam::specie >, Foam::sensibleEnthalpy> > > > > >::New(Foam::fvMesh const&, Foam::word const&) at ??:?
#5 Foam::autoPtrFoam::rhoReactionThermo Foam::basicThermo::NewFoam::rhoReactionThermo(Foam::fvMesh const&, Foam::word const&) at ??:?
#6 Foam::rhoReactionThermo::New(Foam::fvMesh const&, Foam::word const&) at ??:?
#7 ? at ??:?
#8 ? in /lib/x86_64-linux-gnu/libc.so.6
#9 __libc_start_main in /lib/x86_64-linux-gnu/libc.so.6
#10 ? at ??:?
Floating point exception

The Allrun script is originally from the tutorials.

@Cledito-Delta Cledito-Delta added the bug Something isn't working label Oct 4, 2024
@RobertLRead
Copy link
Contributor

RobertLRead commented Oct 4, 2024 via email

@RobertLRead
Copy link
Contributor

RobertLRead commented Oct 6, 2024

Looking at this today after considerable trouble getting my machine working, I get exactly the same error. I am not sure how to do it yet.

Note: When I ran Allrun-serial, it seems to run without error, and even seems to have run chtMultiRegionFoam.

@Cledito-Delta
Copy link
Collaborator Author

Cledito-Delta commented Oct 6, 2024

Thanks Robert for the feedback.
I have realised that the modified Allrun script for some reason is not running the "changeDictionary" application well. I believe it is due to the "for loop" not properly constructed.

It is supposed to run the changeDictionary with the region option for every region in the case. (The changeDictionary gives the initial boundary conditions in the 0 directory)

I run it manually by myself "changeDictionary -region bottomAir' and it worked. [The other regions are topAir, heater, leftSolid, rightSolid].

Maybe you can help with fixing the for loop
Thanks

@RobertLRead
Copy link
Contributor

I will comply. I will (slighly) modify the Allrun_modified script to "echo" the foamListRegions environment variable.

At present I do not understand what "runApplication changedDictionary -region $region" is supposed to do---by which, I mean I don't know how that is a correct Linux command to be executed by the shell. But I will study it. However, now that I have a path to running it, it is tempting to start to attempt to modify it to be more like a fire, or to modify one of the .stls.

@Cledito-Delta
Copy link
Collaborator Author

The runApplication seems to run the preprocessing commands from blockMesh, surfaceFeatureExtract...
I believe you can best figure it out or write a better code to achieve the same results. (I think the $region was supposed to show the regions but I echoed it and it is empty)

I think you can modify it that way too.
Looking forward to your results.

@RobertLRead
Copy link
Contributor

"RunApplication" is added to the "PATH" so that it can be run by this command:

. ${WM_PROJECT_DIR:?}/bin/tools/RunFunctions

This defines "runApplication", which takes several arguments like "changeDictionary".

It is the case that runs for me:

./Allrun_Modified 
blockMesh already run on /home/ubuntu/EcoPot/OpenFOAM/snappyMultiRegionHeater: remove log file 'log.blockMesh' to re-run
surfaceFeatureExtract already run on /home/ubuntu/EcoPot/OpenFOAM/snappyMultiRegionHeater: remove log file 'log.surfaceFeatureExtract' to re-run
snappyHexMesh already run on /home/ubuntu/EcoPot/OpenFOAM/snappyMultiRegionHeater: remove log file 'log.snappyHexMesh' to re-run
Restore 0/ from 0.orig/
splitMeshRegions already run on /home/ubuntu/EcoPot/OpenFOAM/snappyMultiRegionHeater: remove log file 'log.splitMeshRegions' to re-run
AAA
bottomAir topAir heater leftSolid rightSolid
BBB
bottomAir
changeDictionary already run on /home/ubuntu/EcoPot/OpenFOAM/snappyMultiRegionHeater: remove log file 'log.changeDictionary' to re-run
BBB
topAir
changeDictionary already run on /home/ubuntu/EcoPot/OpenFOAM/snappyMultiRegionHeater: remove log file 'log.changeDictionary' to re-run
BBB
heater
changeDictionary already run on /home/ubuntu/EcoPot/OpenFOAM/snappyMultiRegionHeater: remove log file 'log.changeDictionary' to re-run
BBB
leftSolid
changeDictionary already run on /home/ubuntu/EcoPot/OpenFOAM/snappyMultiRegionHeater: remove log file 'log.changeDictionary' to re-run
BBB
rightSolid
changeDictionary already run on /home/ubuntu/EcoPot/OpenFOAM/snappyMultiRegionHeater: remove log file 'log.changeDictionary' to re-run

Use paraFoam -touch-all to create files for paraview post-processing

@Cledito-Delta
Copy link
Collaborator Author

Thanks for the insight on that.

I hope you find a way to fix it. In the meantime, I will have to run changeDictionary manually which is no problem.

Thanks

@RobertLRead
Copy link
Contributor

RobertLRead commented Oct 6, 2024

Note, reading through the tutorial, I found I had to add these steps:

./Allclean
./Allrun-serial 
foamToVTK
paraFoam -touch-all

which seem to give pretty good results in ParaView for me.

@RobertLRead
Copy link
Contributor

@Cledito-Delta --- I am not sure it is broken. Is there a reason not to run:

./Allclean
./Allrun-serial 
foamToVTK
paraFoam -touch-all

???

Can you try that, and see if it works well for you?

@Cledito-Delta
Copy link
Collaborator Author

Sure.
I will run it and update you on what happens.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants