26.03.2009

Ваш вопрос: Здравствуйте! Подскажите, пожалуйста, что необходимо создать для дальнейшей записи результатов вычисления (напряжения и деформации по элементам) во внешний файл с помощью функции *VWRITE. Спасибо.

С уважением, Ошева Ирина Юрьевна

 

Ответ №1: Здравствуйте! Для записи результатов вычислений применяется команда вывода вектора (массива) значений во внешний файл *VWRITE. Перед этим необходимо значения вычисленных величин (напряжения, деформации, перемещения и т.д. и т.п.) сначала присвоить переменной (скалярной, вектору или массиву) с помощью команд *get или *vget, и только затем вывести значения этого вектора (или скалярного параметра) во внешний файл командой *vwrite. Синтаксис команд можно найти в Help.

С уважением, Комаров Александр Павлович

 

Ответ №2: В разделе Basic Analyzes Guide, Chapter 6. The Time-History Postprocessor (POST26), п. 6.6.2 раздела встроенной помощи ANSYS, приводится пример экспорта данных с помощью указанной Вами команды *VWRITE в два этапа:

1) Экспорт значения переменной зависящей от времени в массив. Команда VGET позволяет записать одну зависящую от времени переменную в соответствующего размера ( *DIM ) массив. Размер массива можно определить с помощью команды *GET ,size,vari,,nsets.

2) По завершению заполнения массива, данные можно записать в файл с помощью команды *VWRITE как показано ниже.

Пример:

NSOL,5,55,U,X  
STORE,MERGE ! Сохранить значение перемещения по оси Х (UX) в узле 55
*GET,size,VARI,,NSETS  
*dim,UX55,array,size ! Создать массив UX55
VGET,UX55(1),5 ! Сохранить значение зависящей от времени переменной 5 в массив UX55
*CFOPEN,disp,dat ! Открыть файл "disp.dat" на запись
*VWRITE,UX55(1) ! Записать массив в заданном формате в файл "disp.dat"
(6x,f12.6)  
*CFCLOSE ! Закрыть файл

 

Аналогично для результатов по элементам на каждом шаге нагружения.

С уважением, Шмаков Алексей Викторович