rl_raylib  1.1.10
rl_TransmissionCoefPOD Class Reference

A Plain Ol' Data class representing complex reflection coefficients. More...

#include <rl_TransmissionCoefPOD.h>

Public Member Functions

void init ()
 Initialize perpendicular (s) and parallel (p) transmission coefficients to zero.
 
void init (rl_Traits::complex &para, rl_Traits::complex &perp)
 Iinitialize perpendicular (s) and parallel (p) transmission coefficients. More...
 
double transmission (double polarization_factor=0.0) const
 Transmission factor. More...
 
rl_Traits::complex para () const
 
rl_Traits::complexpara ()
 
rl_Traits::complex perp () const
 
rl_Traits::complexperp ()
 
std::ostream & print_on (std::ostream &os, char const pre[]="", char const pst[]="") const
 Print reflectivity information to output stream. More...
 
void cprint_on (std::FILE *of, char const pre[]="", char const pst[]="") const
 Print reflectivity information to output FILE* stream. More...
 

Detailed Description

A Plain Ol' Data class representing complex reflection coefficients.

Definition at line 75 of file rl_TransmissionCoefPOD.h.

Member Function Documentation

◆ cprint_on()

void rl_TransmissionCoefPOD::cprint_on ( std::FILE *  of,
char const  pre[] = "",
char const  pst[] = "" 
) const
inline

Print reflectivity information to output FILE* stream.

Parameters
ofoutput FILE* stream.
preoptional prefix (char*) string.
pstoptional postfix (char*) string.

Definition at line 218 of file rl_TransmissionCoefPOD.h.

◆ init()

void rl_TransmissionCoefPOD::init ( rl_Traits::complex para,
rl_Traits::complex perp 
)
inline

Iinitialize perpendicular (s) and parallel (p) transmission coefficients.

Parameters
paraparallel transmission coefficient
perpperpendicular transmission coefficient

Definition at line 178 of file rl_TransmissionCoefPOD.h.

◆ para() [1/2]

rl_Traits::complex rl_TransmissionCoefPOD::para ( ) const
inline
Returns
parallel (p) transmission coefficient.

Definition at line 186 of file rl_TransmissionCoefPOD.h.

◆ para() [2/2]

rl_Traits::complex & rl_TransmissionCoefPOD::para ( )
inline
Returns
parallel (p) transmission coefficient (read/write access).

Definition at line 194 of file rl_TransmissionCoefPOD.h.

◆ perp() [1/2]

rl_Traits::complex rl_TransmissionCoefPOD::perp ( ) const
inline
Returns
perpendicular (s) transmission coefficient.

Definition at line 190 of file rl_TransmissionCoefPOD.h.

◆ perp() [2/2]

rl_Traits::complex & rl_TransmissionCoefPOD::perp ( )
inline
Returns
perpendicular (s) transmission coefficient (read/write access).

Definition at line 198 of file rl_TransmissionCoefPOD.h.

◆ print_on()

std::ostream & rl_TransmissionCoefPOD::print_on ( std::ostream &  os,
char const  pre[] = "",
char const  pst[] = "" 
) const
inline

Print reflectivity information to output stream.

Parameters
osoutput stream.
preoptional prefix (char*) string.
pstoptional postfix (char*) string.

Definition at line 209 of file rl_TransmissionCoefPOD.h.

◆ transmission()

double rl_TransmissionCoefPOD::transmission ( double  polarization_factor = 0.0) const
inline

Transmission factor.

Parameters
polarization_factorpolarization factor; it must be a value between -1 and 1. The polarization factor is related to parallel (p) and perpendicular (s) polarization by:

\[ \mathtt{polarization\_factor} = {(I_\perp - I_\parallel) \over (I_\perp + I_\parallel)} \]

or

\[ \mathtt{polarization\_factor} = {(I_\mathit{s} - I_\mathit{p}) \over (I_\mathit{s} + I_\mathit{p})} \]

where $I_\perp$ and $I_\parallel$ are the perpendicular and parallel E-field intensities, respectively. Thus,
  • -1: pure parallel (p) polarization.
  • 0: completely unpolarized.
  • +1: pure perpendicular (s) polarization.
Returns
transmission factor

Definition at line 202 of file rl_TransmissionCoefPOD.h.


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