⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 unuran.h

📁 可以产生随机网络拓扑(包括waxman等多种模型)的源码
💻 H
📖 第 1 页 / 共 3 页
字号:
/* file automatically generated by unuran/scripts/merge_h.pl                 *//***************************************************************************** *                                                                           * *          UNURAN -- Universal Non-Uniform Random number generator          * *                                                                           * ***************************************************************************** *                                                                           * *   FILE: unuran.h                                                          * *                                                                           * ***************************************************************************** *                                                                           * *   Copyright (c) 2000 Wolfgang Hoermann and Josef Leydold                  * *   Dept. for Statistics, University of Economics, Vienna, Austria          * *                                                                           * *   This program is free software; you can redistribute it and/or modify    * *   it under the terms of the GNU General Public License as published by    * *   the Free Software Foundation; either version 2 of the License, or       * *   (at your option) any later version.                                     * *                                                                           * *   This program is distributed in the hope that it will be useful,         * *   but WITHOUT ANY WARRANTY; without even the implied warranty of          * *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the           * *   GNU General Public License for more details.                            * *                                                                           * *   You should have received a copy of the GNU General Public License       * *   along with this program; if not, write to the                           * *   Free Software Foundation, Inc.,                                         * *   59 Temple Place, Suite 330, Boston, MA 02111-1307, USA                  * *                                                                           * *****************************************************************************/#undef __BEGIN_DECLS#undef __END_DECLS#ifdef __cplusplus#  define __BEGIN_DECLS extern "C" {#  define __END_DECLS }#else#  define __BEGIN_DECLS /* empty */#  define __END_DECLS /* empty */#endif__BEGIN_DECLS#ifndef UNURAN_H_IN_SEEN#define UNURAN_H_IN_SEEN#include <limits.h>#include <stdio.h>#include <stdlib.h>#include "unuran_config.h"/*-----*//* <1> `unur_typedefs.h' */#ifndef UNUR_TYPEDEFS_H_SEEN#define UNUR_TYPEDEFS_H_SEENstruct unur_distr;                       typedef struct unur_distr UNUR_DISTR;struct unur_par;                         typedef struct unur_par   UNUR_PAR;struct unur_gen;                         typedef struct unur_gen   UNUR_GEN;typedef double UNUR_FUNCT_CONT(double x, const struct unur_distr *distr);typedef double UNUR_FUNCT_DISCR(int x, const struct unur_distr *distr);typedef double UNUR_FUNCT_CVEC(const double *x, const struct unur_distr *distr);typedef int UNUR_VFUNCT_CVEC(double *result, const double *x, const struct unur_distr *distr);struct unur_slist;         #endif  /* end of `unur_typedefs.h' *//*-----*//*-----*//* <1> `unur_uniform.h' */#ifndef UNUR_UNIFORM_H_SEEN#define UNUR_UNIFORM_H_SEENdouble unur_urng_MRG31k3p (void);int unur_urng_MRG31k3p_seed (long seed);int unur_urng_MRG31k3p_reset (void);double unur_urng_fish (void);int unur_urng_fish_seed (long seed);int unur_urng_fish_reset (void);double unur_urng_mstd (void);int unur_urng_mstd_seed (long seed);int unur_urng_mstd_reset (void);#endif  /* end of `unur_uniform.h' *//*-----*//*-----*//* <1> `x_urng.h' */#ifndef X_URNG_H_SEEN#define X_URNG_H_SEENUNUR_URNG *unur_get_default_urng( void );UNUR_URNG *unur_set_default_urng( UNUR_URNG *urng_new );UNUR_URNG *unur_set_default_urng_aux( UNUR_URNG *urng_new );UNUR_URNG *unur_get_default_urng_aux( void );int unur_set_urng( UNUR_PAR *parameters, UNUR_URNG *urng );UNUR_URNG *unur_chg_urng( UNUR_GEN *generator, UNUR_URNG *urng );UNUR_URNG *unur_get_urng( UNUR_GEN *generator );int unur_set_urng_aux( UNUR_PAR *parameters, UNUR_URNG *urng_aux );int unur_use_urng_aux_default( UNUR_PAR *parameters );int unur_chgto_urng_aux_default( UNUR_GEN *generator );UNUR_URNG *unur_chg_urng_aux( UNUR_GEN *generator, UNUR_URNG *urng_aux );UNUR_URNG *unur_get_urng_aux( UNUR_GEN *generator );#endif  /* end of `x_urng.h' *//*-----*//*-----*//* <1> `distr.h' */enum {  UNUR_DISTR_CONT  = 0x010u,        UNUR_DISTR_CEMP  = 0x011u,        UNUR_DISTR_CVEC  = 0x110u,        UNUR_DISTR_CVEMP = 0x111u,        UNUR_DISTR_DISCR = 0x020u       };void unur_distr_free( UNUR_DISTR *distribution );int unur_distr_set_name( UNUR_DISTR *distribution, const char *name );const char *unur_distr_get_name( const UNUR_DISTR *distribution );int unur_distr_get_dim( const UNUR_DISTR *distribution );unsigned int unur_distr_get_type( const UNUR_DISTR *distribution );int unur_distr_is_cont( const UNUR_DISTR *distribution );int unur_distr_is_cvec( const UNUR_DISTR *distribution );int unur_distr_is_cemp( const UNUR_DISTR *distribution );int unur_distr_is_cvemp( const UNUR_DISTR *distribution );int unur_distr_is_discr( const UNUR_DISTR *distribution );/* end of `distr.h' *//*-----*//*-----*//* <1> `cemp.h' */UNUR_DISTR *unur_distr_cemp_new( void );int unur_distr_cemp_set_data( UNUR_DISTR *distribution, const double *sample, int n_sample );int unur_distr_cemp_read_data( UNUR_DISTR *distribution, const char *filename );int unur_distr_cemp_get_data( const UNUR_DISTR *distribution, const double **sample );/* end of `cemp.h' *//*-----*//*-----*//* <1> `cont.h' */UNUR_DISTR *unur_distr_cont_new( void );int unur_distr_cont_set_pdf( UNUR_DISTR *distribution, UNUR_FUNCT_CONT *pdf );int unur_distr_cont_set_dpdf( UNUR_DISTR *distribution, UNUR_FUNCT_CONT *dpdf );int unur_distr_cont_set_cdf( UNUR_DISTR *distribution, UNUR_FUNCT_CONT *cdf );UNUR_FUNCT_CONT *unur_distr_cont_get_pdf( const UNUR_DISTR *distribution );UNUR_FUNCT_CONT *unur_distr_cont_get_dpdf( const UNUR_DISTR *distribution );UNUR_FUNCT_CONT *unur_distr_cont_get_cdf( const UNUR_DISTR *distribution );double unur_distr_cont_eval_pdf( double x, const UNUR_DISTR *distribution );double unur_distr_cont_eval_dpdf( double x, const UNUR_DISTR *distribution );double unur_distr_cont_eval_cdf( double x, const UNUR_DISTR *distribution );int unur_distr_cont_set_pdfstr( UNUR_DISTR *distribution, const char *pdfstr );int unur_distr_cont_set_cdfstr( UNUR_DISTR *distribution, const char *cdfstr );char *unur_distr_cont_get_pdfstr( const UNUR_DISTR *distribution );char *unur_distr_cont_get_dpdfstr( const UNUR_DISTR *distribution );char *unur_distr_cont_get_cdfstr( const UNUR_DISTR *distribution );int unur_distr_cont_set_pdfparams( UNUR_DISTR *distribution, const double *params, int n_params );int unur_distr_cont_get_pdfparams( const UNUR_DISTR *distribution, const double **params );int unur_distr_cont_set_domain( UNUR_DISTR *distribution, double left, double right );int unur_distr_cont_get_domain( const UNUR_DISTR *distribution, double *left, double *right );int unur_distr_cont_get_truncated( const UNUR_DISTR *distribution, double *left, double *right );int unur_distr_cont_set_hr( UNUR_DISTR *distribution, UNUR_FUNCT_CONT *hazard );UNUR_FUNCT_CONT *unur_distr_cont_get_hr( const UNUR_DISTR *distribution );double unur_distr_cont_eval_hr( double x, const UNUR_DISTR *distribution );int unur_distr_cont_set_hrstr( UNUR_DISTR *distribution, const char *hrstr );char *unur_distr_cont_get_hrstr( const UNUR_DISTR *distribution );int unur_distr_cont_set_mode( UNUR_DISTR *distribution, double mode );int unur_distr_cont_upd_mode( UNUR_DISTR *distribution );double unur_distr_cont_get_mode( UNUR_DISTR *distribution );int unur_distr_cont_set_pdfarea( UNUR_DISTR *distribution, double area );int unur_distr_cont_upd_pdfarea( UNUR_DISTR *distribution );double unur_distr_cont_get_pdfarea( UNUR_DISTR *distribution );/* end of `cont.h' *//*-----*//*-----*//* <1> `corder.h' */UNUR_DISTR *unur_distr_corder_new( const UNUR_DISTR *distribution, int n, int k );const UNUR_DISTR *unur_distr_corder_get_distribution( const UNUR_DISTR *distribution );int unur_distr_corder_set_rank( UNUR_DISTR *distribution, int n, int k );int unur_distr_corder_get_rank( const UNUR_DISTR *distribution, int *n, int *k );#define unur_distr_corder_get_pdf(distr)   unur_distr_cont_get_pdf((distr))#define unur_distr_corder_get_dpdf(distr)  unur_distr_cont_get_dpdf((distr))#define unur_distr_corder_get_cdf(distr)   unur_distr_cont_get_cdf((distr))#define unur_distr_corder_eval_pdf(x,distr)  unur_distr_cont_eval_pdf((x),(distr))#define unur_distr_corder_eval_dpdf(x,distr) unur_distr_cont_eval_dpdf((x),(distr))#define unur_distr_corder_eval_cdf(x,distr)  unur_distr_cont_eval_cdf((x),(distr))#define unur_distr_corder_set_pdfparams(distr,params,n)  unur_distr_cont_set_pdfparams((distr),(params),(n))#define unur_distr_corder_get_pdfparams(distr,params)  unur_distr_cont_get_pdfparams((distr),(params))#define unur_distr_corder_set_domain(distr,left,right)  unur_distr_cont_set_domain((distr),(left),(right))#define unur_distr_corder_get_domain(distr,left,right)  unur_distr_cont_get_domain((distr),(left),(right))#define unur_distr_corder_get_truncated(distr,left,right)  unur_distr_cont_get_truncated((distr),(left),(right))#define unur_distr_corder_set_mode(distr,mode)   unur_distr_cont_set_mode((distr),(mode))#define unur_distr_corder_upd_mode(distr)   unur_distr_cont_upd_mode((distr))#define unur_distr_corder_get_mode(distr)   unur_distr_cont_get_mode((distr))#define unur_distr_corder_set_pdfarea(distr,area)   unur_distr_cont_set_pdfarea((distr),(area))#define unur_distr_corder_upd_pdfarea(distr)   unur_distr_cont_upd_pdfarea((distr))#define unur_distr_corder_get_pdfarea(distr)   unur_distr_cont_get_pdfarea((distr))/* end of `corder.h' *//*-----*//*-----*//* <1> `cvec.h' */UNUR_DISTR *unur_distr_cvec_new( int dim );int unur_distr_cvec_set_pdf( UNUR_DISTR *distribution, UNUR_FUNCT_CVEC *pdf );int unur_distr_cvec_set_dpdf( UNUR_DISTR *distribution, UNUR_VFUNCT_CVEC *dpdf );UNUR_FUNCT_CVEC *unur_distr_cvec_get_pdf( const UNUR_DISTR *distribution );UNUR_VFUNCT_CVEC *unur_distr_cvec_get_dpdf( const UNUR_DISTR *distribution );double unur_distr_cvec_eval_pdf( const double *x, const UNUR_DISTR *distribution );int unur_distr_cvec_eval_dpdf( double *result, const double *x, const UNUR_DISTR *distribution );int unur_distr_cvec_set_mean( UNUR_DISTR *distribution, const double *mean );const double *unur_distr_cvec_get_mean( const UNUR_DISTR *distribution );int unur_distr_cvec_set_covar( UNUR_DISTR *distribution, const double *covar );const double *unur_distr_cvec_get_covar( const UNUR_DISTR *distribution );int unur_distr_cvec_set_pdfparams( UNUR_DISTR *distribution, int par, const double *params, int n_params );int unur_distr_cvec_get_pdfparams( const UNUR_DISTR *distribution, int par, const double **params );int unur_distr_cvec_set_mode( UNUR_DISTR *distribution, const double *mode );const double *unur_distr_cvec_get_mode( const UNUR_DISTR *distribution );int unur_distr_cvec_set_pdfvol( UNUR_DISTR *distribution, double volume );double unur_distr_cvec_get_pdfvol( const UNUR_DISTR *distribution );/* end of `cvec.h' *//*-----*//*-----*//* <1> `cvemp.h' */UNUR_DISTR *unur_distr_cvemp_new( int dim ); int unur_distr_cvemp_set_data( UNUR_DISTR *distribution, const double *sample, int n_sample );int unur_distr_cvemp_read_data( UNUR_DISTR *distribution, const char *filename );int unur_distr_cvemp_get_data( const UNUR_DISTR *distribution, const double **sample );/* end of `cvemp.h' *//*-----*//*-----*//* <1> `discr.h' */UNUR_DISTR *unur_distr_discr_new( void );int unur_distr_discr_set_pv( UNUR_DISTR *distribution, const double *pv, int n_pv );int unur_distr_discr_make_pv( UNUR_DISTR *distribution );int unur_distr_discr_get_pv( const UNUR_DISTR *distribution, const double **pv );int unur_distr_discr_set_pmf( UNUR_DISTR *distribution, UNUR_FUNCT_DISCR *pmf );int unur_distr_discr_set_cdf( UNUR_DISTR *distribution, UNUR_FUNCT_DISCR *cdf );UNUR_FUNCT_DISCR *unur_distr_discr_get_pmf( const UNUR_DISTR *distribution );UNUR_FUNCT_DISCR *unur_distr_discr_get_cdf( const UNUR_DISTR *distribution );double unur_distr_discr_eval_pv(int k, const UNUR_DISTR *distribution );double unur_distr_discr_eval_pmf( int k, const UNUR_DISTR *distribution );double unur_distr_discr_eval_cdf( int k, const UNUR_DISTR *distribution );int unur_distr_discr_set_pmfstr( UNUR_DISTR *distribution, const char *pmfstr );int unur_distr_discr_set_cdfstr( UNUR_DISTR *distribution, const char *cdfstr );char *unur_distr_discr_get_pmfstr( const UNUR_DISTR *distribution );char *unur_distr_discr_get_cdfstr( const UNUR_DISTR *distribution );int unur_distr_discr_set_pmfparams( UNUR_DISTR *distribution, const double *params, int n_params );int unur_distr_discr_get_pmfparams( const UNUR_DISTR *distribution, const double **params );int unur_distr_discr_set_domain( UNUR_DISTR *distribution, int left, int right );int unur_distr_discr_get_domain( const UNUR_DISTR *distribution, int *left, int *right );

⌨️ 快捷键说明

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