ocssw V2020
gsm.c File Reference
#include <stdio.h>
#include <math.h>
#include "l12_proto.h"
#include "amoeba.h"
#include <gsl/gsl_errno.h>
#include <gsl/gsl_vector.h>
#include <gsl/gsl_blas.h>
#include <gsl/gsl_multifit_nlin.h>
Include dependency graph for gsm.c:

Go to the source code of this file.

Classes

struct  datastruct
 

Macros

#define NPAR   3
 
#define MAXITR   500
 
#define GSMDEFAULT   0
 
#define CHESAPEAKE   1
 
#define AMOEBA   0
 
#define LEVMARQ   1
 

Functions

int gsm_ran (int recnum)
 
void set_cb_model (float wave[], int32_t nwave, float lon, float lat, int32_t day)
 
double gsm_amb (FITSTRUCT *auxdata, double par[])
 
int fit_gsm_amb (double Rrs[], double wts[], int32_t npts, double fitparms[], double Rrs_fit[], int16 *itercnt)
 
void run_gsm_amb (l2str *l2rec)
 
int gsm_lm_f (const gsl_vector *par, void *data, gsl_vector *f)
 
int gsm_lm_df (const gsl_vector *par, void *data, gsl_matrix *J)
 
int gsm_lm_fdf (const gsl_vector *par, void *data, gsl_vector *f, gsl_matrix *J)
 
void run_gsm_lm (l2str *l2rec)
 
void run_gsm (l2str *l2rec)
 
void get_gsm (l2str *l2rec, l2prodstr *p, float prod[])
 
int16 * get_iter_gsm (l2str *l2rec)
 
void iops_gsm (l2str *l2rec)
 

Variables

struct datastruct data
 

Macro Definition Documentation

◆ AMOEBA

#define AMOEBA   0

Definition at line 34 of file gsm.c.

◆ CHESAPEAKE

#define CHESAPEAKE   1

Definition at line 32 of file gsm.c.

◆ GSMDEFAULT

#define GSMDEFAULT   0

Definition at line 31 of file gsm.c.

◆ LEVMARQ

#define LEVMARQ   1

Definition at line 35 of file gsm.c.

◆ MAXITR

#define MAXITR   500

Definition at line 29 of file gsm.c.

◆ NPAR

#define NPAR   3

Definition at line 28 of file gsm.c.

Function Documentation

◆ fit_gsm_amb()

int fit_gsm_amb ( double  Rrs[],
double  wts[],
int32_t  npts,
double  fitparms[],
double  Rrs_fit[],
int16 *  itercnt 
)

Definition at line 243 of file gsm.c.

◆ get_gsm()

void get_gsm ( l2str *  l2rec,
l2prodstr *  p,
float  prod[] 
)

Definition at line 717 of file gsm.c.

◆ get_iter_gsm()

int16* get_iter_gsm ( l2str *  l2rec)

Definition at line 875 of file gsm.c.

◆ gsm_amb()

double gsm_amb ( FITSTRUCT auxdata,
double  par[] 
)

Definition at line 210 of file gsm.c.

◆ gsm_lm_df()

int gsm_lm_df ( const gsl_vector *  par,
void *  data,
gsl_matrix *  J 
)

Definition at line 458 of file gsm.c.

◆ gsm_lm_f()

int gsm_lm_f ( const gsl_vector *  par,
void *  data,
gsl_vector *  f 
)

Definition at line 395 of file gsm.c.

◆ gsm_lm_fdf()

int gsm_lm_fdf ( const gsl_vector *  par,
void *  data,
gsl_vector *  f,
gsl_matrix *  J 
)

Definition at line 478 of file gsm.c.

◆ gsm_ran()

int gsm_ran ( int  recnum)

Definition at line 72 of file gsm.c.

◆ iops_gsm()

void iops_gsm ( l2str *  l2rec)

Definition at line 885 of file gsm.c.

◆ run_gsm()

void run_gsm ( l2str *  l2rec)

Definition at line 634 of file gsm.c.

◆ run_gsm_amb()

void run_gsm_amb ( l2str *  l2rec)

Definition at line 290 of file gsm.c.

◆ run_gsm_lm()

void run_gsm_lm ( l2str *  l2rec)

Definition at line 491 of file gsm.c.

◆ set_cb_model()

void set_cb_model ( float  wave[],
int32_t  nwave,
float  lon,
float  lat,
int32_t  day 
)

Definition at line 84 of file gsm.c.

Variable Documentation

◆ data

struct datastruct data