MIDSX 0.1
A x-ray transport code system for dosimetry
|
Class which represents a disc isotropic directionality. More...
#include <source.h>
Public Member Functions | |
DiscIsotropicDirectionality (Eigen::Vector3d center, Eigen::Vector3d normal, double radius) | |
Constructor for the DiscIsotropicDirectionality class. | |
Eigen::Vector3d | sampleDirection (const Eigen::Vector3d &photon_initial_position) override |
Returns a sample from the disc isotropic directionality. | |
Private Member Functions | |
void | setUAndV () |
Eigen::Vector3d | calculateNormalizedPerimeterVector (double theta) |
Private Attributes | |
Eigen::Vector3d | center_ |
Eigen::Vector3d | normal_ |
double | radius_ |
Eigen::Vector3d | u_ |
Eigen::Vector3d | v_ |
ProbabilityDist::Uniform | uniform_dist_ |
Class which represents a disc isotropic directionality.
The disc isotropic directionality is a uniform distribution over a disc.
DiscIsotropicDirectionality::DiscIsotropicDirectionality | ( | Eigen::Vector3d | center, |
Eigen::Vector3d | normal, | ||
double | radius ) |
Constructor for the DiscIsotropicDirectionality class.
center | The center of the disc. |
normal | The normal vector of the disc. |
radius | The radius of the disc. |
|
overridevirtual |
Returns a sample from the disc isotropic directionality.
Implements Directionality.
|
private |
|
private |
|
private |