|
XGC1
|
#include <gyro_avg_mat.hpp>

Public Member Functions | |
| GyroAverageMatrices () | |
| GyroAverageMatrices (NLReader::NamelistReader &nlr, const Grid< DeviceType > &grid, const DomainDecomposition< DeviceType > &pol_decomp, const MagneticField< DeviceType > &magnetic_field, bool is_field_following, int n_larmor_pts, int nrho_in, double rhomax_in) | |
| void | copy_matrices_to_device () |
| void | copy_to_device_if_not_resident () |
| void | deallocate_device_matrices_if_not_resident () |
| GyroCommMethod | read_gyro_comm_method (NLReader::NamelistReader &nlr) const |
| void | init_one_gyro_avg_mat (const Grid< DeviceType > &grid, const MagneticField< DeviceType > &magnetic_field, Matrix< HostType > &matrix, int iphi, int irho, bool is_field_following, int n_larmor_pts) |
| void | gyroaverage_field (const View< double ***, CLayout, DeviceType > &field_rho, const View< double **, CLayout, HostType > &field) const |
| void | get_pot_mat_mult (const View< double ***, CLayout, DeviceType > &field_rho, const View< double ****, CLayout, DeviceType > &gradient_rho, const View< double ***, CLayout, DeviceType > &E_para_em, bool potential_requested, bool gradient_requested, bool E_para_em_requested) const |
| void | broadcast_potentials (const View< double ***, CLayout, DeviceType > &potential_rho, const View< double ****, CLayout, DeviceType > &gradient_rho, const View< double ***, CLayout, DeviceType > &E_para_em, bool potential_requested, bool gradient_requested, bool E_para_em_requested) const |
| void | get_gyroaveraged (const View< double ***, CLayout, DeviceType > &field_rho, const View< double ****, CLayout, DeviceType > &gradient_rho, const View< double ***, CLayout, DeviceType > &E_para_em, bool potential_requested, bool gradient_requested, bool E_para_em_requested) const |
| void | gyroaverage_moments (const View< double **, CLayout, DeviceType > &density_rho, const View< double **, CLayout, DeviceType > &flow_rho, const View< double **, CLayout, DeviceType > &energy_rho, const View< double **, CLayout, DeviceType > &density_f0g_rho, const View< double *, CLayout, DeviceType > &density, const View< double *, CLayout, DeviceType > &flow, const View< double *, CLayout, DeviceType > &energy, const View< double *, CLayout, DeviceType > &density_f0g) |
| int | find_a_plane_rank_with_last_gyromatrix () const |
| void | iterative_gyroaverage (Matrix< DeviceType > &gyromatrix, bool print_residual, View< double *, CLayout, DeviceType > &view) const |
| void | smooth_with_last_gyroaverage (bool print_residual, View< double *, CLayout, DeviceType > &delta_n) const |
Public Attributes | |
| HostArray< Matrix< Device > > | matrices |
| HostArray< Matrix< HostType > > | matrices_h |
| int | nrho |
| double | rhomax |
| double | inv_drho |
| int | nphi |
| GyroCommMethod | gyro_comm_method |
| bool | resident_on_device |
| TaskGroup | task_group |
|
inline |
| template GyroAverageMatrices< Device >::GyroAverageMatrices | ( | NLReader::NamelistReader & | nlr, |
| const Grid< DeviceType > & | grid, | ||
| const DomainDecomposition< DeviceType > & | pol_decomp, | ||
| const MagneticField< DeviceType > & | magnetic_field, | ||
| bool | is_field_following, | ||
| int | n_larmor_pts, | ||
| int | nrho_in, | ||
| double | rhomax_in | ||
| ) |
| void GyroAverageMatrices< Device >::broadcast_potentials | ( | const View< double ***, CLayout, DeviceType > & | potential_rho, |
| const View< double ****, CLayout, DeviceType > & | gradient_rho, | ||
| const View< double ***, CLayout, DeviceType > & | E_para_em, | ||
| bool | potential_requested, | ||
| bool | gradient_requested, | ||
| bool | E_para_em_requested | ||
| ) | const |
|
inline |


|
inline |

|
inline |

| template int GyroAverageMatrices< Device >::find_a_plane_rank_with_last_gyromatrix | ( | ) | const |
| void GyroAverageMatrices< Device >::get_gyroaveraged | ( | const View< double ***, CLayout, DeviceType > & | field_rho, |
| const View< double ****, CLayout, DeviceType > & | gradient_rho, | ||
| const View< double ***, CLayout, DeviceType > & | E_para_em, | ||
| bool | potential_requested, | ||
| bool | gradient_requested, | ||
| bool | E_para_em_requested | ||
| ) | const |

| void GyroAverageMatrices< Device >::get_pot_mat_mult | ( | const View< double ***, CLayout, DeviceType > & | field_rho, |
| const View< double ****, CLayout, DeviceType > & | gradient_rho, | ||
| const View< double ***, CLayout, DeviceType > & | E_para_em, | ||
| bool | potential_requested, | ||
| bool | gradient_requested, | ||
| bool | E_para_em_requested | ||
| ) | const |
| void GyroAverageMatrices< Device >::gyroaverage_field | ( | const View< double ***, CLayout, DeviceType > & | field_rho, |
| const View< double **, CLayout, HostType > & | field | ||
| ) | const |

| void GyroAverageMatrices< Device >::gyroaverage_moments | ( | const View< double **, CLayout, DeviceType > & | density_rho, |
| const View< double **, CLayout, DeviceType > & | flow_rho, | ||
| const View< double **, CLayout, DeviceType > & | energy_rho, | ||
| const View< double **, CLayout, DeviceType > & | density_f0g_rho, | ||
| const View< double *, CLayout, DeviceType > & | density, | ||
| const View< double *, CLayout, DeviceType > & | flow, | ||
| const View< double *, CLayout, DeviceType > & | energy, | ||
| const View< double *, CLayout, DeviceType > & | density_f0g | ||
| ) |
| template void GyroAverageMatrices< Device >::init_one_gyro_avg_mat | ( | const Grid< DeviceType > & | grid, |
| const MagneticField< DeviceType > & | magnetic_field, | ||
| Matrix< HostType > & | matrix, | ||
| int | iphi, | ||
| int | irho, | ||
| bool | is_field_following, | ||
| int | n_larmor_pts | ||
| ) |
| template void GyroAverageMatrices< Device >::iterative_gyroaverage | ( | Matrix< DeviceType > & | gyromatrix, |
| bool | print_residual, | ||
| View< double *, CLayout, DeviceType > & | view | ||
| ) | const |

| GyroCommMethod GyroAverageMatrices< Device >::read_gyro_comm_method | ( | NLReader::NamelistReader & | nlr | ) | const |

| template void GyroAverageMatrices< Device >::smooth_with_last_gyroaverage | ( | bool | print_residual, |
| View< double *, CLayout, DeviceType > & | delta_n | ||
| ) | const |

| GyroCommMethod GyroAverageMatrices< Device >::gyro_comm_method |
| double GyroAverageMatrices< Device >::inv_drho |
| HostArray<Matrix<Device> > GyroAverageMatrices< Device >::matrices |
| HostArray<Matrix<HostType> > GyroAverageMatrices< Device >::matrices_h |
| int GyroAverageMatrices< Device >::nphi |
| int GyroAverageMatrices< Device >::nrho |
| bool GyroAverageMatrices< Device >::resident_on_device |
| double GyroAverageMatrices< Device >::rhomax |
| TaskGroup GyroAverageMatrices< Device >::task_group |