Pass a parameter vector to an exe file

14 Ansichten (letzte 30 Tage)
erasmo mancusi
erasmo mancusi am 1 Dez. 2011
Bearbeitet: dpb am 1 Sep. 2022
Hi to all, I have a exe file generated from fortran that I need to run in Matlab for different parameters. The exe file require that I input by keyboard the parameter and the option in matlab: system('myprogram.exe') (equivalently ! or dos or unix) work in the same way: need the input by the keyboard. Exist the possibility to pass the input in a different way? I have tried system('myprogram.exe PARAMETER') but doesn't work. Thank you in advance to all. erasmo
  1 Kommentar
Kaustubha Govind
Kaustubha Govind am 1 Dez. 2011
Did you mean that the executable prompts the user to enter the input? Or does it use command-line arguments? How would you provide the input from a system shell?

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Fangjun Jiang
Fangjun Jiang am 1 Dez. 2011
try system('myprogram.exe < InputParameters.txt') where InputParameters.txt is a text file that you created ahead of time, just type in the parameters to the text file as if you are type it in command window, include the carriage return.
  2 Kommentare
Kaustubha Govind
Kaustubha Govind am 1 Dez. 2011
Nice!
erasmo mancusi
erasmo mancusi am 1 Dez. 2011
Bearbeitet: dpb am 1 Sep. 2022
First of all I'd like to thank Jiang for his replay.
Then I share the solution:
fid = fopen('filename1', 'wt');
fprintf(fid, '%6f \n', state variables); %write out the input parameters the program will need
fprintf(fid, '%6f \n', PAR1); %write out the input parameters the program will need
system(['myprogram.exe < ' 'f.7']);%ruxecutable with content of fname as
% the myprogram.exe create a file named filenam2 where this program write the NDIM dtate variables and the new parameter (at each iteration the myprogram.exe close the file and then rewrite on it)
A = importdata('filename2'); % here I import the new data that will be re-assigned to filename1
statevariable=A(1:NDIM,1);
PAR1=A(NDIM+1,1);
fclose(fid);
thx
eramso

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Get Started with MATLAB finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by