libgravix2  0.1.0
A fast simulation of attractive forces acting on point-like particles embedded onto the surface of a sphere.
missile.c File Reference
#include <assert.h>
#include <math.h>
#include <stddef.h>
#include <stdlib.h>
#include "libgravix2/api.h"
#include "libgravix2/config.h"
#include "libgravix2/integrators.h"
#include "libgravix2/planet.h"
#include "libgravix2/pot.h"
Include dependency graph for missile.c:

Functions

GrvxTrajectoryBatch grvx_new_missiles (unsigned n)
 
void grvx_delete_missiles (GrvxTrajectoryBatch batch)
 Deletes a batch of missiles and frees the allocated memory. More...
 
struct GrvxTrajectorygrvx_get_trajectory (GrvxTrajectoryBatch batch, unsigned i)
 
int grvx_init_missile (struct GrvxTrajectory *t, double lat, double lon, double v, double dlat, double dlon)
 Initializes the position and velocity of a missile on the sphere. More...
 
int grvx_launch_missile (struct GrvxTrajectory *t, GrvxPlanetsHandle planets, unsigned planet, double v_abs, double psi)
 
unsigned grvx_propagate_missile (struct GrvxTrajectory *trj, GrvxPlanetsHandle planets, double h, int *premature)
 
double grvx_orb_period (double v, double h)
 Orbital period for isolated planets. More...
 
void grvx_perturb_measurement (GrvxPlanetsHandle planets, uint32_t planet, double angular_error, double *lat, double *lon)
 Perturbs measurement by assuming finite angular resolution. More...
 

Function Documentation

◆ grvx_get_trajectory()

struct GrvxTrajectory* grvx_get_trajectory ( GrvxTrajectoryBatch  batch,
unsigned  i 
)

◆ grvx_launch_missile()

int grvx_launch_missile ( struct GrvxTrajectory t,
GrvxPlanetsHandle  planets,
unsigned  planet,
double  v_abs,
double  psi 
)

◆ grvx_new_missiles()

GrvxTrajectoryBatch grvx_new_missiles ( unsigned  n)

◆ grvx_propagate_missile()

unsigned grvx_propagate_missile ( struct GrvxTrajectory trj,
GrvxPlanetsHandle  planets,
double  h,
int *  premature 
)
Here is the call graph for this function: