Warwick-Plasma / epoch

Particle-in-cell code for plasma physics simulations
https://epochpic.github.io
GNU General Public License v3.0
184 stars 58 forks source link

ionization problem #679

Closed xh-ui closed 4 months ago

xh-ui commented 4 months ago

Dear all,

There are some questions about the ionization :

  1. In new version, "ionisation_energies" is not descripted anymore, but how to set the ionisation energy? Is the ionisation energy included in atomic number by default?

  2. When I use a laser pulse to ionize a gold ball and see how it generate free electrons.There is gold bulk (not ionized) at first. After laser pulse induced ionization, electrons will first concentrate on gold surface and then fly out from surface.
    2.1 How to define the number_density of gold species and electron species? Are they equal or electron density should be set to zero? 2.2 The charge of gold is 0 or +1? Generally speaking, when ionize a uncharged meterial, the charge of the meterial particle should be set to 0 or +1? 2.3 The output number density of gold is not equal to what I set in code. 2.4 The output number density is different between each grid. The input.txt is: my_input2.txt

  3. About npart_per_cell and npart. When should npart_per_cell be used?

  4. Is there any other difference between new and old version of ionisation ?

@Status-Mirror Thank you!

Status-Mirror commented 4 months ago

Hey @xh-ui,

You might find our new ionisation examples to be a useful resource.

To address your specific questions:

  1. Ionisation and binding energies are read from files in the epoch/epoch2d/src/physics_packages/TABLES directory (also in epcoh1d and epoch3d). The ion species is identified using the species atomic-number and charge-state - you no longer need to provide these yourself.
  2. If you want to see how a neutral gold ball is ionised by a laser, start with a gold species of charge-state 0, at its natural number density. You also want to include an electron species with zero density. The code will automatically generate empty species for gold ions at different charge-states. As the laser ionises the target, gold macro-particles will move to species with higher charge-states, and macro-electrons will be added to the simulation in your empty electron species.
  3. npart_per_cell and npart control the same thing - both can be used to specify the inital number of loaded macro-particles. Just pick whichever is easiest for you to think about.
  4. There are some implementation differences. Previously the collisional ionisation cross section had a unit error in the calculation, and the cross section was too low. It also didn't include cross-section contributions from the inner bound-electrons. The full functionality of the new approach is documented in our ionisation examples

Hope this helps, Stuart

xh-ui commented 4 months ago

Thank you for your answer! It really helps a lot!