GithubHelp home page GithubHelp logo

Comments (24)

vincentcasseau avatar vincentcasseau commented on May 22, 2024 1

Here's a summary of where we are:

  • allow developers to set the random seed (testing, debugging, regression only): c3a750e
  • remove regression cases and leave only 5 test cases (axisymmetric blunt cylinder, orion capsule, couette flow, hypersonic corner, supersonic flat plate), as discussed in #71;
  • update test cases: sampling at time: #55, load balancing until time: #56 (not used, but entry added in loadBalancingDict): e08f133
  • fix the bug in the calculation of the mixture vibrational temperature: e20c91e
  • fix the dsmcN_* and dsmcNMean_* fields at boundaries (zeroGradient): e20c91e
  • update results folder for the axisymmetric blunt cylinder, hypersonic corner, supersonic flat plate test cases: 767e6b2
  • provide results folder for the couette test case: be4718c
  • averagingAcrossManyRuns: fix the bug that prevents from resuming parallel DSMC simulations: ec6229e
    • the simulation must to be resumed using the same number of processors
    • If you're planning on resuming your simulation in the future, here's what you can do
      + reconstrucPar -latestTime
      + delete everything but the time/uniform/ sub-folder in the processors directories and store them in backup-processors
      + to resume the simulation: cp -r backup-processors/processor* . && decomposePar -force -latestTime
  • update loadBalancingDict and fieldPropertiesDict if entries in #55 and #56 are edited during the execution

from hystrath.

timteichmann avatar timteichmann commented on May 22, 2024

Hello Jai,
One possible reason I can think of is that the controlDict is also present in the decomposed processor folder. Can you check if this is the case (if yes there will be one or more files at processorN/system/controlDict).
However, from personal experience I can recommend to set up the simulation once and then let it run without changing any parameters (except the starting of the averaging ofc). Many of the settings in the original OpenFOAM are not respected by dsmcFoam+ and some of them might lead to crashes like the one you described.

From your log I can tell that it is probably failing in

hyStrath/src/lagrangian/molecularDynamics/general/time/timeDataMeas/timeDataMeas.C line 361 ff.

Maybe this helps you locate the exact cause of this bug.

from hystrath.

jaimakhijaa avatar jaimakhijaa commented on May 22, 2024

Hello Tim,
Thank you for responding to my query. I did have a look in multiple processor folders and other than the time steps, the folders present are 'constant', 'boundaries', and 'fieldMeasurements'. So I don't think the controlDict file is present there and therefore, not the cause of the error.
I shall look into the file whose directory you have shared. Could you tell me what you saw in the log file that you suggested I have a look in the timeDataMeas.C file? Neither the file name nor the directory was mentioned in the log file.

Regards,
Jai

from hystrath.

vincentcasseau avatar vincentcasseau commented on May 22, 2024

Hi Jai,
Could you please provide a minimal, reproducible test case?
Regards,
Vincent

from hystrath.

jaimakhijaa avatar jaimakhijaa commented on May 22, 2024

Yeah sure, have zipped it in here. I have removed few files to upload the files within the limit of GitHub (10 MB). Also, I would like to know if there are any differences between how rhoNMean is calculated in dsmcFoam and dsmcFoam+. I cannot calculate macroscopic variables such as velocity, temperature, and pressure in dsmcFoam but dsmcFoam+ can calculate the same.

Regards,
Jai

hollow_cylinder_flare_dsmcFoam+.zip

from hystrath.

timteichmann avatar timteichmann commented on May 22, 2024

Thanks for the fixes Vincent! Also apologies that my changes did apparently create issues with the hybrid code after all.
Do you think that the bug regarding averagingAcrossManyRuns is related with #55 or #56?

@jaimakhijaa: I do not understand your question regarding the number density. How is this related to the velocity etc.? You can compare the calculation routines directly. The source code is available in both cases. In case of dsmcFoam+ you can find it here: hyStrath/src/lagrangian/dsmc/macroscopicProperties/derived/combined/dsmcVolFields/dsmcVolFields.C, in case of dsmcFoam OpenFOAM-8/src/lagrangian/DSMC/clouds/Templates/DSMCCloud/DSMCCloud.C (e.g. for v8 of OpenFOAM). Hope this helps a little.

from hystrath.

vincentcasseau avatar vincentcasseau commented on May 22, 2024

Not at all Tim. It was an excellent step in the right direction. This file, and many others that you flagged as deprecated (WIP), are/were chaotic.
averagingAcrossManyRuns actually works in serial. I compared the current implementation to the one before #55 and I can't see a problem. It makes me wonder if it has ever been tested in parallel...
I will check out dsmcFoam+ as of last September and test it later this week.

PS: Thanks Jai for the zip!

from hystrath.

vincentcasseau avatar vincentcasseau commented on May 22, 2024

