pf_pdf.h

来自「机器人仿真平台,和stage配合运行」· C头文件 代码 · 共 96 行

H
96
字号
/************************************************************************** * Desc: Useful pdf functions * Author: Andrew Howard * Date: 10 Dec 2002 * CVS: $Id: pf_pdf.h,v 1.2.4.1 2003/04/18 19:01:18 inspectorg Exp $ *************************************************************************/#ifndef PF_PDF_H#define PF_PDF_H#include "pf_vector.h"#include <gsl/gsl_rng.h>#include <gsl/gsl_randist.h>#ifdef __cplusplusextern "C" {#endif/************************************************************************** * Gaussian *************************************************************************/// Gaussian PDF infotypedef struct{  // Mean, covariance and inverse covariance  pf_vector_t x;  pf_matrix_t cx;  pf_matrix_t cxi;  double cxdet;  // Decomposed covariance matrix (rotation * diagonal)  pf_matrix_t cr;  pf_vector_t cd;  // A random number generator  gsl_rng *rng;} pf_pdf_gaussian_t;// Create a gaussian pdfpf_pdf_gaussian_t *pf_pdf_gaussian_alloc(pf_vector_t x, pf_matrix_t cx);// Destroy the pdfvoid pf_pdf_gaussian_free(pf_pdf_gaussian_t *pdf);// Compute the value of the pdf at some point [z].double pf_pdf_gaussian_value(pf_pdf_gaussian_t *pdf, pf_vector_t z);// Generate a sample from the the pdf.pf_vector_t pf_pdf_gaussian_sample(pf_pdf_gaussian_t *pdf);/************************************************************************** * Discrete *************************************************************************/// Discrete PDF infotypedef struct{  // The list of discrete probs  int prob_count;  double *probs;  // A random number generator  gsl_rng *rng;  // The discrete prob generator  gsl_ran_discrete_t *ran;} pf_pdf_discrete_t;// Create a discrete pdfpf_pdf_discrete_t *pf_pdf_discrete_alloc(int count, double *probs);// Destroy the pdfvoid pf_pdf_discrete_free(pf_pdf_discrete_t *pdf);// Compute the value of the probability of some element [i]double pf_pdf_discrete_value(pf_pdf_discrete_t *pdf, int i);// Generate a sample from the the pdf.int pf_pdf_discrete_sample(pf_pdf_discrete_t *pdf);#ifdef __cplusplus}#endif#endif

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?