Changeset 31587 in project
- Timestamp:
- 10/05/14 05:49:16 (6 years ago)
- Location:
- release/4/nemo/trunk
- Files:
-
- 9 edited
Legend:
- Unmodified
- Added
- Removed
-
release/4/nemo/trunk/nemo-nest.scm
r31562 r31587 307 307 308 308 309 (let-optionals rest ((dirname ".") (method #f) (ss-method #f) (abstol #f) (reltol #f) (maxstep #f)) 309 (let-optionals rest ((dirname ".") 310 (method #f) (ss-method #f) 311 (abstol #f) (reltol #f) (maxstep #f) 312 (dump-template-env #f)) 310 313 311 314 (let ((method (or method 'gsl))) … … 705 708 (stateIndexMap . ,(map (lambda (x) (cons (first x) (second x))) state-index-map)) 706 709 (steadyStateIndexMap . ,(map (lambda (x) (cons (first x) (second x))) steady-state-index-map)) 707 (stateDefs . ,(map first state-index-map)) 710 (stateDefs . ,(map (lambda (def) 711 (let* ((n (first def)) 712 (nu (lookup-def n c-units)) 713 (nscale (and nu (nemo:unit-scale nu)))) 714 `( 715 (name . ,(nest-name n)) 716 (scale . ,nscale) 717 ) 718 )) 719 state-index-map)) 708 720 (defaultDefs . ,(map first defaults)) 709 721 … … 972 984 event-external-eq-defs pscs)) 973 985 986 (if dump-template-env 987 (for-each (lambda (entry) 988 (fprintf (current-error-port) 989 "~A = ~A~%" (car entry) 990 (ersatz:tvalue->pystr (cdr entry)))) 991 tmpl-env 992 )) 993 974 994 (let ((cpp-output (open-output-file (make-output-fname dirname prefix ".cpp"))) 975 995 (hpp-output (open-output-file (make-output-fname dirname prefix ".h")))) -
release/4/nemo/trunk/nemo.scm
r31480 r31587 421 421 (lookup-def 'abstol options) 422 422 (lookup-def 'reltol options) 423 (lookup-def 'maxstep options) )) 423 (lookup-def 'maxstep options) 424 (lookup-def 'dump-template-env options) )) 424 425 (lambda (options model) 425 426 (void)))) … … 2566 2567 (reltol . ,nest-reltol) 2567 2568 (maxstep . ,nest-maxstep) 2569 (dump-template-env . ,(opt 'dump-template-env)) 2568 2570 ) 2569 2571 sys)) -
release/4/nemo/trunk/templates/NEST-accessors_modifiers.tmpl
r31562 r31587 12 12 13 13 } 14 15 14 16 15 void {{modelName}}::Parameters_::set (const DictionaryDatum &d) … … 54 53 55 54 {% if hasattr(stateIndexMap,"v") %} 56 def<double_t>(d, names::V_m, y_[{{attr(stateIndexMap, name)}}]);55 def<double_t>(d, names::V_m, y_[{{attr(stateIndexMap,"v")}}]); 57 56 58 57 {% endif %} 59 58 60 59 } 61 62 60 63 61 void {{modelName}}::State_::set (const DictionaryDatum &d, const Parameters_&) … … 79 77 80 78 } 81 -
release/4/nemo/trunk/templates/NEST-cvode-event.tmpl
r31482 r31587 19 19 state = &(node.S_); 20 20 21 {% if ( haskey(stateIndexMap,"v") and haskey(defaults,"V_t") %}21 {% if ((haskey(stateIndexMap,"v") and ("V_t" in defaultDefs)) %} 22 22 v = Ith (y, {{attr(stateIndexMap,"v")}}); 23 vt = params-> {{attr(defaults,"V_t")}};23 vt = params->V_t; 24 24 g[0] = v - vt; 25 25 {% else %} -
release/4/nemo/trunk/templates/NEST-emit-spike.tmpl
r31482 r31587 13 13 } 14 14 15 {% elif ((ODEmethod == "gsl") and haskey(defaults,"V_t")) %}15 {% elif ((ODEmethod == "gsl") and ("V_t" in defaultDefs)) %} 16 16 17 17 if ( S_.r_ > 0 ) -
release/4/nemo/trunk/templates/NEST-function.tmpl
r31508 r31587 20 20 double {{functionDef.localVars | join(", ")}}; 21 21 {% endif %} 22 23 22 {% if (!(functionDef.consts == [])) %} 24 23 double {{functionDef.consts | join(", ")}}; … … 29 28 {% endfor %} 30 29 {% endif %} 31 32 30 {{functionDef.exprString}} 33 34 31 return {{functionDef.returnVar}}; 35 32 } -
release/4/nemo/trunk/templates/NEST-ida-event.tmpl
r31482 r31587 19 19 state = &(node.S_); 20 20 21 {% if (haskey(stateIndexMap,"v") and haskey(defaults,"V_t") %}21 {% if (haskey(stateIndexMap,"v") and ("V_t" in defaultDefs)) %} 22 22 v = Ith (y, {{attr(stateIndexMap,"v")}}); 23 vt = params-> {{attr(defaults,"V_t")}};23 vt = params->V_t; 24 24 g[0] = v - vt; 25 25 {% else %} -
release/4/nemo/trunk/templates/NEST-nodes.tmpl
r31508 r31587 98 98 if (check_flag(&status, "CVodeInit", 1)) throw CVodeSolverFailure (get_name(), status); 99 99 100 {% if haskey( defaults,"V_t") %}100 {% if haskey("V_t" in defaultDefs) %} 101 101 102 102 /* Spike event handler (detects zero-crossing of V-V_t) */ … … 248 248 if (check_flag(&status, "IDAInit", 1)) throw IDASolverFailure (get_name(), status); 249 249 250 {% if haskey(defaults,"V_t") %}250 {% if ("V_t" in defaultDefs) %} 251 251 252 252 /* Spike event handler (detects zero-crossing of V-V_t) */ … … 391 391 { 392 392 B_.logger_.init(); 393 #{(if iv (sprintf "V_.U_old_ = S_.y_[~A];" iv) "")} 394 #{(if (lookup-def 't_ref defaults) 395 "V_.RefractoryCounts_ = Time(Time::ms(P_.t_ref)).get_steps();" 396 "V_.RefractoryCounts_ = 0;")} 397 } 398 399 393 {% if haskey(stateIndexMap,"v") %}V_.U_old_ = S_.y_[{{attr(stateIndexMap,"v")}}];{% endif %} 394 {% if ("t_ref" in defaultDefs) %} 395 V_.RefractoryCounts_ = Time(Time::ms(P_.t_ref)).get_steps(); 396 {% else %} 397 V_.RefractoryCounts_ = 0; 400 398 {% endif %} 399 } 400 401 402 {% endif %} -
release/4/nemo/trunk/templates/NEST-parameters.tmpl
r31508 r31587 6 6 {% endif %} 7 7 8 {% for eq in param ters.parameterEqDefs %}8 {% for eq in parameters.parameterEqDefs %} 9 9 {% if (loop.last) %} 10 10 {{eq}}
Note: See TracChangeset
for help on using the changeset viewer.