proc print_tau() { printf("%g %g %g %g %g %g %g %g | %g %g %g %g %g %g\n", t1, t2, t3, t4, t5, t6, t7, t8, dendIh_growth, holdclamp.amp, Rm, Cm, gkhbar_tot(), gkhbar_scale) } func gkhbar_tot() { gkhbar_t = 0 forall for(x) { if (!issection("axon.*") && (issection("soma.*") || (issection("dendrite.*") && hD == 1))) { // Calculates total conductance, in pS // 10^4 factor required to convert from S/cm^2 to pS/um^2. // gkhbar_t then has units of pS. gkhbar_t = gkhbar_t + (gkhbar_Ih(x) * 10^4 * area(x)) } } // Return in nS so we get, e.g., 1.443 instead of 1443 for Richy (uniform dendritic Ih with gkhbar=0.1pS/um^2). return gkhbar_t * 10^-3 } /* * Completely unnecessary! Just set h = 0 and init() in params.hoc will take care of the rest! */ proc gkhbar_Ih_off() { forall { if (issection("soma.*")) { gkhbar_Ih = 0 } else if (issection("dend.*") && hD == 1) { for (x) { gkhbar_Ih(x) = 0 } } } }