Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Local functions on products #12

Open
GoogleCodeExporter opened this issue Mar 19, 2015 · 2 comments
Open

Local functions on products #12

GoogleCodeExporter opened this issue Mar 19, 2015 · 2 comments

Comments

@GoogleCodeExporter
Copy link

In principle, it should be possible to define a local function based on the 
properties of the products of a rule. As an example, one might want to base the 
rate of dissociation of a species on the sizes of the produced aggregates, with 
large aggregates having a smaller rate of dissociation because they are less 
likely to diffuse away before rebinding. The rule might look like:

L(s!+,s!1).R(s!1)->%x:L(s!+,s)+%y:R(s) km2*if(both_large(x,y)>0.5,p,1.0)

where

1. p<<1
2. both_large(x,y) = FunctionProduct("large(x)","large(y)")
3. large(x) = if(Rtot(x)>T,1.0,0.0)
4. T is a threshold (integer)
5. Molecules Rtot R()

Original issue reported on code.google.com by [email protected] on 13 Mar 2015 at 3:14

@GoogleCodeExporter
Copy link
Author

A more general idea would be to introduce the concept of catalysts (and local 
functions on catalysts) to BioNetGen/NFSim, similar to Modifiers in SBML: 
species that are neither reactants nor products but that have an effect in the 
RateLaw. 

As such local function on products would be an special case of this were a 
product catalyzes its own reaction. We currently have no syntax to represent 
this so this might require some more discussion though.

Original comment by [email protected] on 13 Mar 2015 at 3:20

@GoogleCodeExporter
Copy link
Author

Note: One way to implement this is to use reject sampling, i.e., test the 
product sizes after a rule has been fired and then accept the reaction with 
probability 'p' if both products satisfy the condition.

Original comment by [email protected] on 13 Mar 2015 at 3:25

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant