Passing an array of strings into an executable

I have writen a script in Matlab for an optimization algorithm that iteratively calls a simulator to compute the objective function. The call to the simulator is done in such a fashion:
[status,cmdout]=system('swmm5 temp.inp out.rpt');
Where "temp.inp" is the text file with the parameters of the simulation and "out.rpt" is the text file with the results of the simulation.
I have an array of strings where the contents of "temp.inp" are updated and every iterations. Then I write this updated array of strings in "temp.inp" to launch a new simulation. Once the simulation is complete, I read "out.rpt", put it in an array of strings and extract the data I need.
Writing all of this content on the hard drive is quite time expensive, so I was wondering if there is a way to pass to the simulator the array of string directly and maybe put the "out.rpt" file directly in an array of strings.

1 Kommentar

dpb
dpb am 16 Jun. 2020
That all depends on whether the simulation code has been written to read its input from the command line or not -- we can't answer that.

Melden Sie sich an, um zu kommentieren.

Antworten (0)

Kategorien

Mehr zu Large Files and Big Data finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 16 Jun. 2020

Kommentiert:

dpb
am 16 Jun. 2020

Community Treasure Hunt

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

Start Hunting!

Translated by