Report Typos and Errors    
Semi-Lagrangian Library
Modular library for kinetic and gyrokinetic simulations of plasmas in fusion energy devices.
Private Member Functions | Private Attributes | List of all members
sll_t_particle_group_3d1v Type Reference

Simple version of a PIC particle group in 3d1v. More...

Inheritance diagram for sll_t_particle_group_3d1v:
Collaboration diagram for sll_t_particle_group_3d1v:

Private Member Functions

procedure get_x => get_x_3d1v
 
procedure get_v => get_v_3d1v
 Get the values of the coordinate of a particle. More...
 
procedure get_charge => get_charge_3d1v
 Get the values of the velocity of a particle. More...
 
procedure get_mass => get_mass_3d1v
 Get the charge(s) More...
 
procedure get_weights => get_weights_3d1v
 Get the mass(es) More...
 
procedure get_common_weight => get_common_weight_3d1v
 Get the common weight (not used for this particle group) More...
 
procedure set_x => set_x_3d1v
 
procedure set_v => set_v_3d1v
 Set the values of the coordinate of a particle. More...
 
procedure set_weights => set_weight_3d1v
 Set the values of the velocity of a particle. More...
 
procedure set_common_weight => set_common_weight_3d1v
 Set the weight(s) of a particle. More...
 
procedure init => initialize_particle_group_3d1v
 Set the common weight for the particle. More...
 
procedure free => delete_particle_group_3d1v
 Initialization function. More...
 
procedure print => print_particle_group_3d1v
 Destructor. More...
 
procedure get_box
 Assuming we have some elements/grid cells "box" for the representation of the fields, we get the (1d) index of this box. More...
 
procedure get_boxnd
 Assuming we have some elements/grid cells "box" for the representation of the fields, we get the nd index of this box (note this is for tensor product grids only) More...
 
procedure get_xbox
 Assuming we have some elements/grid cells "box" for the representation of the fields, we get the (normalized) offset of the position in the box. More...
 
procedure get_patch
 
procedure get_xpatch
 Get x in terms of the patch local coordinate system. More...
 
procedure chget_x
 
procedure chget_v
 
procedure chget_weights
 
procedure chget_box
 
procedure chget_boxnd
 
procedure chget_patch
 
procedure set_box
 
procedure set_boxnd
 
procedure set_patch
 
procedure read
 Reads in particle array (default not working) More...
 

Private Attributes

real(kind=f64), dimension(:,:), allocatable particle_array
 array of particles More...
 
real(kind=f64) common_weight = 1.0_f64
 
class(sll_t_species), allocatable species
 
integer(kind=i32) id
 
integer(kind=i32) n_particles
 number of particles local to the processor More...
 
integer(kind=i32) n_total_particles
 number of particles in total simulation
More...
 
integer(kind=i32) n_weights
 number of weights per particle More...
 

Detailed Description

Simple version of a PIC particle group in 3d1v.

Definition at line 27 of file sll_m_particle_group_3d1v.F90.

Member Function/Subroutine Documentation

◆ chget_box()

procedure chget_box
privateinherited

Definition at line 72 of file sll_m_particle_group_base.F90.

◆ chget_boxnd()

procedure chget_boxnd
privateinherited

Definition at line 73 of file sll_m_particle_group_base.F90.

◆ chget_patch()

procedure chget_patch
privateinherited

Definition at line 74 of file sll_m_particle_group_base.F90.

◆ chget_v()

procedure chget_v
privateinherited

Definition at line 70 of file sll_m_particle_group_base.F90.

◆ chget_weights()

procedure chget_weights
privateinherited

Definition at line 71 of file sll_m_particle_group_base.F90.

◆ chget_x()

procedure chget_x
privateinherited

Definition at line 69 of file sll_m_particle_group_base.F90.

◆ free()

procedure free
private

Initialization function.

Definition at line 49 of file sll_m_particle_group_3d1v.F90.

◆ get_box()

procedure get_box
privateinherited

Assuming we have some elements/grid cells "box" for the representation of the fields, we get the (1d) index of this box.

Definition at line 59 of file sll_m_particle_group_base.F90.

◆ get_boxnd()

