|
|
|
|
Madagascar Programming Reference Manual |
|
|
int sf_ode23_step (float* y /* [dim] solution */,
void* par /* parameters for function evaluation */,
void (*rhs)(void*,float*,float*)
/* RHS function */,
int (*term)(void*,float*)
/* function returning 1 if the ray needs to terminate */,
float** traj /* [nt+1][dim] - ray trajectory (output) */)
/*< ODE solver for dy/dt = f where f comes from rhs(par,y,f)
Note:
1. Value of y is changed inside the function.
2. The output code for it = ode23_step(...)
it=0 - ray traced to the end without termination
it>0 - ray terminated
The total traveltime along the ray is
nt*dt if (it = 0); it*dt otherwise
>*/
{
...
}