//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% // // NOTICE OF COPYRIGHT AND OWNERSHIP OF SOFTWARE // // Copyright 2007, The University Of Pennsylvania // School of Engineering & Applied Science. // All rights reserved. // For research use only; commercial use prohibited. // Distribution without permission of Maciej T. Lazarewicz not permitted. // mlazarew@seas.upenn.edu // //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% // Definition of the cellular properties in the network begintemplate CellParam public name, N, iappSl, iappSh, iappSsd, iappAl, iappAh, iappAsd, iappUnits strdef name proc init() { name = $s1// Name of the cell, e.g. Pyr N = $2 // Number of the cells in the network iappSl = $3 // The lowest value for the somatic injected curreent (over the population) iappSh = $4 // The highest value for the somatic injected curreent (over the population) iappSsd = $5 // Standard Deviation of the somatic injected curreent (for one cell) iappAl = $6 // apical iappAh = $7 // apical iappAsd = $8 // apical iappUnits = $9 // Units 0-pA 1-uA/cm2 //print $s1, $2, $3, $4, $5, $6, $7, $8, $9 } endtemplate CellParam // TEMPLATE begintemplate CellParamSet public cellSet objref cellSet strdef name, tmpstr, tmpstr2 proc init() { local N localobj fo, strFun N = 0 iappSl = 0 iappSh = 0 iappSsd = 0 iappAl = 0 iappAh = 0 iappAsd = 0 iappUnits = 0 cellSet = new List() strFun = new StringFunctions() // READ cells fo = new File("parameters/recruitcells.par") fo.ropen() while(!fo.eof()) { fo.gets(tmpstr) // Find in tmpstr all that follows non-blank character, and store it in tmpstr2 strFun.tail(tmpstr, "[^\t]", tmpstr2) // Remove end of the line strFun.head(tmpstr2, "\n", tmpstr2) // Process data if nonepty line if (strFun.len(tmpstr2)>0 && strFun.substr(tmpstr, "//")==-1) { sscanf(tmpstr, "%[^,], %d, %lf, %lf, %lf, %lf, %lf, %lf, %d\n", name, &N, &iappSl, &iappSh, &iappSsd, &iappAl, &iappAh, &iappAsd, &iappUnits) cellSet.append(new CellParam( name, N, iappSl, iappSh, iappSsd, iappAl, iappAh, iappAsd, iappUnits) ) } } fo.close() } endtemplate CellParamSet