procedure get_boxnd
privateinherited

Assuming we have some elements/grid cells "box" for the representation of the fields, we get the nd index of this box (note this is for tensor product grids only)

Definition at line 60 of file sll_m_particle_group_base.F90.

◆ get_charge()

procedure get_charge
private

Get the values of the velocity of a particle.

Definition at line 36 of file sll_m_particle_group_3d1v.F90.

◆ get_common_weight()

procedure get_common_weight
private

Get the common weight (not used for this particle group)

Definition at line 39 of file sll_m_particle_group_3d1v.F90.

◆ get_mass()

procedure get_mass
private

Get the charge(s)

Definition at line 37 of file sll_m_particle_group_3d1v.F90.

◆ get_patch()

procedure get_patch
privateinherited

Definition at line 62 of file sll_m_particle_group_base.F90.

◆ get_v()

procedure get_v
private

Get the values of the coordinate of a particle.

Definition at line 35 of file sll_m_particle_group_3d1v.F90.

◆ get_weights()

procedure get_weights
private

Get the mass(es)

Definition at line 38 of file sll_m_particle_group_3d1v.F90.

◆ get_x()

procedure get_x
private

Definition at line 34 of file sll_m_particle_group_3d1v.F90.

◆ get_xbox()

procedure get_xbox
privateinherited

Assuming we have some elements/grid cells "box" for the representation of the fields, we get the (normalized) offset of the position in the box.

Definition at line 61 of file sll_m_particle_group_base.F90.

◆ get_xpatch()

procedure get_xpatch
privateinherited

Get x in terms of the patch local coordinate system.

Definition at line 63 of file sll_m_particle_group_base.F90.

◆ init()

procedure init
private

Set the common weight for the particle.

Definition at line 48 of file sll_m_particle_group_3d1v.F90.

◆ print()

procedure print
private

Destructor.

Definition at line 51 of file sll_m_particle_group_3d1v.F90.

◆ read()

procedure read
privateinherited

Reads in particle array (default not working)

Definition at line 93 of file sll_m_particle_group_base.F90.

◆ set_box()

procedure set_box
privateinherited

Definition at line 82 of file sll_m_particle_group_base.F90.

◆ set_boxnd()

procedure set_boxnd
privateinherited

Definition at line 83 of file sll_m_particle_group_base.F90.

◆ set_common_weight()

procedure set_common_weight
private

Set the weight(s) of a particle.

Definition at line 45 of file sll_m_particle_group_3d1v.F90.

◆ set_patch()

procedure set_patch
privateinherited

Definition at line 84 of file sll_m_particle_group_base.F90.

◆ set_v()

procedure set_v
private

Set the values of the coordinate of a particle.

Definition at line 43 of file sll_m_particle_group_3d1v.F90.

◆ set_weights()

procedure set_weights
private

Set the values of the velocity of a particle.

Definition at line 44 of file sll_m_particle_group_3d1v.F90.

◆ set_x()

procedure set_x
private

Definition at line 42 of file sll_m_particle_group_3d1v.F90.

Member Data Documentation

◆ common_weight

real(kind=f64) common_weight = 1.0_f64
private

Definition at line 30 of file sll_m_particle_group_3d1v.F90.

◆ id

integer(kind=i32) id
privateinherited

Definition at line 45 of file sll_m_particle_group_base.F90.

◆ n_particles

integer(kind=i32) n_particles
privateinherited

number of particles local to the processor

Definition at line 46 of file sll_m_particle_group_base.F90.

◆ n_total_particles

integer(kind=i32) n_total_particles
privateinherited

number of particles in total simulation

Definition at line 47 of file sll_m_particle_group_base.F90.

◆ n_weights

integer(kind=i32) n_weights
privateinherited

number of weights per particle

Definition at line 48 of file sll_m_particle_group_base.F90.

◆ particle_array

real(kind=f64), dimension(:,:), allocatable particle_array
private

array of particles

Definition at line 29 of file sll_m_particle_group_3d1v.F90.

◆ species

class( sll_t_species ), allocatable species
privateinherited

Definition at line 44 of file sll_m_particle_group_base.F90.

    Report Typos and Errors