The Flutter Shutter Code Optimizer
 All Files Functions Macros Pages
Macros | Functions
flutter_optimiser_uniform.cpp File Reference

Routines for flutter shutter code optimization, uniform motion model. The functions in this file implement equation (18). More...

#include <math.h>
#include "flutter_optimiser_uniform.h"
Include dependency graph for flutter_optimiser_uniform.cpp:

Go to the source code of this file.

Macros

#define eps   0.001
 
#define ABS(x)   (((x) > 0) ? (x) : (-(x)))
 
#define M_PI   3.14159265358979323846
 

Functions

void uniform_optimiser (double *code, double velocity_max, int code_length, double deltat)
 Functions for the uniform motion model: More...
 
double uniform_integrand (double velocity_max, double deltat, double xi, int k)
 Function to integrate (in ) in order to compute the a_k coefficient of the code; uniform motion model. This is the integrand of equation (17): {[4]{{}^{4{ N}} ({{-v^2}{2{ N}^2}}) {{1}_{[-|v|,|v| ]}({}{ t} )}{|v|} dv} (k) } {{{sinc}({}{2 })}} (Recall that: sinc(x):={( x)}{ x}.) More...
 
double uniform_w (double velocity_max, double xi)
 Compute the weight function () for a uniform velocity. More...
 
double uniform_w_integrand (double velocity, double xi)
 Function to integrate in velocity to get the w function; uniform motion model. This is the integrand in equation (16): {{1}_{[-|v|,|v| ]}()}{|v|}. More...
 

Detailed Description

Routines for flutter shutter code optimization, uniform motion model. The functions in this file implement equation (18).

Author
Yohann Tendero tende.nosp@m.ro@m.nosp@m.ath.u.nosp@m.cla..nosp@m.edu

Definition in file flutter_optimiser_uniform.cpp.

Macro Definition Documentation

#define ABS (   x)    (((x) > 0) ? (x) : (-(x)))

absolute value definition.

Definition at line 38 of file flutter_optimiser_uniform.cpp.

#define eps   0.001

epsilon definition.

Definition at line 32 of file flutter_optimiser_uniform.cpp.

#define M_PI   3.14159265358979323846

M_PI is a POSIX definition for Pi

Definition at line 44 of file flutter_optimiser_uniform.cpp.

Function Documentation

uniform_integrand ( double  velocity_max,
double  deltat,
double  xi,
int  k 
)

Function to integrate (in ) in order to compute the a_k coefficient of the code; uniform motion model. This is the integrand of equation (17): {[4]{{}^{4{ N}} ({{-v^2}{2{ N}^2}}) {{1}_{[-|v|,|v| ]}({}{ t} )}{|v|} dv} (k) } {{{sinc}({}{2 })}} (Recall that: sinc(x):={( x)}{ x}.)

Parameters
doublevelocity_max : maximum velocity;
doubledeltat : the temporal sampling of the flutter shutter function;
doublexi : frequency;
int: k the k-th coefficient of the code.
Returns
double , see the integrand of (17)

Construct the function to be integrated in order to compute the a_k:

Definition at line 151 of file flutter_optimiser_uniform.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

void uniform_optimiser ( double *  code,
double  velocity_max,
int  code_length,
double  deltat 
)

Functions for the uniform motion model:

This function just calls "uniform_integrand" with the approriate parameters : k, deltat, velocity_{max}, etc.

Main loop for the computation of a_k :

Initalization for integral evaluation

init so the first iteration of the main loop

is always done.

Main loop for the integral evaluation

Definition at line 70 of file flutter_optimiser_uniform.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

double uniform_w ( double  velocity_max,
double  xi 
)

Compute the weight function () for a uniform velocity.

Construct the function for an uniform motion model,

Initalization.

The following evaluate the integrals using Algorithm 3 with a=velocity_max/1000, b=velocity_max (see the above comment on the support of ) and eps=0.001 (see line 32 of this file)

Main loop for evaluation of

Definition at line 189 of file flutter_optimiser_uniform.cpp.

Here is the call graph for this function:

Here is the caller graph for this function:

uniform_w_integrand ( double  velocity,
double  xi 
)

Function to integrate in velocity to get the w function; uniform motion model. This is the integrand in equation (16): {{1}_{[-|v|,|v| ]}()}{|v|}.

Unormalized density of probility of velocity. Notice that the normalization is not required since the code is defined up to a constant multiplication. See also the integrand of (16) and remark 2, page 8.

Parameters
doublevelocity : velocity;
doublexi : frequency;
Returns
${{1}_{[-|v|,|v| ]}()}{|v|}$

Definition at line 255 of file flutter_optimiser_uniform.cpp.

Here is the caller graph for this function: