Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members

Arroyo::Hufnagel_Valley_model Class Reference

#include <Hufnagel_Valley_model.h>

Inheritance diagram for Arroyo::Hufnagel_Valley_model:

Arroyo::refractive_atmospheric_model Arroyo::AO_sim_base List of all members.

Public Member Functions

 Hufnagel_Valley_model (const Hufnagel_Valley_model &hv_model)
 Hufnagel_Valley_model (const char *filename)
 Hufnagel_Valley_model (const iofits &iof)
 Hufnagel_Valley_model (const three_frame &ground_ref_frame, const std::vector< double > &layer_heights, double pseudowind, double A=1.7e-14)
 ~Hufnagel_Valley_model ()
Hufnagel_Valley_modeloperator= (const Hufnagel_Valley_model &hv_model)
void read (const char *filename)
void read (const iofits &iof)
void write (const char *filename) const
void write (iofits &iof) const
void print (ostream &os, const char *prefix="") const

Detailed Description

A class to implement a multilayer approximation to the analytic atmospheric model proposed by Hufnagel and Valley. Paraphrasing Sasiela p. 60, the analytic model is

.00594 (W/27)^{2} (1e-5*h)^{10}exp(-h/1000) +
Cn^{2}(h) = 2.7e-16 exp(-h/1500) +
A exp(-h/100)

where W is the pseudowind and A is a parameter that is usually set equal to 1.7e-14. The HV-21 model has this value for A, and W is equal to 21. This model is sometimes referred to as the HV 5/7 model. (Note - h is apparently in meters)

Sasiela tabulates the turbulence moments for 4 different values of the pseudowind W. They are reproduced in the table below.

HV 21 HV 35 HV 54 HV 72
r_0 (cm) 4.96 4.67 4.18 3.70
theta_0 (urad) 6.90 3.95 2.40 1.71

where r_0 and theta_0 are quoted at .5 microns.

To generate a multilayer approximation to this model, the user must supply a vector of layer heights to the constructor. The convention for assigning turbulence weights to the layers is as follows. The C_{n}^{2} profile is integrated from the ground to the midpoint between the first and second layer, and this weight is assigned to the first layer. The profile is integrated from this point to the midpoint between the second and third layers, and this weight is assigned to the second layer. For the highest layer, the profile is integrated from the midpoint between the second highest layer and the highest layer to infinity.

Note that this procedure does not necessarily preserve theta_0 in the table above, but does preserve r_0.


Constructor & Destructor Documentation

Arroyo::Hufnagel_Valley_model::Hufnagel_Valley_model const Hufnagel_Valley_model hv_model  ) 
 

Copy constructor

Arroyo::Hufnagel_Valley_model::Hufnagel_Valley_model const char *  filename  ) 
 

Construct from a file

Arroyo::Hufnagel_Valley_model::Hufnagel_Valley_model const iofits iof  ) 
 

Construct from an iofits object

Arroyo::Hufnagel_Valley_model::Hufnagel_Valley_model const three_frame ground_ref_frame,
const std::vector< double > &  layer_heights,
double  pseudowind,
double  A = 1.7e-14
 

Construct from a three frame.

Arroyo::Hufnagel_Valley_model::~Hufnagel_Valley_model  )  [inline]
 

Destructor


Member Function Documentation

Hufnagel_Valley_model& Arroyo::Hufnagel_Valley_model::operator= const Hufnagel_Valley_model hv_model  ) 
 

Operator =

void Arroyo::Hufnagel_Valley_model::print ostream &  os,
const char *  prefix = ""
const [virtual]
 

Print

Reimplemented from Arroyo::refractive_atmospheric_model.

void Arroyo::Hufnagel_Valley_model::read const iofits iof  ) 
 

Read from iofits

Reimplemented from Arroyo::refractive_atmospheric_model.

void Arroyo::Hufnagel_Valley_model::read const char *  filename  ) 
 

Read from file

Reimplemented from Arroyo::refractive_atmospheric_model.

void Arroyo::Hufnagel_Valley_model::write iofits iof  )  const
 

Write to iofits

Reimplemented from Arroyo::refractive_atmospheric_model.

void Arroyo::Hufnagel_Valley_model::write const char *  filename  )  const
 

Write to file

Reimplemented from Arroyo::refractive_atmospheric_model.


The documentation for this class was generated from the following file:
Generated on Thu Nov 29 17:16:34 2007 for arroyo by  doxygen 1.3.9.1