Skip to content

Numerical errors with high propensities at long times #20

Description

@davidcsterratt

The following example should produce two bursts of Glu of height 5000.

%agent: Glu(x)
%agent: dummy(x)
-> dummy(x) @ 1000

%var: 'gluClearRate' 0.1
%var: 'gluFlux' 50000.0
%var: 'gluCreateRate' 0

# Clear Glu quickly from the cleft with a tau of about 1.3mS
'Glu-Clear' Glu(x) -> @ 'gluClearRate'
'Glu-Create' -> Glu(x) @ 'gluCreateRate'

%obs: 'Glu' Glu(x)

%var: 'durpulse' 0.1 # s
%var: 't1' 5 - 'durpulse'
%var: 't2' 1200 - 'durpulse'

%mod: [T] > 't1' do  $UPDATE 'gluCreateRate' 'gluFlux' 
%mod: [T] > 't1' + 'durpulse' do  $UPDATE 'gluCreateRate' 0 
%mod: [T] > 't2' do  $UPDATE 'gluCreateRate' 'gluFlux' 
%mod: [T] > 't2' + 'durpulse' do  $UPDATE 'gluCreateRate' 0 

%plot: 'gluCreateRate'

The first pulse is of height 5000. The second, later, one is over 3x taller:
Screenshot at 2019-04-08 17-07-56

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions