Mantid
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
Mantid::DataObjects::CalculateReflectometryP Class Reference

class CalculateReflectometryP: p-type transformation calculator More...

#include <CalculateReflectometryP.h>

Inheritance diagram for Mantid::DataObjects::CalculateReflectometryP:
Mantid::DataObjects::CalculateReflectometry

Public Member Functions

double calculateDim0 (double wavelength) const override
 Executes the calculation to determine PSum. More...
 
double calculateDim1 (double wavelength) const override
 Executes the calculation to determine PDiff. More...
 
 CalculateReflectometryP (int version)
 Constructor. More...
 
Mantid::Geometry::Quadrilateral createQuad (double lamUpper, double lamLower, double thetaUpper, double thetaLower) override
 
void setThetaFinal (double thetaFinal) override
 Setter for the final theta value require for the calculation. More...
 
void setTwoTheta (double twoTheta) override
 Set the final theta value from the detector twoTheta angle. More...
 
void updateThetaIncident (double thetaIncident) override
 Setter for the incident theta value require for the calculation. More...
 
- Public Member Functions inherited from Mantid::DataObjects::CalculateReflectometry
virtual double calculateDim0 (double wavelength) const =0
 Executes the calculation on dimension 0. More...
 
virtual double calculateDim1 (double wavelength) const =0
 Executes the calculation on dimension 1. More...
 
 CalculateReflectometry (int version)
 
virtual Mantid::Geometry::Quadrilateral createQuad (double lamLower, double lamUpper, double thetaLower, double thetaUpper)=0
 
virtual void setThetaFinal (double thetaFinal)=0
 Setter for the final theta value require for the calculation. More...
 
void setThetaIncident (double thetaIncident)
 Setter for the incident theta value require for the calculation. More...
 
virtual void setTwoTheta (double twoTheta)=0
 Set the final theta value from the detector twoTheta angle. More...
 
virtual void updateThetaIncident (double thetaIncident)=0
 Derived class setter for the final theta value require for the calculation. More...
 
virtual ~CalculateReflectometry ()=default
 

Private Attributes

double m_sin_theta_f
 
double m_sin_theta_i
 

Additional Inherited Members

- Protected Attributes inherited from Mantid::DataObjects::CalculateReflectometry
double m_theta_i {0.0}
 
int m_version
 
const double to_radians_factor = M_PI / 180.0
 

Detailed Description

class CalculateReflectometryP: p-type transformation calculator

Definition at line 16 of file CalculateReflectometryP.h.

Constructor & Destructor Documentation

◆ CalculateReflectometryP()

Mantid::DataObjects::CalculateReflectometryP::CalculateReflectometryP ( int  version)
inline

Constructor.

Definition at line 25 of file CalculateReflectometryP.h.

Member Function Documentation

◆ calculateDim0()

double Mantid::DataObjects::CalculateReflectometryP::calculateDim0 ( double  wavelength) const
inlineoverridevirtual

Executes the calculation to determine PSum.

Parameters
wavelength: wavelength in Angstroms

Implements Mantid::DataObjects::CalculateReflectometry.

Definition at line 56 of file CalculateReflectometryP.h.

References m_sin_theta_f, and m_sin_theta_i.

Referenced by createQuad().

◆ calculateDim1()

double Mantid::DataObjects::CalculateReflectometryP::calculateDim1 ( double  wavelength) const
inlineoverridevirtual

Executes the calculation to determine PDiff.

Parameters
wavelength: wavelength in Angstroms

Implements Mantid::DataObjects::CalculateReflectometry.

Definition at line 67 of file CalculateReflectometryP.h.

References m_sin_theta_f, and m_sin_theta_i.

Referenced by createQuad().

◆ createQuad()

Mantid::Geometry::Quadrilateral Mantid::DataObjects::CalculateReflectometryP::createQuad ( double  lamUpper,
double  lamLower,
double  thetaUpper,
double  thetaLower 
)
inlineoverridevirtual

◆ setThetaFinal()

void Mantid::DataObjects::CalculateReflectometryP::setThetaFinal ( double  thetaFinal)
inlineoverridevirtual

Setter for the final theta value require for the calculation.

Internally pre-calculates and caches to cos theta for speed.

Parameters
thetaFinalfinal theta value in degrees

Implements Mantid::DataObjects::CalculateReflectometry.

Definition at line 39 of file CalculateReflectometryP.h.

References m_sin_theta_f, and Mantid::DataObjects::CalculateReflectometry::to_radians_factor.

Referenced by setTwoTheta().

◆ setTwoTheta()

void Mantid::DataObjects::CalculateReflectometryP::setTwoTheta ( double  twoTheta)
inlineoverridevirtual

Set the final theta value from the detector twoTheta angle.

Parameters
twoThetadetector twoTheta value in degrees

Implements Mantid::DataObjects::CalculateReflectometry.

Definition at line 45 of file CalculateReflectometryP.h.

References Mantid::DataObjects::CalculateReflectometry::m_theta_i, Mantid::DataObjects::CalculateReflectometry::m_version, setThetaFinal(), and Mantid::Kernel::twoTheta.

Referenced by createQuad().

◆ updateThetaIncident()

void Mantid::DataObjects::CalculateReflectometryP::updateThetaIncident ( double  thetaIncident)
inlineoverridevirtual

Setter for the incident theta value require for the calculation.

Internally pre-calculates and caches to cos theta for speed.

Parameters
thetaIncidentincident theta value in degrees

Implements Mantid::DataObjects::CalculateReflectometry.

Definition at line 32 of file CalculateReflectometryP.h.

References m_sin_theta_i, and Mantid::DataObjects::CalculateReflectometry::to_radians_factor.

Member Data Documentation

◆ m_sin_theta_f

double Mantid::DataObjects::CalculateReflectometryP::m_sin_theta_f
private

Definition at line 19 of file CalculateReflectometryP.h.

Referenced by calculateDim0(), calculateDim1(), and setThetaFinal().

◆ m_sin_theta_i

double Mantid::DataObjects::CalculateReflectometryP::m_sin_theta_i
private

Definition at line 18 of file CalculateReflectometryP.h.

Referenced by calculateDim0(), calculateDim1(), and updateThetaIncident().


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