test_integration.cc File Reference

Testfile for the AngIntegrate_trapezoid function from math_funcs.cc. More...

#include <iostream>
#include <cmath>
#include <stdexcept>
#include <sys/time.h>
#include "arts.h"
#include "array.h"
#include "math_funcs.h"
#include "matpackI.h"
#include "logic.h"

Include dependency graph for test_integration.cc:

Go to the source code of this file.

Functions

void init_xy (float stepsize, int frequency, Matrix &Integrand, Vector &za_grid, Vector &aa_grid)
 init_xy
void init_x (int vsize, float stepsize, int frequency, Vector &Integrand, Vector &Theta)
 init_x
Numeric AngIntegrate_trapezoid_original (MatrixView Integrand, ConstVectorView za_grid, ConstVectorView aa_grid)
 AngIntegrate_trapezoid_original.
Numeric AngIntegrate_trapezoid_opt (MatrixView Integrand, ConstVectorView za_grid, ConstVectorView aa_grid)
 AngIntegrate_trapezoid_opt.
Numeric AngIntegrate_trapezoid_fixedstep (MatrixView Integrand, ConstVectorView za_grid, ConstVectorView aa_grid, Numeric stepsize)
 AngIntegrate_trapezoid_fixedstep.
Numeric AngIntegrate_trapezoid_fixedstep_opt (MatrixView Integrand, ConstVectorView za_grid, ConstVectorView aa_grid, Numeric stepsize)
 AngIntegrate_trapezoid_fixedstep_opt.
Numeric AngIntegrate_trapezoid_fixedstep_opt2 (MatrixView Integrand, ConstVectorView za_grid, ConstVectorView aa_grid, Numeric stepsize)
 AngIntegrate_trapezoid_fixedstep_opt2.
Numeric AngIntegrate_trapezoid_original (ConstVectorView Integrand, ConstVectorView za_grid)
 AngIntegration_trapezoid_original.
Numeric AngIntegrate_trapezoid_fixedstep (ConstVectorView Integrand, ConstVectorView za_grid, Numeric stepsize)
 AngIntegration_trapezoid_original.
Numeric test_xy (int z_size, int a_size, float stepsize, int frequency)
 test_xy
Numeric test_xy_opt (int z_size, int a_size, float stepsize, int frequency)
 test_xy_opt
Numeric test_xy_fixedstep (int z_size, int a_size, float stepsize, int frequency)
 test_xy_fixedstep
Numeric test_xy_fixedstep_opt (int z_size, int a_size, float stepsize, int frequency)
 test_xy_fixedstep_opt
Numeric test_xy_fixedstep_opt2 (int z_size, int a_size, float stepsize, int frequency)
 test_xy_fixedstep_opt2
Numeric test_AngIntegrate_trapezoid_opti (int z_size, int a_size, float stepsize, int frequency)
 test_AngIntegrate_trapezoid_opti
Numeric test_x (int vsize, float stepsize, int frequency)
 test_x
Numeric test_x_fixedstep (int vsize, int frequency)
 test_x_fixedstep
int main (int argc, char *argv[])

Variables

const Numeric DEG2RAD
const Numeric PI


Detailed Description

Testfile for the AngIntegrate_trapezoid function from math_funcs.cc.

Author:
Claas Teichmann <claas@sat.physik.uni-bremen.de>
Date:
2003/05/27

Definition in file test_integration.cc.


Function Documentation

Numeric AngIntegrate_trapezoid_fixedstep ( ConstVectorView  Integrand,
ConstVectorView  za_grid,
Numeric  stepsize 
)

AngIntegration_trapezoid_original.

The original function from math_funcs.cc

Definition at line 462 of file test_integration.cc.

References DEG2RAD, is_size(), ConstVectorView::nelem(), and PI.

Numeric AngIntegrate_trapezoid_fixedstep ( MatrixView  Integrand,
ConstVectorView  za_grid,
ConstVectorView  aa_grid,
Numeric  stepsize 
)

AngIntegrate_trapezoid_fixedstep.

Performs an integration of a matrix over all directions defined in angular grids using the trapezoidal integration method. Here we use a fixed stepsize, e.g. 0.1

Parameters:
Integrand The Matrix to be integrated
za_grid Input : The zenith angle grid
aa_grid Input : The azimuth angle grid
stepsize Input : The grid stepsize
Returns:
The resulting integral

Definition at line 304 of file test_integration.cc.

References DEG2RAD, is_size(), and ConstVectorView::nelem().

Referenced by test_x_fixedstep(), and test_xy_fixedstep().

