SimBiology calling a function

4 vues (au cours des 30 derniers jours)
Richard Allen
Richard Allen le 26 Fév 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 commentaire
Ingrid Tigges
Ingrid Tigges le 26 Fév 2014
Hello Richard, please contact technical support regarding your question and refer to Ingrid Tigges and your post on MATLAB Answers.

Connectez-vous pour commenter.

Réponses (1)

Ingrid Tigges
Ingrid Tigges le 5 Mar 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.

Communautés

Plus de réponses dans  SimBiology Community

Catégories

En savoir plus sur Extend Modeling Environment dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by