ivocvect.cpp File Reference

#include <../../nrnconf.h>
#include <stdio.h>
#include <stdlib.h>
#include <ivstream.h>
#include <math.h>
#include <errno.h>
#include <OS/math.h>
#include "fourier.h"
#include <InterViews/resource.h>
#include <OS/list.h>
#include "classreg.h"
#include "ivocvect.h"
#include <SmplHist.h>
#include "random1.h"
#include <Uniform.h>
#include <d_defs.h>
#include "oc2iv.h"
#include "parse.h"
#include <OS/string.h>
Include dependency graph for ivocvect.cpp:
This graph shows which files directly or indirectly include this file:

Classes

struct  SortIndex

Defines

#define BrainDamaged   1
#define M_PI   3.14159265358979323846
#define PI   M_PI
#define FWrite(arg1, arg2, arg3, arg4)   fwrite((char*)(arg1),arg2,arg3,arg4)
#define FRead(arg1, arg2, arg3, arg4)   fread((char*)(arg1),arg2,arg3,arg4)
#define BYTEHEADER   int _II__; char *_IN__; char _OUT__[16]; int BYTESWAP_FLAG=0;
#define BYTESWAP(_X__, _TYPE__)
#define MAX_FIT_PARAMS   20
#define TWO_BYTE_HIGH   65535.
#define ONE_BYTE_HIGH   255.
#define ONE_BYTE_HALF   128.
#define EPSILON   1e-9
#define PUBLIC_TYPE   1
#define USE_MLH_GSORT   0
#define SIMPLEX_MAXN   1e+300
#define SIMPLEX_INORM   1.2
#define SIMPLEX_ALPHA   2.0
#define SIMPLEX_BETA   1.4
#define SIMPLEX_GAMMA   0.7
#define SIMPLEX_DELTA   0.3
#define BYTES_PER_WORD   8
#define BYTES_PER_LONG   4
#define STACK_SIZE   (BYTES_PER_WORD * BYTES_PER_LONG)
#define PUSH(LOW, HIGH)   do {top->lo = LOW;top++->hi = HIGH;} while (0)
#define POP(LOW, HIGH)   do {LOW = (--top)->lo;HIGH = top->hi;} while (0)
#define STACK_NOT_EMPTY   (stack < top)
#define MAX_THRESH   4

Functions

void nrn_exit (int)
int cmpfcn (double a, double b)
double hoc_Log (double x)
double hoc_Log10 (double x)
double hoc_Exp (double x)
double hoc_Sqrt (double x)
double hoc_scan (FILE *)
void notify_freed_val_array (double *, int)
void install_vector_method (const char *name, double(*)(...))
int vector_instance_px (void *, double **)
int vector_arg_px (int, double **)
int nrn_mlh_gsort (double *vec, int *base_ptr, int total_elems, doubleComparator cmp)
Vect * vector_new (int n, Object *o)
Vect * vector_new0 ()
Vect * vector_new1 (int n)
Vect * vector_new2 (Vect *v)
void vector_delete (Vect *v)
int vector_buffer_size (Vect *v)
int vector_capacity (Vect *v)
void vector_resize (Vect *v, int n)
Object ** vector_temp_objvar (Vect *v)
double * vector_vec (Vect *v)
Object ** vector_pobj (Vect *v)
char * vector_get_label (Vect *v)
void vector_set_label (Vect *v, char *s)
Vect * vector_arg (int i)
boolean is_vector_arg (int i)
void nrn_vecsim_add (void *, boolean)
void nrn_vecsim_remove (void *)
double call_simplex (double *p, int n, Vect *x, Vect *y, char *fcn, int trial)
Object ** v_from_python (void *v)
Object ** v_to_python (void *v)
int hoc_araypt (Symbol *, int)
int ivoc_vector_size (Object *o)
double * ivoc_vector_ptr (Object *o, int index)
void Vector_reg ()

Variables

Object * hoc_thisobject
Symlisthoc_top_level_symlist
IvocVect *(* nrnpy_vec_from_python_p_ )(void *)
Object **(* nrnpy_vec_to_python_p_ )(void *)

Define Documentation

#define BrainDamaged   1
#define BYTEHEADER   int _II__; char *_IN__; char _OUT__[16]; int BYTESWAP_FLAG=0;
#define BYTES_PER_LONG   4
#define BYTES_PER_WORD   8
#define BYTESWAP ( _X__,
_TYPE__   ) 
Value:
if (BYTESWAP_FLAG == 1) { \
   _IN__ = (char *) &(_X__); \
   for (_II__=0;_II__<sizeof(_TYPE__);_II__++) { \
      _OUT__[_II__] = _IN__[sizeof(_TYPE__)-_II__-1]; } \
   (_X__) = *((_TYPE__ *) &_OUT__); \
    }
#define EPSILON   1e-9
#define FRead ( arg1,
arg2,
arg3,
arg4   )     fread((char*)(arg1),arg2,arg3,arg4)
#define FWrite ( arg1,
arg2,
arg3,
arg4   )     fwrite((char*)(arg1),arg2,arg3,arg4)
#define M_PI   3.14159265358979323846
#define MAX_FIT_PARAMS   20
#define MAX_THRESH   4

Referenced by nrn_mlh_gsort().

#define ONE_BYTE_HALF   128.
#define ONE_BYTE_HIGH   255.
#define PI   M_PI

Referenced by nrn_area_ri().

#define POP ( LOW,
HIGH   )     do {LOW = (--top)->lo;HIGH = top->hi;} while (0)

Referenced by nrn_mlh_gsort().

#define PUBLIC_TYPE   1
#define PUSH ( LOW,
HIGH   )     do {top->lo = LOW;top++->hi = HIGH;} while (0)

Referenced by nrn_mlh_gsort().

#define SIMPLEX_ALPHA   2.0
#define SIMPLEX_BETA   1.4
#define SIMPLEX_DELTA   0.3
#define SIMPLEX_GAMMA   0.7
#define SIMPLEX_INORM   1.2
#define SIMPLEX_MAXN   1e+300

Referenced by call_simplex().

#define STACK_NOT_EMPTY   (stack < top)

Referenced by nrn_mlh_gsort().

#define STACK_SIZE   (BYTES_PER_WORD * BYTES_PER_LONG)

Referenced by nrn_mlh_gsort().

#define TWO_BYTE_HIGH   65535.
#define USE_MLH_GSORT   0

Function Documentation

double call_simplex ( double *  p,
int  n,
Vect *  x,
Vect *  y,
char *  fcn,
int  trial 
)

References SIMPLEX_MAXN.

int cmpfcn ( double  a,
double  b 
)
int hoc_araypt ( Symbol ,
int   
)

Referenced by steer_point_process().

double hoc_Exp ( double  x  ) 
double hoc_Log ( double  x  ) 
double hoc_Log10 ( double  x  ) 
double hoc_scan ( FILE *   ) 
double hoc_Sqrt ( double  x  ) 
void install_vector_method ( const char *  name,
double(*)(...)  f 
)

References Proc::defn, hoc_execerror(), hoc_install(), hoc_table_lookup(), Inst::pfd, PUBLIC_TYPE, Symbol::u, and Symbol::u_proc.

Here is the call graph for this function:

boolean is_vector_arg ( int  i  ) 

References hoc_objgetarg(), and Symbol::u.

Referenced by LinearMechanism::create().

Here is the call graph for this function:

double* ivoc_vector_ptr ( Object *  o,
int  index 
)

References check_obj_type(), and Vect.

Referenced by SymDirectory::variable().

Here is the call graph for this function:

int ivoc_vector_size ( Object *  o  ) 

References Vect.

Referenced by SymDirectoryImpl::append().

void notify_freed_val_array ( double *  ,
int   
)
void nrn_exit ( int   ) 
int nrn_mlh_gsort ( double *  vec,
int base_ptr,
int  total_elems,
doubleComparator  cmp 
)
void nrn_vecsim_add ( void ,
boolean   
)
void nrn_vecsim_remove ( void  ) 
Object** v_from_python ( void v  ) 

References hoc_execerror(), nrnpy_vec_from_python_p_, and Vect.

Here is the call graph for this function:

Object** v_to_python ( void v  ) 

References hoc_execerror(), and nrnpy_vec_to_python_p_.

Here is the call graph for this function:

Vect* vector_arg ( int  i  ) 

References check_obj_type(), hoc_objgetarg(), Symbol::u, and Vect.

Here is the call graph for this function:

int vector_arg_px ( int  i,
double **  px 
)

References Vect, and vector_arg().

Here is the call graph for this function:

int vector_buffer_size ( Vect *  v  ) 
int vector_capacity ( Vect *  v  ) 
void vector_delete ( Vect *  v  ) 
char* vector_get_label ( Vect *  v  ) 
int vector_instance_px ( void v,
double **  px 
)

References Vect.

Vect* vector_new ( int  n,
Object *  o 
)

References Vect.

Vect* vector_new0 (  ) 

References Vect.

Vect* vector_new1 ( int  n  ) 

References Vect.

Vect* vector_new2 ( Vect *  v  ) 

References Vect.

Object** vector_pobj ( Vect *  v  ) 
void Vector_reg (  ) 
void vector_resize ( Vect *  v,
int  n 
)
void vector_set_label ( Vect *  v,
char *  s 
)
Object** vector_temp_objvar ( Vect *  v  ) 
double* vector_vec ( Vect *  v  ) 

Variable Documentation

Object* hoc_thisobject

Referenced by nrnpy_hoc(), and v_from_python().

Object**(* nrnpy_vec_to_python_p_)(void *)

Referenced by nrnpy_hoc(), and v_to_python().

Generated on Mon Jun 13 08:10:28 2011 for NEURON by  doxygen 1.6.3