00001
00002
00003 #ifndef __apop_models_h__
00004 #define __apop_models_h__
00005
00006 #include "types.h"
00007 #include "variadic.h"
00008 #include "stats.h"
00009 #include <gsl/gsl_matrix.h>
00010 #include <gsl/gsl_vector.h>
00011
00012 #ifdef __cplusplus
00013 extern "C" {
00014 #endif
00015
00016 extern apop_model apop_beta;
00017 extern apop_model apop_bernoulli;
00018 extern apop_model apop_binomial;
00019 extern apop_model apop_chi_squared;
00020 extern apop_model apop_dirichlet;
00021 extern apop_model apop_exponential;
00022 extern apop_model apop_f_distribution;
00023 extern apop_model apop_gamma;
00024 extern apop_model apop_histogram;
00025 extern apop_model apop_improper_uniform;
00026 extern apop_model apop_iv;
00027 extern apop_model apop_kernel_density;
00028 extern apop_model apop_logit;
00029 extern apop_model apop_lognormal;
00030 extern apop_model apop_multinomial;
00031 extern apop_model apop_multinomial_probit;
00032 extern apop_model apop_multivariate_normal;
00033 extern apop_model apop_normal;
00034 extern apop_model apop_ols;
00035 extern apop_model apop_pmf;
00036 extern apop_model apop_poisson;
00037 extern apop_model apop_probit;
00038 extern apop_model apop_t_distribution;
00039 extern apop_model apop_uniform;
00040 extern apop_model apop_waring;
00041 extern apop_model apop_wishart;
00042 extern apop_model apop_wls;
00043 extern apop_model apop_yule;
00044 extern apop_model apop_zipf;
00045
00048 #define apop_gaussian apop_normal
00049 #define apop_OLS apop_ols
00050 #define apop_PMF apop_pmf
00051 #define apop_F_distribution apop_f_distribution
00052 #define apop_WLS apop_wls
00053 #define apop_IV apop_iv
00054
00055
00056 void apop_model_free (apop_model * free_me);
00057 void apop_model_show (apop_model * print_me);
00058 apop_model * apop_model_copy(apop_model in);
00059 apop_model * apop_model_clear(apop_data * data, apop_model *model);
00060
00061 apop_model * apop_estimate(apop_data *d, apop_model m);
00062 void apop_score(apop_data *d, gsl_vector *out, apop_model *m);
00063 double apop_log_likelihood(apop_data *d, apop_model *m);
00064 double apop_p(apop_data *d, apop_model *m);
00065 void apop_draw(double *out, gsl_rng *r, apop_model *m);
00066 void apop_model_prep(apop_data *d, apop_model *m);
00067 apop_data * apop_expected_value(apop_data *d, apop_model *m);
00068
00069
00070 apop_model *apop_beta_from_mean_var(double m, double v);
00071
00072 #define apop_model_set_parameters(in, ...) apop_model_set_parameters_base((in), (double []) {__VA_ARGS__})
00073 apop_model *apop_model_set_parameters_base(apop_model in, double ap[]);
00074
00075 #ifdef __cplusplus
00076 }
00077 #endif
00078 #endif
Autogenerated by doxygen on 28 Sep 2009.