SmileiPIC / Smilei

Particle-in-cell code for plasma simulation
https://smileipic.github.io/Smilei
343 stars 120 forks source link

User-defined ionization process #591

Closed shinsy85 closed 1 year ago

shinsy85 commented 1 year ago

Hi folks,

I'm studying a laser wakefield acceleration with an ionization process. I have a question or a problem to make an input script.

I want to distribute pre- and partially ionized ions and corresponding electrons at background. For example, Al3+ ions and 3 electrons. And with laser-plasma interaction, that is, with field ionization process, Al3+ ions are more ionized to Al11+ (or Al13+) and generated 8~10 electrons.

I written Species() in an input script as follows,

----------------------------------------------------------------------------------------

Species( name = 'aluminum', position_initialization = 'regular', momentum_initialization = 'cold', particles_per_cell = 4, mass = 26.9815391836.0, charge = 3.0, number_density = trapezoidal(nef_nc/11, xvacuum=0, xslope1=zramp_n, xplateau=Lz_n1000), boundary_conditions = [ ["remove", "remove"], ["remove", "remove"], ], ionization_model = 'tunnel', ionization_electrons = 'electron', atomic_number = 13 )

----------------------------------------------------------------------------------------

But, with such Species(), it seems that ionization process are occurred with ionization rate of aluminum, but arbitrary ions which has +3 charge and aluminum mass are ionized.

Is setup right I wanted?

If not, how to write a Species()? Do I use user-defined ionization_rate? I find user-defined ionization_rate, but it does not seem appropriate to solve my problem.

Below is a full script for my simulation. input_shinsy85.txt

PS : I use a supercomputing system. But with it, numpy does not use yet. So I want a solution without numpy.

Thank you.

MickaelGrech commented 1 year ago

Hello, It is a bit difficult from your message to understand what results you obtained and how it differs from what you expect. If you have results which do not meet your expectations, maybe you can add figures to highlight what the problems are. Now, if your problem is about initialization itself, what you prescribe in your input file is a single Aluminum ion species with all ions ionized 3 times. If you wanted instead ions with different charge states but an average charge state of 3, then you will need to initialize different species [each species s with a given charge state $Z_s$, a given number density $n_s$, such that $(\sum_s Z_s n_s)/(\sum_s n_s) = 3]$. I'm not sure I'm answering your question, but as I mentioned earlier, I'm not sure what your question is ;) !

Z10Frank commented 1 year ago

Hello, unfortunately I don't fully understand your problem or question, but you can have a look at the benchmark called tstAM_14_envelope_ionization_linear_polarization to see an example with ionisation using partially ionised ions.

Differently from that namelist, the ionisation model typically used in LWFA without a laser envelope model will be tunnel.

Feel free to share your namelist so we can have a look.

shinsy85 commented 1 year ago

Thanks for interesting my problems and your comments :) I'll check and study more a recommended benchmark example!! My namelist will be found above "input_shinsy85.txt", and I leave it again here, input_shinsy85.txt

Here, I describe more my problem in detail: My LWFA system is different to a conventional LWFA system. There are two laser-plasma interactions. First, ns laser is irradiated on aluminum bar or disk which has solid state. (that is, laser-ablation process) And then aluminum plasma plume which is consist of Al3+ ions and electrons is generated on it. Second, another fs laser is irradiated into partially-pre-ionized aluminum plasma, and LWFA is occurred. In this situation, I'm not interested yet in first laser-ablation process, but I'm interested in second main LWFA process. That is, I have to set plasma which is consist of Al3+ ions and 3 electrons initially, and this is not a big problem. My big problem and question is follows as: I set Al3+ ions into my namelist as species which has Al mass and +3 charges, and I turn on the tunnel ionization model. In this situation, I expect that Al3+ ions will be ionized to Al4+, Al5+, ..., Al11+ by interaction from laser during simulation. I suddenly became curious. Despite skipping the process of Al0+ → Al1+ and Al1+ → Al2+ in the initial setup, isn't the process of Al0+ → Al1+ and Al1+ → Al2+ duplicated? Of course, I'll be check more about whether my simulation was like that or not, but I wanted to ask if anyone else was thought about this.

Thank you :)

MickaelGrech commented 1 year ago

If you have only Al3+ ions, as prescribed in your input file, the process Al->Al1+, Al1+->Al2+ and Al2+->Al+3 will not be considered as you have no ions in these states (Al,A1+ and Al2+).