In the next commit, I am planning on renaming a few fields that are unnecessarily long:

  • UMean -> U
  • translationalT -> Ttra
  • rotationalT -> Trot (printed only if this mode is included)
  • vibrationalT -> Tvib (printed only if this mode is included)
  • electronicT -> Telec (printed only if this mode is included)
  • overallT -> Tov (printed if there is at least one internal energy mode included)
  • variableHardSphereMeanFreePath -> mfp
  • mfpCellRatio -> mfpToDx
  • mctTimeStepRatio -> mctToDt
  • meanCollisionTime -> mct
  • meanCollisionSeparation -> mcs
  • surfaceHeatTransfer -> wallHeatFlux (harmonisation with CFD)
  • surfaceShearStress -> wallShearStress (harmonisation with CFD)

Does anyone have any objection?
Thanks

Update: done in ec6229e

from hystrath.

vincentcasseau avatar vincentcasseau commented on May 22, 2024

Hi Jai,
This is fixed. Please have a look at this comment #73 (comment)
I'll close this issue once all checkboxes are ticked.
Thanks,
Vincent

from hystrath.

jaimakhijaa avatar jaimakhijaa commented on May 22, 2024

Thank you for your help Vincent and Tim!
Could you share the paper which you've used for validating the Orion CEV case and building the tutorial? I couldn't find it in your website.

from hystrath.

vincentcasseau avatar vincentcasseau commented on May 22, 2024

On the Orion capsule, we have @rophys's PhD thesis:
R. C. Palharini, 09/2014: Atmospheric Reentry Modelling Using an Open-Source DSMC Code, pp. 86-99
but the altitude and the angle of attack look different.
Do you have a conf. paper or journal article on the Orion, Rodrigo?

from hystrath.

rophys avatar rophys commented on May 22, 2024

from hystrath.

jaimakhijaa avatar jaimakhijaa commented on May 22, 2024

Hi @rophys,
Is this the paper you're talking about? https://arc.aiaa.org/doi/10.2514/6.2006-8081
Can't find any attachment in your comment.

from hystrath.

vincentcasseau avatar vincentcasseau commented on May 22, 2024

It looks like it:
R. C. Palharini, 09/2014: Atmospheric Reentry Modelling Using an Open-Source DSMC Code, Ref 193
[193] J. N. Moss, K. A. Boyles, and F. A. Greene. Orion aerodynamics for hypersonic free
molecular to continuum conditions. In 14th AIAA/AHI International Space Planes and
Hypersonic Systems and Technologies Conference. Canberra, Australia, 2006.

The attachment didn't work because he replied by email. However, please do not attach papers here for copyright reasons.

from hystrath.

rophys avatar rophys commented on May 22, 2024

from hystrath.

vincentcasseau avatar vincentcasseau commented on May 22, 2024

I will open a new issue and close this one for clarity.

from hystrath.

jaimakhijaa avatar jaimakhijaa commented on May 22, 2024

Hello @vincentcasseau
I am facing an issue in starting a new simulation now using dsmcFoam+. I have attached the log file for your reference. The case setup was modified to run the case using staticFvMesh and the error of floating point exception was generated. Any form of help would be appreciated.

Regards,
Jai
log.txt

from hystrath.

vincentcasseau avatar vincentcasseau commented on May 22, 2024

Hi Jai,

The case setup was modified to run the case using staticFvMesh

Why would you like to do this?

from hystrath.

jaimakhijaa avatar jaimakhijaa commented on May 22, 2024

Hi Jai,

Why would you like to do this?

I did it for faster simulation time as this is a trial run, not the final run. I also did try running with the default dynamicMeshDict but did face the same floating point exception error.

from hystrath.

vincentcasseau avatar vincentcasseau commented on May 22, 2024

Are the tutorial cases running? i.e., is your code correctly installed?
There are no useful info in the log.

from hystrath.

jaimakhijaa avatar jaimakhijaa commented on May 22, 2024

I just tried running the orion107kmNR tutorial and did get an error in running the case using the Allrun script. Didn't face any error during installation though. Any idea what might have caused it? Attached the log for the tutorial case in case it helps.
log_dsmcFoam+.txt

from hystrath.

vincentcasseau avatar vincentcasseau commented on May 22, 2024

Change dir to username-v1706/src/ and username-v1706/applications/ and type in both
wclean all
Then, sync the DSMC module in hyStrath/ using the install script.

from hystrath.

jaimakhijaa avatar jaimakhijaa commented on May 22, 2024

I just tried what you've mentioned above and I'm getting the same error for the orion107kmNR tutorial. Didn't face any error during synchronization though. Any idea what might have caused it? Attached the log for the tutorial case in case it helps.
log_orion107kmNR.txt

from hystrath.

vincentcasseau avatar vincentcasseau commented on May 22, 2024

Hi,
I reinstalled everything from scratch at my end and it works. As anticipated, there are no issues with the current commit.
So you should do the same:

  1. delete src/, applications/ and platforms/ in $WM_PROJECT_USER_DIR;
  2. run git pull
  3. install what you need
    Thanks,
    Vincent

from hystrath.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.