Loading...
Searching...
No Matches
q3::PlanewaveChargeDensity Class Reference

Planewave charge density — stores ρ(r) on FFT grid. More...

#include <init.hpp>

+ Inheritance diagram for q3::PlanewaveChargeDensity:

Public Member Functions

 PlanewaveChargeDensity ()=default
 
 PlanewaveChargeDensity (const PlanewaveBasis &basis, int number_of_spin_components)
 
void add_band_contribution (int spin_index, Real weight_times_occupation, const Complex *psi_real_space, int real_space_grid_size, Real inverse_cell_volume)
 
const PlanewaveBasis & basis () const
 
Real cell_volume () const
 
Real get_total_charge () const override
 
int grid_size () const
 
std::vector< Real > & real_space_by_spin_index (int spin_index)
 
const std::vector< Real > & real_space_by_spin_index (int spin_index) const
 
void reset () override
 
void save_smooth_copy ()
 
void set_cell_volume (Real volume)
 
SpinResolvedRealSpaceGrid & smooth_real_space_data ()
 
const SpinResolvedRealSpaceGrid & smooth_real_space_data () const
 
void to_real_space () override
 
void to_reciprocal_space () override
 
- Public Member Functions inherited from q3::ChargeDensity
virtual ~ChargeDensity ()=default
 
- Public Member Functions inherited from q3::SpinResolvedEntity
virtual ~SpinResolvedEntity ()=default
 
bool is_spin_polarized () const
 
int number_of_spin_components () const
 
- Public Member Functions inherited from q3::FFTransformable< SpinResolvedRealSpaceGrid, ReciprocalSpaceCoefficients >
virtual ~FFTransformable ()=default
 
SpinResolvedRealSpaceGrid & real_space_representation ()
 
const SpinResolvedRealSpaceGrid & real_space_representation () const
 
ReciprocalSpaceCoefficients & reciprocal_space_representation ()
 
const ReciprocalSpaceCoefficients & reciprocal_space_representation () const
 

Additional Inherited Members

- Protected Attributes inherited from q3::SpinResolvedEntity
int number_of_spin_components_ = 1
 
- Protected Attributes inherited from q3::FFTransformable< SpinResolvedRealSpaceGrid, ReciprocalSpaceCoefficients >
SpinResolvedRealSpaceGrid real_space_data_
 
ReciprocalSpaceCoefficients reciprocal_space_data_
 

Detailed Description

Planewave charge density — stores ρ(r) on FFT grid.

Definition at line 28 of file init.hpp.

Constructor & Destructor Documentation

◆ PlanewaveChargeDensity() [1/2]

q3::PlanewaveChargeDensity::PlanewaveChargeDensity ( )
default

◆ PlanewaveChargeDensity() [2/2]

Member Function Documentation

◆ add_band_contribution()

void q3::PlanewaveChargeDensity::add_band_contribution ( int  spin_index,
Real  weight_times_occupation,
const Complex *  psi_real_space,
int  real_space_grid_size,
Real  inverse_cell_volume 
)
inline

◆ basis()

const PlanewaveBasis & q3::PlanewaveChargeDensity::basis ( ) const
inline

Definition at line 123 of file init.hpp.

Referenced by PlanewaveChargeDensity().

◆ cell_volume()

Real q3::PlanewaveChargeDensity::cell_volume ( ) const
inline

Definition at line 129 of file init.hpp.

◆ get_total_charge()

◆ grid_size()

int q3::PlanewaveChargeDensity::grid_size ( ) const
inline

Definition at line 126 of file init.hpp.

References q3::PlanewaveBasis::fft_rho(), and q3::FFTGrid::total_grid_points().

◆ real_space_by_spin_index() [1/2]

std::vector< Real > & q3::PlanewaveChargeDensity::real_space_by_spin_index ( int  spin_index)
inline

◆ real_space_by_spin_index() [2/2]

const std::vector< Real > & q3::PlanewaveChargeDensity::real_space_by_spin_index ( int  spin_index) const
inline

◆ reset()

◆ save_smooth_copy()

void q3::PlanewaveChargeDensity::save_smooth_copy ( )
inline

◆ set_cell_volume()

void q3::PlanewaveChargeDensity::set_cell_volume ( Real  volume)
inline

Definition at line 132 of file init.hpp.

◆ smooth_real_space_data() [1/2]

SpinResolvedRealSpaceGrid & q3::PlanewaveChargeDensity::smooth_real_space_data ( )
inline

Definition at line 116 of file init.hpp.

◆ smooth_real_space_data() [2/2]

const SpinResolvedRealSpaceGrid & q3::PlanewaveChargeDensity::smooth_real_space_data ( ) const
inline

Definition at line 113 of file init.hpp.

◆ to_real_space()

◆ to_reciprocal_space()


The documentation for this class was generated from the following file: