|
|
|||||||||||||||||||||||||||||||||
|
|
||||||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||
|
|
|||||||||||||||||||||||||||||||||
| Вход | |||||||||||||||||||||||||||||||||
Раздел "Simulink"
Советы пользователям Simulink от ведущего раздела3. Запись результатов расчета в текстовый файл В некоторых случаях после проведения расчетов требуется передать результаты в другую программу для их последующей обработки. Такую процедуру удобно осуществить с помощью текстового файла. Для записи результатов необходимо сформировать вектор необходимых сигналов (включая время), передать этот вектор в рабочее пространство MATLAB и, по окончание расчета, записать данные в текстовый файл. Пример модели реализующей данный принцип показан на рис.3.1. В окне параметров блока To workspace необходимо указать имя переменной для вывода в рабочее пространство (в примере это имя - simout), а также установить значение параметра Save format (формат записи) - Array (массив).
Рис 3.1. Пример модели, использующей вывод результатов расчета в рабочее пространство MATLAB для последующей записи в текстовый файл. Для записи в файл необходимо в командном окне MATLAB задать на выполнение команду вида: save('outfile.dat','-ascii','simout','-double') где outfile.dat – имя файла для записи, simout – имя переменной значение которой записывается в текстовый файл -double – режим записи с удвоенной точностью. Для реализации процедуры записи переменной из рабочего пространства в файл можно также использовать функцию dlmwrire. Однако данная функция записывает результаты с точностью 4 знака после запятой, что может оказаться недостаточно. Целесообразно создать копию этой функции под другим именем (например, my_dlmwrite), в которой требуется изменить объявление функции: function my_dlmwrite(filename, m, dlm, r, c, N_digits) и вызов функции num2str : str = num2str(m(i,j),N_digits); Параметр N_digits будет определять количество значащих цифр после запятой. Для записи в файл следует в командном окне осуществить вызов функции, например: my_dlmwrite('outfile.dat',simout,' ',0,0,6) В данном примере число значащих цифр задано равным 6. Вызов новой функции можно осуществлять не только из командного окна MATLAB. Можно создать пустую маскированную подсистему и указать для нее функцию записи в файл как функцию открытия (Edit\Block Properties, параметр Open function). Сама новая функция должна находиться в текущем рабочем каталоге.
|
|
Всероссийская научная конференция "Проектирование научных и инженерных приложений в среде MATLAB" (май 2002 г.)
|
||
| На первую страницу \ Сотрудничество \ MathWorks \ SoftLine \ Exponenta.ru \ Exponenta Pro | ||
| E-mail: | ||
| Информация на сайте была обновлена 11.05.2004 |
Copyright 2001-2004 SoftLine Co Наши баннеры |
|