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

[WIP] Add electron energy equation to hybrid solver #5323

Draft
wants to merge 48 commits into
base: development
Choose a base branch
from

Conversation

marcoacc95
Copy link
Contributor

@marcoacc95 marcoacc95 commented Sep 24, 2024

This PR adds the following changes:

  • temperature and entropy multifabs to fluid container
  • creates an electron fluid container in the warpx class specifically for the hybrid solver
  • adds a pressure calculation function that uses ideal gas expression instead of adiabatic formula
  • Electron pressure calculation now reads Te from the multifab in the electron fluid container
  • calculate Ue for electron fluid after ampere current is calculated
  • Added functions to set Ke on grid and to update Te
  • will first use qdsmc from Topanga paper for EEES (see section III-A) in: https://doi.org/10.1063/5.0177132)
  • Added a QdsmcParticleContainer similar to the FieldProbeParticleContainer, this container is needed for the qdsmc fictious particles the advect the electron entropy and updates Te in absence of sources/sinks. This particle container contains the logic to initialize and push the qdsmc particles as well as gather properties from the grid (Ke, density) and deposit Ke after pushing the particles every step.

Work in progress:

  • current implementation is only for 3D simulations, extend to the rest of the dimensions the Hybrid solver can work with.
  • Generalize DepositK to DepositScalarField for future extensions to the general qdsmc algorithm (neutral fluid)
  • integrate logic between qdsmc particle container and fluidcontainer
  • check implementation nodal/cell centered
  • Fix indices, remove from particle container Init Data and calculate on each step for each box in a consistent way when launching the gpu kernels
  • copy to gpu arrays and sync
  • test/debug

##############################################################################
Note: Field Wrappers added just to test momentarily

…b.com:marcoacc95/WarpX into add_electron_energy_equation_to_hybrid_solver
@marcoacc95 marcoacc95 changed the title Add electron energy equation to hybrid solver WIP Add electron energy equation to hybrid solver Sep 24, 2024
@marcoacc95 marcoacc95 changed the title WIP Add electron energy equation to hybrid solver [WIP] Add electron energy equation to hybrid solver Sep 24, 2024
@marcoacc95 marcoacc95 marked this pull request as draft September 25, 2024 19:19
@marcoacc95 marcoacc95 force-pushed the add_electron_energy_equation_to_hybrid_solver branch 2 times, most recently from 99863e8 to 34c9e61 Compare October 17, 2024 00:17
pre-commit-ci bot and others added 21 commits October 17, 2024 00:18
…b.com:marcoacc95/WarpX into add_electron_energy_equation_to_hybrid_solver
…er and redistributes the particles to their tiles
…b.com:marcoacc95/WarpX into add_electron_energy_equation_to_hybrid_solver
…b.com:marcoacc95/WarpX into add_electron_energy_equation_to_hybrid_solver
…b.com:marcoacc95/WarpX into add_electron_energy_equation_to_hybrid_solver
…b.com:marcoacc95/WarpX into add_electron_energy_equation_to_hybrid_solver
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants