Я не знаю насчет Вольфрама, извините, но для OpenModelica работает следующее:
// to load Model from file use
// loadFile("fileName.mo");
loadString("
model M
parameter Real a = 1;
Real x;
equation
x = a * sin(time);
end M;
"); getErrorString();
buildModel(M); getErrorString();
for a in {1,2,3,4} loop
str_a := String(a); getErrorString();
system("./M -override a=" + str_a); getErrorString();
// for windows use
//system("M.exe -override a=" + str_a); getErrorString();
system("mv M_res.mat " + "M_" + str_a + ".mat");
end for;
Поместите это в файл с именем, например, model.mos
и вызовите его из терминала или командной строки, в зависимости отВаш ОС, с omc model.mos
, если у вас установлен OpenModelica.это должно сгенерировать CSV.
РЕДАКТИРОВАТЬ: я понял, что оригинал просто сохраняет последнее значение х, вы можете получить полный вывод.Поэтому я изменил .mos
-файл.Каждый отдельный результат будет сохранен в другом файле, если вы хотите изменить его на CSV, вам просто нужно изменить сгенерированный XML.