#include <stdio.h>
#include <stdlib.h>
Go to the source code of this file.
Defines | |
#define | ASPI_PI 3.14159265358979323846 |
#define | DEBUG 1 |
#define | aspi_return_if_fail(expr) |
#define | aspi_return_value_if_fail(expr, value) |
Functions | |
void | aspi_init_rand (int seed) |
Init random number generator. | |
double | aspi_misc_random_number (void) |
Random number. | |
double | aspi_misc_random_gaussian (double mean, double sigma) |
Gaussian random number. | |
double | aspi_misc_gaussian (double mu, double sigma, double x) |
int | aspi_misc_random_binomial (int runs, double proba) |
int | aspi_misc_random_poisson (double lambda) |
void | aspi_misc_poisson_set_runs (int runs) |
Variables | |
const void * | aspi_null |
#define ASPI_PI 3.14159265358979323846 |
Referenced by aspi_misc_gaussian(), and aspi_misc_random_gaussian().
#define aspi_return_if_fail | ( | expr | ) |
Value:
if (!(expr)) \ { \ fprintf(stderr, \ "** CRITICAL ** file %s: line %d (%s): assertion `%s' failed.\n", \ __FILE__, \ __LINE__, \ __PRETTY_FUNCTION__, \ #expr); \ if (DEBUG) \ abort (); \ return; \ };
Referenced by aspi_basic_synapses_add_to_trace(), aspi_class_check(), aspi_class_register(), aspi_leaky_add_in_n_steps(), aspi_leaky_set_max_delay(), aspi_leaky_set_memory(), aspi_network_learn_ranged(), aspi_object_check(), aspi_object_dtor(), aspi_object_free(), aspi_object_release(), aspi_object_retain(), aspi_synapses_add_to_trace(), aspi_synapses_apply_callback(), aspi_synapses_apply_callback_post(), aspi_synapses_apply_callback_pre(), aspi_synapses_set_delay(), and aspi_synapses_set_weight().
#define aspi_return_value_if_fail | ( | expr, | |||
value | ) |
Value:
if (!(expr)) \ { \ fprintf(stderr, \ "** CRITICAL ** file %s: line %d (%s): assertion `%s' failed.\n", \ __FILE__, \ __LINE__, \ __PRETTY_FUNCTION__, \ #expr); \ if (DEBUG) \ abort (); \ return (value); \ };
Referenced by aspi_basic_synapses_init(), aspi_class_instantiate(), aspi_class_is_a(), aspi_leaky_get_v_trace_at(), aspi_network_dup(), aspi_network_get_freq_kurtosis(), aspi_network_get_freq_skewness(), aspi_network_get_neuron(), aspi_network_ml_dup(), aspi_network_ml_get_layer_size(), aspi_network_ml_get_neuron_index(), aspi_network_ml_init_poisson(), aspi_object_copy(), aspi_object_dup(), aspi_object_is_a(), aspi_sparse_synapses_init(), aspi_synapses_get_delay(), aspi_synapses_get_trace(), aspi_synapses_get_weight(), and aspi_synapses_init_generic().
#define DEBUG 1 |
Assertion macro inspired from GNU Glib's g_return(_value)_if_fail (http://www.gtk.org), but a little more fascist when the library is compiled in debug mode
void aspi_init_rand | ( | int | seed | ) |
Init random number generator.
seed,: | the seed |
double aspi_misc_gaussian | ( | double | mu, | |
double | sigma, | |||
double | x | |||
) |
Return a number of a gaussian function (not random distribution
References ASPI_PI.
void aspi_misc_poisson_set_runs | ( | int | runs | ) |
Set the number of runs to calculate poisson law
Poisson law is appromixated by n runs of a binomial law. This function allows you to set this n.
int aspi_misc_random_binomial | ( | int | runs, | |
double | proba | |||
) |
Return a number following a binomial law
Corresponds to running n Bernouilli trials.
runs | : number of runs | |
proba | : probability of each run |
References aspi_misc_random_number().
Referenced by aspi_misc_random_poisson().
double aspi_misc_random_gaussian | ( | double | mean, | |
double | sigma | |||
) |
Gaussian random number.
Return a number using a gaussian random law
mean | : mean of the law | |
sigma | : variance |
References aspi_misc_random_number(), and ASPI_PI.
Referenced by aspi_leaky_update_voltage(), and aspi_network_ml_init_sparse().
double aspi_misc_random_number | ( | void | ) |
Random number.
Generator must have been initialized with srand ()
Referenced by aspi_misc_random_binomial(), aspi_misc_random_gaussian(), and aspi_network_ml_init_sparse().
int aspi_misc_random_poisson | ( | double | lambda | ) |
Return a number following a random gaussian law
lambda,: | the parameter to poisson law. |
References aspi_misc_random_binomial().
Referenced by aspi_network_ml_init_poisson().
const void* aspi_null |