lanl / lanl/singularity-eos

Tentative plan for thermodynamic consistency and for potentials as needed for kinetic phase transitions

Open
#210 1 comment 1 reaction 3 assignees View on GitHub

@jhp-lanl is already working on this.

Since Dec 14, 2022.

discussion enhancement
Dominant language
C++
Stars
39
Forks
22
Avg merge
10h 22m
Merged PRs (30d)
3

Description

This is a follow up and summary of a discussion had between myself, @chadmeyer @aematts @jhp-lanl . This is the path forward for potentials as needed for @aematts 's kinetic phase transition treatment:

  • We will expose two new functions: EntropyFromDensityEnergy and EntropyFromDensityTemperature. Not all non-tabulated equations of state have an entropy in closed form. For now we will provide a stub in the base class that simply raises an error for those equations of state.
  • We will provide an introspection mechanism so a downstream code can ask an EOS if it (a) has an entropy, (b) if that entropy is thermodynamically consistent, or (c) none of the above. A function with no inputs and an enum class output probably works.
  • For tabulated EOS's we can pass through to the underlying tabulated information, e.g., through EOSPAC.
  • In the medium term we will also look into providing a tool that can plot "distance from thermodynamic consistency" for a given EOS, perhaps as a python script, so users can decide for themselves if they want to trust a given EOS or table for a given problem/application. @aematts mentioned that PEM-EOS may already have such a tool they may be willing to share.
  • In the longish term, we will consider the possibility of computing an entropy by integration and tabulating it, even for analytic EOS's with no closed form. This could perhaps be a modifier.

Thanks everyone for a productive discussion today. Please let me know if this summarizes the team's thoughts and whether or not it still makes sense.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.