SimBiology calling a function

2 Ansichten (letzte 30 Tage)
Richard Allen
Richard Allen am 26 Feb. 2014
Beantwortet: Ingrid Tigges am 5 Mär. 2014
I am familiar with the SimBiology functionality that allows calling a user defined MATLAB function. Is there a shorthand to pass all species to that function?
For example what I'm looking to be able to do is call:
P= myfunction(X,P,0.5);
rather than
P=myfunction(species1,species2,...,parameter1,parameter2,....)
where X is a vector with elements containing each species in the model, and P all the parameters.
Thanks for any help/suggestions!
Richard
  1 Kommentar
Ingrid Tigges
Ingrid Tigges am 26 Feb. 2014
Hello Richard, please contact technical support regarding your question and refer to Ingrid Tigges and your post on MATLAB Answers.

Melden Sie sich an, um zu kommentieren.

Antworten (1)

Ingrid Tigges
Ingrid Tigges am 5 Mär. 2014
Have a look at the attached code. simbiology_ml_answers is the main script. The steps are as follows:
  • Get species names with
speciesNames = get(m1.Species, 'Name');
  • Build a string containing all species names
  • If you use your own function in a rule, put the string into the rule (with added information like the function name)
As you can see in the code there are some additional tweaks necessary to prevent things like algebraic loops.

Communitys

Weitere Antworten in  SimBiology Community

Kategorien

Mehr zu Extend Modeling Environment finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by