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_c_particle_group_base Type Reference
Inheritance diagram for sll_c_particle_group_base:
Collaboration diagram for sll_c_particle_group_base:

Private Member Functions

procedure(i_get_coords), deferred get_x
 Get the physical coordinate of one particle
More...
 
procedure(i_get_coords), deferred get_v
 Get the velocity of one particle. More...
 
procedure(i_get_scalar), deferred get_charge
 Get the charge of one particle. More...
 
procedure(i_get_scalar), deferred get_mass
 Get the mass of one particle. More...
 
procedure(i_get_array), deferred get_weights
 Get the weights of one particle. More...
 
procedure(get_scalar), deferred get_common_weight
 Get the mass of one particle. 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(i_set_coords), deferred set_x
 Set the coordinate of one particle. More...
 
procedure(i_set_coords), deferred set_v
 Set the velocity of one particle. More...
 
procedure(i_set_array), deferred set_weights
 Set the particle weight. More...
 
procedure(set_scalar), deferred set_common_weight
 Set the common particle weight. More...
 
procedure set_box
 
procedure set_boxnd
 
procedure set_patch
 
procedure(empty), deferred free
 
procedure print
 Prints out the particle array in some form (for debugging, by default nothing is printed out) More...
 
procedure read
 Reads in particle array (default not working) More...
 

Private Attributes

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

Definition at line 42 of file sll_m_particle_group_base.F90.

Member Function/Subroutine Documentation

◆ chget_box()

procedure chget_box
private

Definition at line 72 of file sll_m_particle_group_base.F90.

◆ chget_boxnd()

procedure chget_boxnd
private

Definition at line 73 of file sll_m_particle_group_base.F90.

◆ chget_patch()

procedure chget_patch
private

Definition at line 74 of file sll_m_particle_group_base.F90.

◆ chget_v()

procedure chget_v
private

Definition at line 70 of file sll_m_particle_group_base.F90.

◆ chget_weights()

procedure chget_weights
private

Definition at line 71 of file sll_m_particle_group_base.F90.

◆ chget_x()

procedure chget_x
private

Definition at line 69 of file sll_m_particle_group_base.F90.

◆ free()

procedure( empty ), deferred free
private

Definition at line 86 of file sll_m_particle_group_base.F90.

◆ get_box()

procedure get_box
private

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
private

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( i_get_scalar ), deferred get_charge
private

Get the charge of one particle.

Definition at line 55 of file sll_m_particle_group_base.F90.

◆ get_common_weight()

procedure( get_scalar ), deferred get_common_weight
private

Get the mass of one particle.

Definition at line 58 of file sll_m_particle_group_base.F90.

◆ get_mass()

procedure( i_get_scalar ), deferred get_mass
private

Get the mass of one particle.

Definition at line 56 of file sll_m_particle_group_base.F90.

◆ get_patch()

procedure get_patch
private

Definition at line 62 of file sll_m_particle_group_base.F90.

◆ get_v()

procedure( i_get_coords ), deferred get_v
private

Get the velocity of one particle.

Definition at line 54 of file sll_m_particle_group_base.F90.

◆ get_weights()

procedure( i_get_array ), deferred get_weights
private

Get the weights of one particle.

Definition at line 57 of file sll_m_particle_group_base.F90.

◆ get_x()

procedure( i_get_coords ), deferred get_x
private

Get the physical coordinate of one particle

Definition at line 53 of file sll_m_particle_group_base.F90.

◆ get_xbox()

procedure get_xbox
private

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
private

Get x in terms of the patch local coordinate system.

Definition at line 63 of file sll_m_particle_group_base.F90.

◆ print()

procedure print
private

Prints out the particle array in some form (for debugging, by default nothing is printed out)

Definition at line 92 of file sll_m_particle_group_base.F90.

◆ read()

procedure read
private

Reads in particle array (default not working)

Definition at line 93 of file sll_m_particle_group_base.F90.

◆ set_box()

procedure set_box
private

Definition at line 82 of file sll_m_particle_group_base.F90.

◆ set_boxnd()

procedure set_boxnd
private

Definition at line 83 of file sll_m_particle_group_base.F90.

◆ set_common_weight()

procedure( set_scalar ), deferred set_common_weight
private

Set the common particle weight.

Definition at line 80 of file sll_m_particle_group_base.F90.

◆ set_patch()

procedure set_patch
private

Definition at line 84 of file sll_m_particle_group_base.F90.

◆ set_v()

procedure( i_set_coords ), deferred set_v
private

Set the velocity of one particle.

Definition at line 78 of file sll_m_particle_group_base.F90.

◆ set_weights()

procedure( i_set_array ), deferred set_weights
private

Set the particle weight.

Definition at line 79 of file sll_m_particle_group_base.F90.

◆ set_x()

procedure( i_set_coords ), deferred set_x
private

Set the coordinate of one particle.

Definition at line 77 of file sll_m_particle_group_base.F90.

Member Data Documentation

◆ id

integer(kind=i32) id
private

Definition at line 45 of file sll_m_particle_group_base.F90.

◆ n_particles

integer(kind=i32) n_particles
private

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
private

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
private

number of weights per particle

Definition at line 48 of file sll_m_particle_group_base.F90.

◆ species

class( sll_t_species ), allocatable species
private

Definition at line 44 of file sll_m_particle_group_base.F90.

    Report Typos and Errors