- 
          
 - 
                Notifications
    
You must be signed in to change notification settings  - Fork 82
 
Open
Labels
Description
I feel like this should error or auto-discover but it goes through ok and results in a system that does not have species_A2 as a variable or species:
function model()
          t = default_t() # i have to add this, otherwise it throws error
          
          @species begin
                species_A1(t)
                species_A2(t)
          end
          @parameters begin
                p1
                p2
          end
          A_rate = p1 * species_A1
          B_rate = p2 * p1 * species_A1
          
          rn = @reaction_network begin
               @combinatoric_ratelaws false
               @observables begin 
                   total_A ~ $species_A1 + $species_A2 
                   Tree ~ $species_A1 * $p1 - $species_A2 * ($p2-$p1) 
               end
               
              $B_rate, B => A
              $A_rate, 0 => A
              
          end
          return rn
       endOutput:
julia> rn = model()
Model ##ReactionSystem#307:
Unknowns (3): see unknowns(##ReactionSystem#307)
  B(t)
  A(t)
  species_A1(t)
Parameters (2): see parameters(##ReactionSystem#307)
  p2
  p1
Observed (2): see observed(##ReactionSystem#307)
julia> unknowns(rn)
3-element Vector{SymbolicUtils.BasicSymbolic{Real}}:
 B(t)
 A(t)
 species_A1(t)
julia> species(rn)
3-element Vector{SymbolicUtils.BasicSymbolic{Real}}:
 B(t)
 A(t)
 species_A1(t)
julia> nonspecies(rn)
SymbolicUtils.BasicSymbolic{Real}[]
julia> observed(rn)
2-element Vector{Equation}:
 total_A(t) ~ species_A2(t) + species_A1(t)
 Tree(t) ~ -(-p1 + p2)*species_A2(t) + p1*species_A1(t)