#ifndef ATP_H_
#define ATP_H_
#define V1 0 /* mV */
#define H1 1
#define N1 2
#define M1 3
#define Ca0 4 /* nM */
#define A 5 /* ADP uM */
#define DL 6
#define N 7/* number of state variables*/
#define PI 3.14159
#define I_NA1 0
#define I_K1 1
#define I_L1 2
#define I_LCa 3 //calcium leak
#define I_CaL 4 //l-type calcium
#define I_NMDA 5
#define I_KATP 6
#define I_CAP 7
#define I_GABA 8
#define C 9 /* number of currents*/
#define CM 1.0 /*uF/cm2*/
#define E_NA 60.0
#define E_CA 60.0 //based on voltage curve fit
#define E_K -90.0
#define E_L -60.0
#define G_NA 1500.0e-6
#define G_K 440.0e-6
#define G_L 10.0e-6
#define TONIC 1 //if 1, G_GABA = constant if 0, G_GABA = 0 except in a 100 ms window.
#define G_GABA 0.0e-6 // 10e6 for 6c, 6E
#define E_GABA -70.0
#define G_LCa 0.05e-6
#define G_CaL 6.000000e-06
#define dloff -40.0 //to match nullcline
#define dlslope 7.5
//calcium pump
#define I_CAPMAX 200*G_CaL //fixing it in terms of G_CaL preserves Ca nullcine.
#define CHALF 500.0
#define CSLOPE 1.0
//morphology
#define FARADAY 96485.0
#define D_S 1.0 //microns
#define fsca 0.02 // 0.03 for 7b
//KATP
#define G_KATP 4.50000e-05
#define S_HALF 5.000000e+03 // 5000 for 4b, 4d, 5b, 6b, 7a-c
#define spower 1.3 //hill coefficient
#define A_HALF 100.0 //small is key
#define ACCU (2.0e5/D_S) // 2.0e5 ~= 4/(2*F) ie 1 calcium out = 1 ADP in
#define KM (43.0) // 45 for 7c
#define NOISE 0.0 //1.0 for 7a and 7b
//NMDA
#define G_NMDA 4.000000e-05 //0 for 4a, 4b
#define NMSLOPE 9.0 //9
#define NMC 0.02 //baseline activation of NMDA channel
#define NMOFF 102.0 //102 larger moves left 250
#define FIXED 0
#define VCLAMP 0
#define PRINT_STATES 1 //if 0 will only return spike times, ISI since last spike
#define WARMUP 0 //time (in ms) model will run before printing to remove transients
#define ENDTIME 10000+WARMUP
#endif