Vlasov-Poisson Stepper

vlapy.core.vlasov_poisson.get_6th_order_integrator(vdfdx, edfdv, field_solve, dt, driver_function)

This function returns the 6th order step [1] pieced together with the provided components

[1] - Casas, F., Crouseilles, N., Faou, E., & Mehrenberger, M. (2017). High-order Hamiltonian splitting for the Vlasov–Poisson equations. Numerische Mathematik, 135(3), 769–801. https://doi.org/10.1007/s00211-016-0816-z

Parameters
  • vdfdx – (function) the chosen v df/dx integrator

  • edfdv – (function) the chosen e df/dv integrator

  • field_solve – (function) the chosen field solver

  • dt – (float) the time-step

  • driver_function – (function) the function providing the driver

Returns

(function) above inputs initialized as static variables

vlapy.core.vlasov_poisson.get_full_leapfrog_step(vdfdx, edfdv, field_solve, dt, driver_function)

This function returns the leapfrog step pieced together with the provided components

Parameters
  • vdfdx – (function) the chosen v df/dx integrator

  • edfdv – (function) the chosen e df/dv integrator

  • field_solve – (function) the chosen field solver

  • dt – (float) the time-step

  • driver_function – (function) the function providing the driver

Returns

(function) above inputs initialized as static variables

vlapy.core.vlasov_poisson.get_full_pefrl_step(vdfdx, edfdv, field_solve, dt, driver_function)

This function returns the Performance-Extended Forest-Ruth-Like step [1-2] pieced together with the provided components

[1] - Omelyan, I. P., Mryglod, I. M., & Folk, R. (2002). Optimized Forest–Ruth- and Suzuki-like algorithms for integration of motion in many-body systems. Computer Physics Communications, 146(2), 188–202. https://doi.org/10.1016/S0010-4655(02)00451-4

[2] - http://physics.ucsc.edu/~peter/242/leapfrog.pdf

Parameters
  • vdfdx – (function) the chosen v df/dx integrator

  • edfdv – (function) the chosen e df/dv integrator

  • field_solve – (function) the chosen field solver

  • dt – (float) the time-step

  • driver_function – (function) the function providing the driver

Returns

(function) above inputs initialized as static variables

vlapy.core.vlasov_poisson.get_time_integrator(time_integrator_name, vdfdx, edfdv, field_solver, stuff_for_time_loop)

This function returns the full time-integrator pieced together with the provided components of the integrator

Parameters
  • time_integrator_name – (string) name of the time-integrator chosen in the input parameters

  • vdfdx – (function) the chosen v df/dx integrator

  • edfdv – (function) the chosen e df/dv integrator

  • field_solve – (function) the chosen field solver

  • stuff_for_time_loop – (dictionary) derived parameters for simulation

Returns

(function) function that updates the distribution function with the

above inputs initialized as static variables