Numeric AngIntegrate_trapezoid_fixedstep_opt ( MatrixView  Integrand,
ConstVectorView  za_grid,
ConstVectorView  aa_grid,
Numeric  stepsize 
)

AngIntegrate_trapezoid_fixedstep_opt.

Performs an integration of a matrix over all directions defined in angular grids using the trapezoidal integration method. Here we use a fixed stepsize, e.g. 0.1

Parameters:
Integrand The Matrix to be integrated
za_grid Input : The zenith angle grid
aa_grid Input : The azimuth angle grid
stepsize Input : The grid stepsize
Returns:
The resulting integral

Definition at line 347 of file test_integration.cc.

References DEG2RAD, is_size(), and ConstVectorView::nelem().

Referenced by test_xy_fixedstep_opt().

Numeric AngIntegrate_trapezoid_fixedstep_opt2 ( MatrixView  Integrand,
ConstVectorView  za_grid,
ConstVectorView  aa_grid,
Numeric  stepsize 
)

AngIntegrate_trapezoid_fixedstep_opt2.

Performs an integration of a matrix over all directions defined in angular grids using the trapezoidal integration method. Here we use a fixed stepsize, e.g. 0.1 with some more optimizations to see whether it is faster or not

Parameters:
Integrand The Matrix to be integrated
za_grid Input : The zenith angle grid
aa_grid Input : The azimuth angle grid
stepsize Input: The grid stepsize
Returns:
The resulting integral

Definition at line 397 of file test_integration.cc.

References DEG2RAD, is_size(), ConstVectorView::nelem(), and temp.

Referenced by test_xy_fixedstep_opt2().

Numeric AngIntegrate_trapezoid_opt ( MatrixView  Integrand,
ConstVectorView  za_grid,
ConstVectorView  aa_grid 
)

AngIntegrate_trapezoid_opt.

Performs an integration of a matrix over all directions defined in angular grids using the trapezoidal integration method.

Parameters:
Integrand The Matrix to be integrated
za_grid Input : The zenith angle grid
aa_grid Input : The azimuth angle grid
Returns:
The resulting integral

Definition at line 260 of file test_integration.cc.

References DEG2RAD, is_size(), and ConstVectorView::nelem().

Referenced by test_xy_opt().

Numeric AngIntegrate_trapezoid_original ( ConstVectorView  Integrand,
ConstVectorView  za_grid 
)

AngIntegration_trapezoid_original.

The original function from math_funcs.cc

Definition at line 438 of file test_integration.cc.

References DEG2RAD, is_size(), ConstVectorView::nelem(), and PI.

Numeric AngIntegrate_trapezoid_original ( MatrixView  Integrand,
ConstVectorView  za_grid,
ConstVectorView  aa_grid 
)

AngIntegrate_trapezoid_original.

The original function from math_funcs.cc Performs an integration of a matrix over all directions defined in angular grids using the trapezoidal integration method.

Parameters:
Integrand The Matrix to be integrated
za_grid Input : The zenith angle grid
aa_grid Input : The azimuth angle grid
Returns:
The resulting integral

Definition at line 218 of file test_integration.cc.

References DEG2RAD, is_size(), and ConstVectorView::nelem().

Referenced by test_x(), and test_xy().

void init_x ( int  vsize,
float  stepsize,
int  frequency,
Vector Integrand,
Vector Theta 
)

init_x

This function fills a Vector with funcition values The function is y=x

Definition at line 138 of file test_integration.cc.

References ConstVectorView::nelem().

Referenced by test_x().

void init_xy ( float  stepsize,
int  frequency,
Matrix Integrand,
Vector za_grid,
Vector aa_grid 
)

init_xy

This function fills Matrix with funcition values The funcion is a circle around 0

Definition at line 169 of file test_integration.cc.

References ConstVectorView::nelem().

Referenced by test_AngIntegrate_trapezoid_opti(), test_xy(), test_xy_fixedstep(), test_xy_fixedstep_opt(), test_xy_fixedstep_opt2(), and test_xy_opt().

int main ( int  argc,
char *  argv[] 
)

Definition at line 105 of file test_integration.cc.

References test_AngIntegrate_trapezoid_opti(), and test_xy().

Numeric test_AngIntegrate_trapezoid_opti ( int  z_size,
int  a_size,
float  stepsize,
int  frequency 
)

test_AngIntegrate_trapezoid_opti

Performs an integration over a simple Function given by a Matrix uses AngIntegrate_trapezoid_opti to integrate the funcion

It uses the original arts function

Parameters:
z_size The size of the zenith dimension, e.g. 1801
a_size The size of the azimuth dimension, e.g. 3601
stepsize The size of the steps, e.g. 0.1
frequency Only for test purposes: frequency of integral computation
Returns:
The resulting integral

