#include "orsa_orbit_gsl.h"
#include <gsl/gsl_roots.h>
#include <gsl/gsl_errno.h>
#include <gsl/gsl_siman.h>
#include <gsl/gsl_multimin.h>
#include <gsl/gsl_rng.h>
#include <gsl/gsl_multifit_nlin.h>
#include <gsl/gsl_blas.h>
#include <gsl/gsl_diff.h>
#include <gsl/gsl_deriv.h>
#include <gsl/gsl_linalg.h>
#include <gsl/gsl_cblas.h>
#include <gsl/gsl_randist.h>
#include <gsl/gsl_eigen.h>
#include "orsa_file.h"
#include "orsa_error.h"
#include <sys/time.h>
#include <time.h>
#include <string.h>
#include <algorithm>
#include <limits>
Go to the source code of this file.
Namespaces | |
namespace | orsa |
Defines | |
#define | N_TRIES 10 |
#define | ITERS_FIXED_T 3 |
#define | STEP_SIZE 1.0 |
#define | K 1.0e5 |
#define | T_INITIAL 0.01 |
#define | MU_T 1.005 |
#define | T_MIN 1.0e-6 |
#define | FIT(i) gsl_vector_get(s->x, i) |
#define | ERR(i) sqrt(gsl_matrix_get(covar,i,i)) |
Functions | |
double | Weight (const Observation &obs1, const Observation &obs2, const double optimal_dt=FromUnits(1, DAY)) |
double | Weight (vector< Observation > &obs, const double optimal_dt=FromUnits(1, DAY)) |
void | BuildObservationTriplets (const vector< Observation > &obs, vector< ThreeObservations > &triplets, const double optimal_dt=FromUnits(1, DAY)) |
double | MOID_f (const gsl_vector *v, void *params) |
double | MOID (const Orbit &, const Orbit &, Vector &, Vector &) |
Minimal Orbit Intersection Distance between two orbits. | |
double | MOID2RB_f (const gsl_vector *v, void *params) |
double | MOID2RB (const Vector &, const Vector &, const Orbit &, const Orbit &, Vector &, Vector &) |
Minimal Orbit Intersection Distance between two orbits with different reference bodies. | |
double | E1 (void *p) |
double | M1 (void *p1, void *p2) |
void | S1 (const gsl_rng *r, void *p, double step_size) |
int | least_sq_f (const gsl_vector *v, void *params, gsl_vector *f) |
double | least_sq_diff_f (double x, void *params) |
int | least_sq_df (const gsl_vector *v, void *params, gsl_matrix *J) |
int | least_sq_fdf (const gsl_vector *v, void *params, gsl_vector *f, gsl_matrix *J) |
void | OrbitDifferentialCorrectionsLeastSquares (OrbitWithCovarianceMatrixGSL &orbit, const vector< Observation > &obs) |
int | gauss_v_f (const gsl_vector *v, void *params, gsl_vector *f) |
double | gauss_v_diff_f (double x, void *params) |
int | gauss_v_df (const gsl_vector *v, void *params, gsl_matrix *J) |
int | gauss_v_fdf (const gsl_vector *v, void *params, gsl_vector *f, gsl_matrix *J) |
void | gauss_v (const Vector &r, Vector &v, const vector< Observation > &obs) |
OrbitWithCovarianceMatrixGSL | Compute (const vector< Observation > &obs) |
double | poly_8 (double x, void *params) |
double | poly_8_df (double x, void *params) |
void | poly_8_fdf (double x, void *params, double *y, double *dy) |
void | poly_8_gsl_solve (poly_8_params ¶ms, vector< poly_8_solution > &solutions) |
void | Compute_Gauss (const vector< Observation > &obs_in, vector< PreliminaryOrbit > &preliminary_orbits) |
void | Compute_TestMethod (const vector< Observation > &obs_in, vector< PreliminaryOrbit > &preliminary_orbits) |
double | CloseApproaches_gsl_f (const gsl_vector *v, void *params) |
void | SearchCloseApproaches (const Evolution *evol, const unsigned int obj_index, const unsigned int index, std::vector< CloseApproach > &clapp, const double distance_threshold, const double time_accuracy) |
Variables | |
const gsl_siman_params_t | params = {N_TRIES, ITERS_FIXED_T, STEP_SIZE, K, T_INITIAL, MU_T, T_MIN} |
const double | d_a = 0.1 |
const double | d_e = 0.01 |
const double | d_i = 0.1*(pi/180) |
const double | d_omega_node = 1.0*(pi/180) |
const double | d_omega_pericenter = 1.0*(pi/180) |
const double | d_M = 5.0*(pi/180) |
const double | c_a = secure_pow(1.0/d_a, 2) |
const double | c_e = secure_pow(1.0/d_e, 2) |
const double | c_i = secure_pow(1.0/d_i, 2) |
const double | c_omega_node = secure_pow(1.0/d_omega_node, 2) |
const double | c_omega_pericenter = secure_pow(1.0/d_omega_pericenter, 2) |
const double | c_M = secure_pow(1.0/d_M, 2) |
#define ERR | ( | i | ) | sqrt(gsl_matrix_get(covar,i,i)) |
Referenced by orsa::OrbitDifferentialCorrectionsLeastSquares().
#define FIT | ( | i | ) | gsl_vector_get(s->x, i) |
Referenced by orsa::OrbitDifferentialCorrectionsLeastSquares().
#define ITERS_FIXED_T 3 |
Definition at line 551 of file orsa_orbit_gsl.cc.
#define K 1.0e5 |
Definition at line 557 of file orsa_orbit_gsl.cc.
#define MU_T 1.005 |
Definition at line 563 of file orsa_orbit_gsl.cc.
#define N_TRIES 10 |
Definition at line 548 of file orsa_orbit_gsl.cc.
#define STEP_SIZE 1.0 |
Definition at line 554 of file orsa_orbit_gsl.cc.
#define T_INITIAL 0.01 |
Definition at line 560 of file orsa_orbit_gsl.cc.
#define T_MIN 1.0e-6 |
Definition at line 564 of file orsa_orbit_gsl.cc.