How to prevent a program in matlab to ask the user enter parameters value several times

2 vues (au cours des 30 derniers jours)
I have a problem about deferential evolution program. when i run the code, the program ask to input parameters data (as list ) and when i enter my data the program re ask me to enter the data again by showing the input list again. how can i make the program save my input data just one time for all iterations?

Réponse acceptée

Ameer Hamza
Ameer Hamza le 10 Août 2018
If you are using input() function in your code to ask for user input then you should either replace input() statements with the constant values in the beginning. If the input() statements are written inside a MATLAB function then you can consider removing them and pass the parameter as input to the function.
  4 commentaires
Ameer Hamza
Ameer Hamza le 11 Août 2018
The problem is happening because you objfun() is being called several times. It is not a good idea to ask the user for parameter values inside this function. There are following things which you can do
  • You can fix the values yourself
k1 = 1;
k2 = 2;
...
...
  • You can ask for input dialog box in Rundeopt.m file and make it as part of S_struct variable. Then use it in objfun() like this
k1 = S_struct.k1;
k2 = S_struct.k2;
...
...

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Introduction to Installation and Licensing dans Help Center et File Exchange

Produits


Version

R2016b

Community Treasure Hunt

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

Start Hunting!

Translated by