Definition at line 774 of file test_integration.cc.

References AngIntegrate_trapezoid_opti(), init_xy(), and PI.

Referenced by main().

Numeric test_x ( int  vsize,
float  stepsize,
int  frequency 
)

test_x

Performs an integration over a simple Function y=x given by a Vector uses AngIntegrate_trapezoid_original to integrate the funcion

Parameters:
vsize The size of the Vetor who is integrated, e.g. 1801
stepsize The size of the steps, e.g. 0.1
frequency Only for test purposes: how often is the integral calculated
Returns:
The resulting integral

Definition at line 840 of file test_integration.cc.

References AngIntegrate_trapezoid_original(), init_x(), and PI.

Numeric test_x_fixedstep ( int  vsize,
int  frequency 
)

test_x_fixedstep

Performs an integration over a simple Function y=x given by a Vector uses the other Integration function with constant Theta-spacing.

Parameters:
vsize The size of the Vetor who is integrated, e.g. 1801
frequency Only for test purposes: how often is the integral calculated
Returns:
The resulting integral

Definition at line 896 of file test_integration.cc.

References AngIntegrate_trapezoid_fixedstep(), ConstVectorView::nelem(), and PI.

Numeric test_xy ( int  z_size,
int  a_size,
float  stepsize,
int  frequency 
)

test_xy

Performs an integration over a simple Function given by a Matrix uses AngIntegrate_trapezoid_original to integrate the funcion

Parameters:
z_size The size of the zenith dimension, e.g. 1801
a_size The size of the azimuth dimension, e.g. 3601
stepsize The size of the steps, e.g. 0.1
frequency Only for test purposes: frequency of integral computation
Returns:
The resulting integral

Definition at line 500 of file test_integration.cc.

References AngIntegrate_trapezoid_original(), init_xy(), and PI.

Referenced by main().

Numeric test_xy_fixedstep ( int  z_size,
int  a_size,
float  stepsize,
int  frequency 
)

test_xy_fixedstep

Performs an integration over a simple Function given by a Matrix uses AngIntegrate_trapezoid_fixedstep to integrate the funcion

Parameters:
z_size The size of the zenith dimension, e.g. 1801
a_size The size of the azimuth dimension, e.g. 3601
stepsize The size of the steps, e.g. 0.1
frequency Only for test purposes: frequency of integral computation
Returns:
The resulting integral

Definition at line 608 of file test_integration.cc.

References AngIntegrate_trapezoid_fixedstep(), init_xy(), and PI.

Numeric test_xy_fixedstep_opt ( int  z_size,
int  a_size,
float  stepsize,
int  frequency 
)

test_xy_fixedstep_opt

Performs an integration over a simple Function given by a Matrix uses AngIntegrate_trapezoid_fixedstep to integrate the funcion

Parameters:
z_size The size of the zenith dimension, e.g. 1801
a_size The size of the azimuth dimension, e.g. 3601
stepsize The size of the steps, e.g. 0.1
frequency Only for test purposes: frequency of integral computation
Returns:
The resulting integral

Definition at line 663 of file test_integration.cc.

References AngIntegrate_trapezoid_fixedstep_opt(), init_xy(), and PI.

Numeric test_xy_fixedstep_opt2 ( int  z_size,
int  a_size,
float  stepsize,
int  frequency 
)

test_xy_fixedstep_opt2

Performs an integration over a simple Function given by a Matrix uses AngIntegrate_trapezoid_fixedstep2 to integrate the funcion

Parameters:
z_size The size of the zenith dimension, e.g. 1801
a_size The size of the azimuth dimension, e.g. 3601
stepsize The size of the steps, e.g. 0.1
frequency Only for test purposes: frequency of integral computation
Returns:
The resulting integral

Definition at line 718 of file test_integration.cc.

References AngIntegrate_trapezoid_fixedstep_opt2(), init_xy(), and PI.

Numeric test_xy_opt ( int  z_size,
int  a_size,
float  stepsize,
int  frequency 
)

test_xy_opt

Performs an integration over a simple Function given by a Matrix uses AngIntegrate_trapezoid_opt to integrate the funcion

Parameters:
z_size The size of the zenith dimension, e.g. 1801
a_size The size of the azimuth dimension, e.g. 3601
stepsize The size of the steps, e.g. 0.1
frequency Only for test purposes: frequency of integral computation
Returns:
The resulting integral

Definition at line 554 of file test_integration.cc.

References AngIntegrate_trapezoid_opt(), init_xy(), and PI.


Variable Documentation

const Numeric PI


Generated on Mon Mar 23 14:06:53 2009 for ARTS by  doxygen 1.5.6