Changeset 28033 in project for release/4/nemo/trunk/nemo-nest.scm


Ignore:
Timestamp:
01/04/13 07:56:09 (8 years ago)
Author:
Ivan Raikov
Message:

nemo: added several variants of membrane potential equation

File:
1 edited

Legend:

Unmodified
Added
Removed
  • release/4/nemo/trunk/nemo-nest.scm

    r28028 r28033  
    21082108             (i-gates         (lookup-def 'i-gates gate-complex-info))
    21092109
    2110              (capcomp         (any (match-lambda ((name 'membrane-capacitance id) (list name id)) (else #f)) components))
    2111              (mcap            (and capcomp (car ((dis 'component-exports) sys (cid capcomp)))))
     2110             (comprc         (any (match-lambda ((name 'membrane-tau id) (list name id)) (else #f)) components))
     2111             (mrc            (and comprc (car ((dis 'component-exports) sys (cid comprc)))))
    21122112               
    2113              (rcomp           (any (match-lambda ((name 'membrane-resistance id) (list name id)) (else #f)) components))
    2114              (mres            (and rcomp (car ((dis 'component-exports) sys (cid rcomp)))))
    2115                
    2116              (rarea           (any (match-lambda ((name 'membrane-area id) (list name id)) (else #f)) components))
    2117              (marea           (and rarea (car ((dis 'component-exports) sys (cid rarea)))))
     2113             (areacomp        (any (match-lambda ((name 'membrane-area id) (list name id)) (else #f)) components))
     2114             (marea           (and areacomp (car ((dis 'component-exports) sys (cid areacomp)))))
    21182115               
    21192116             (i-eqs (filter-map
     
    22732270                                                       (* (neg ,(sum i-names)) ,marea)))))
    22742271                            (else (list 'v 0.0))))
     2272
     2273             (v-eq    (and (member 'v globals) (not (null? i-names))
     2274                           (let ((istim "(node.B_.I_stim_)" ))
     2275                             (cond ((and mrc marea)
     2276                                    (list 'v (rhsexpr/C++ `(/ (+ ,istim (* (neg ,(sum i-names)) ,marea)) ,mrc))))
     2277                                   (marea
     2278                                    (list 'v (rhsexpr/C++ `(+ istim (* (neg ,(sum i-names)) ,marea)))))
     2279                                   (mrc
     2280                                    (list 'v (rhsexpr/C++ `(/ (+ istim (neg ,(sum i-names))) ,mrc))))
     2281                                   (else
     2282                                    (list 'v (rhsexpr/C++ `(+istim (neg ,(sum i-names))))))
     2283                                   ))))
    22752284
    22762285             
Note: See TracChangeset for help on using the changeset viewer.