-
Notifications
You must be signed in to change notification settings - Fork 58
Expand file tree
/
Copy pathevolve.h
More file actions
41 lines (29 loc) · 1.26 KB
/
evolve.h
File metadata and controls
41 lines (29 loc) · 1.26 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
/**
@file evolve.h
@brief This file contains all the core VPLANET integration routines including
the timestepping algorithm and the Runge-Kutta Integration scheme.
@author Rory Barnes ([RoryBarnes](https://github.com/RoryBarnes/))
@date May 2014
*/
/* 0 => Not input by user, verify assigns default */
#define EULER 1
#define RUNGEKUTTA 2
#define NO_INTEGRATION 0
#define FORWARD_INTEGRATION 1
#define BACKWARD_INTEGRATION -1
/* @cond DOXYGEN_OVERRIDE */
double fdTrapezoidalArea(double, double, double);
void PropertiesAuxiliary(BODY *, CONTROL *, SYSTEM *, UPDATE *);
void fdGetUpdateInfo(BODY *, CONTROL *, SYSTEM *, UPDATE *,
fnUpdateVariable ***);
double fdGetTimeStep(BODY *, CONTROL *, SYSTEM *, UPDATE *,
fnUpdateVariable ***);
void CalculateDerivatives(BODY *, SYSTEM *, UPDATE *, fnUpdateVariable ***,
int);
void Evolve(BODY *, CONTROL *, FILES *, MODULE *, OUTPUT *, SYSTEM *, UPDATE *,
fnUpdateVariable ***, fnWriteOutput *, fnIntegrate);
void EulerStep(BODY *, CONTROL *, SYSTEM *, UPDATE *, fnUpdateVariable ***,
double *, int);
void RungeKutta4Step(BODY *, CONTROL *, SYSTEM *, UPDATE *,
fnUpdateVariable ***, double *, int);
/* @endcond */