Вы находитесь на странице: 1из 55

Оптимизация в MSC/PATRAN V 7.

Оптимизация в MSC/PATRAN V 7.5

практическая работа

Москва
Июнь,1998

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Введение
В настоящее время в препроцессоре MSC/PATRAN V7.5 появилась возможность
создавать исходные (.bdf) файлы для структурной оптимизации конструкций. В программе
MSC/NASTRAN данный вид расчета называется SOL 200. Он основан на анализе
чувствительности и в основе использует метод сопряженных градиентов. MSC/NASTRAN
дает возможность оптимизировать как свойства элементов так и размеры конструкций,
используя при этом анализы: статический, на собственные частоты, устойчивость,
динамический, модальный динамический анализ установившихся процессов, модальный
динамический анализ переходных процессов, на статическую аэроупругость и флаттер.
Постановка задач оптимизации является сложной и неоднозначной. Решение данных задач,
как правило, требует много машинного времени, которое зависит от количества проектных
переменных и ограничений. Для уменьшения вычислений вводится большое количество
аналитических соотношений между переменными и свойствами элементов, что осложняет
систематизацию задач оптимизации и соответственно создание препроцессора.
Последние изменения в программе MSC/NASTRAN дали возможность генерировать
более простые исходные файлы, чем и воспользовались разработчики препроцессора.
MSC/PATRAN V7.5 - это первый шаг в систематизации задач оптимизации, и на данный
момент этот препроцессор позволяет генерировать исходные файлы для оптимизации
свойств элементов при статическом анализе и анализе на собственные частоты. В случае
необходимости проведения других видов расчетов можно использовать исходные файлы,
созданные программой MSC/PATRAN V7.5 с последующими изменениями. В пятой задаче
приведен пример подобного изменения исходного файла.

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Пример 1

Общее описание
В данной задаче рассматривается общий подход к оптимизации в препроцессоре
MSC/PATRAN на примере стержня, воспринимающего осевые нагрузки, создается модель
конструкции, модель оптимизации, в том числе: проектные переменные, переменные
состояния, ограничения. Далее приведен файл исходных данных с примечаниями. Цель
данного примера: на простейшей задаче показать работу препроцессора и структуру
создаваемого им файла. Для сравнения, решение данной задачи представлено в Design
Sensitivity and Optimization in MSC/NASTRAN SEMINAR NOTES V68 на странице 1-13 (ONE
BAR SUBJECT COMPRESSIVE LOAD).

Постановка задачи
Минимизировать вес стержня, варьируя площадью поперечного сечения, при
ограничениях на напряжения.
P

P = 1.4E4 N
L = 500 mm
ρ, A, E A = 75 mm2
E = 7.0E4 N/mm2
L ρ = 2.7E-6 kg/mm3
σmax = 200 N/mm2

Аналитическое решение задачи:


σmax = P/Amin
Amin = 1.4E4 (N) / 200 (N/mm2) = 50 mm2

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Процедура выполнения
Запускаем MSC/PATRAN.
File / New / в панель New Database Name вводим имя новой базы данных One_bar / OK
Появляется окно New Model Preferences, в котором устанавливаем / Tolerance : Based on
Model / Approximate Maximum Model Dimension : 10 / Analysis Code : MSC/NASTRAN / OK

Создание одномерного элемента по двум точкам:


Finite Elements / Create / Element / Edit / Shape : Bar, убедитесь, что кнопка Auto
Execute выключена / Node 1= : [0 0 0] / Node 2= : [0 0 500] / Apply.

Создание изотропного материала с именем Al и свойствами согласными с условиями


задачи:
Materials / Create / Isotropic / Manual Input / Material Name : Al / нажмите кнопку
Input Property / Constitutive Model : Linear Elastic / Elastic Modulus = : 7.0E4 / Poisson Ratio
= : 0.3 / Density = : 2.7E-6 / Apply / Cancel.

Задание свойств элемента:


Properties / Create / 1 D / Rod / Property Set Name : Prop1 / нажмите кнопку Input
Property / Material Name : m:Al / Area : 75 / OK / Select Members : Elm 1 / Add / Apply.

Наложение граничных условий:


Loads/BCs / Create / Displacement / Nodal / New Set Name : Displacement_1 / Input
Data / Translations <T1 T2 T3> : <0,0,0> / Rotations <R1 R2 R3> : <0,0,0> / OK / Select
Application Region / нажмите кнопку FEM / Select Nodes : Node 1 / Add / OK / Apply.
Loads/BCs / Create / Displacement / Nodal / New Set Name : Displacement_2 / Input
Data / Translations <T1 T2 T3> : <0,0,> / Rotations <R1 R2 R3> : <0,0,0> / OK / Select
Application Region / Select Nodes : Node 2 / Add / OK / Apply.

Создание нагрузки:
Loads/BCs / Create / Force / Nodal / New Set Name : force / Input Data / Force <F1 F2
F3> : <0,0,-1.0E4> / OK / Select Application Region / Select Nodes : Node 2 / Add / OK /
Apply.

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Создание модели оптимизации

Создание проектных переменных:


Tools / Model Variables

Попадаем в меню Model Variables и создаем проектную


переменную (в данном случае переменной будет площадь
поперечного сечения нашего элемента).
Create / Variable / Property / Dimension : 1D / Type : Rod
/ выделите в Select Property Set : Prop1 / выделите в Select
Property Name : Area /
Apply. После
выполнения данной
последовательности
команд меню примет
следующий вид:

Описание
нижних и верхних
границ проектных
переменных,
наложение
ограничений на
конструкцию
(создание переменных
состояния)
Tools / Design
Study
Попадаем в меню
Design Study / Create
/ Design Study /
Введите имя Design
Study Name : Study1

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Опишем проектную переменную


Нажав на кнопку Design Variables, попадем в
меню Define Design Variables. Определим
нижнюю и верхнюю границы (максимальное и
минимальное значения) проектной переменной. В
поле Lower Bound (нижняя граница) введите 10 и
нажмите Enter, в поле Upper Bound (верхняя
граница) введите 150, Enter/ OK.
Ограничения:
Нажав на кнопку Design Constraints, попадем
в меню Design Constrai… Накладываем
ограничения по осевым напряжениям на
элементы со свойствами prop1 σmin = -200 σmax =
200. Create / Linear Static / Stress / нажмите на
кнопку PSET / 1D / Rod / в окне Select Existing
Properties выделите prop1 / Stress Component :
Axial / Lower Bound : -200 / Upper Bound : 200 /
Apply / Close / Apply.

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Создание файла исходных данных (.bdf):


Analysis / Optimize / Entire Model / Analysis
Deck / Job Name : one_bar, нажав на кнопку
Optimization Parameters попадаем в
соответствующее меню:

Maximum Number of Design cycles (DESMAX) : 10 / OK /


Subcase select / 101 LINEAR STATIC / в поле Subcase
Available выделите Default, что отобразится в нижнем
окне / OK / Apply.

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Файл исходных данных (bdf)


$ NASTRAN input file created by the MSC MSC/NASTRAN input file
$ translator ( MSC/PATRAN Version 7.5 ) on June 16, 1998 at
$ 12:37:28.
ASSIGN OUTPUT2 = 'one_bar.op2', UNIT = 12
$ Direct Text Input for File Management Section
$ Design Sensitivity and Optimization Analysis
SOL 200
TIME 600
$ Direct Text Input for Executive Control
CEND
SEALL = ALL
SUPER = ALL
TITLE = MSC/NASTRAN job created on 16-Jun-98 at 12:36:31
ECHO = NONE
MAXLINES = 999999999
DESOBJ(MIN) = 1
ANALYSIS = STATICS
$ Direct Text Input for Global Case Control Data
SUBCASE 1
$ Subcase name : Default
SUBTITLE=Default
SPC = 2 (граничные условия)
LOAD = 2 (нагрузка)
DISPLACEMENT(SORT1,REAL)=ALL
SPCFORCES(SORT1,REAL)=ALL
STRESS(SORT1,REAL,VONMISES,BILIN)=ALL
DESSUB = 1
BEGIN BULK
PARAM POST -1
PARAM PATVER 3.
PARAM AUTOSPC YES
PARAM COUPMASS -1
PARAM K6ROT 0.
PARAM WTMASS 1.
PARAM,NOCOMPS,-1
PARAM PRTMAXIM YES
PARAM NASPRT 0
$ Direct Text Input for Bulk Data
$ Elements and Element Properties for region : prop1
(свойства элементов / идентификационный номер свойств/ идентификатор материала /
площадь поперечного сечения)
PROD 1 1 75.
(Rod-элемент / идентификационный номер элемента / номер свойств / номера узлов)
CROD 1 1 1 2
$ Referenced Material Records
$ Material Record : Al

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

$ Description of Material : Date: 15-Jun-98 Time: 17:30:37


MAT1 1 70000. .3 2.7-6
$ Nodes of the Entire Model
(узлы / / идентификационный номер узла / номер системы координат / координаты)
GRID 1 0. 0. 0.
GRID 2 0. 0. 500.
$ Loads for Load Case : Default
(оператор сложения закреплений)
SPCADD 2 1 3
(определение комбинации нагрузок / идентификационный номер нагружения / общий
масштабный множитель / масштабный множитель для конкретной нагрузки / номер
нагрузки)
LOAD 2 1. 1. 1
$ Displacement Constraints of Load Set : displacment1
(закрепление / идентификационный номер закрепления / компоненты закрепления / узлы)
SPC1 1 123456 1
$ Displacement Constraints of Load Set : displacment2
SPC1 3 12456 2
$ Nodal Forces of Load Set : force
(статическая сосредоточенная сила / идентификационный номер / номер узла / номер
системы координат / масштабный множитель / компоненты вектора в выбранной системе
координат)
FORCE 1 2 0 10000. 0. 0. -1.
$ Referenced Coordinate Frames
$ ...DESIGN VARIABLE DEFINITION
$ prop1_Area
( проектная переменная / идентификационный номер / имя / начальная величина / нижняя
граница / верхняя граница )
DESVAR 2 prop1_:2 75. 10. 150. 1.
$ ...DEFINITION OF DESIGN VARIABLE TO ANALYSIS MODEL PARAMETER
RELATIONS
(связь между свойствами модели и проектными переменными / идентификационный номер /
имя свойств ”PROD”, “PBAR” и т.д. / номер свойств / номер поля / максимальная и
минимальная величины данного свойства / номер проектной переменной / линейный
множитель)
DVPREL1 1 PROD 1 4 + A
+ A2 1.
$ ...STRUCTURAL RESPONSE IDENTIFICATION
(определение переменных состояния и объектной функции / идентификационный номер /
имя / тип функции / тип свойств или метка элементов / регион просмотра ограничений
DSCREEN / атрибуты функции)
DRESP1 1 W WEIGHT
$ STRESS_1
DRESP1 2 STR2 STRESS PROD 2 1
$ ...CONSTRAINTS
(ограничения / идентификационный номер / номер переменной состояния DRESPi / нижняя
граница / верхняя граница)
DCONSTR 1 2 -200. 200.

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

$ ...OPTIMIZATION CONTROL
DOPTPRM DESMAX 10 P1 0 P2 1 CONV1 .001 + B
* B CONV2 1.-20 CONVDV .001 * C
* C CONVPR .01 DELP .2 * D
+ D DELX 1. DPMIN .01 DXMIN .05
ENDDATA

Результаты расчета

****************************************************************************************
INSPECTION OF CONVERGENCE DATA FOR THE OPTIMAL DESIGN WITH RESPECT TO
APPROXIMATE MODELS (SOFT CONVERGENCE DECISION LOGIC)
****************************************************************************************

RELATIVE CHANGE IN OBJECTIVE 2.0006E-01 MUST BE LESS THAN 1.0000E-03


OR ABSOLUTE CHANGE IN OBJECTIVE 2.0257E-02 MUST BE LESS THAN 1.0000E-20
AND MAX OF RELATIVE PROP.CHANGES 2.0000E-01 MUST BE LESS THAN 1.0000E-02
--- AND ---
MAXIMUM CONSTRAINT VALUE -1.6682E-01 MUST BE LESS THAN 5.0000E-03
OR MAX OF RELATIVE D.V. CHANGES 2.0000E-01 MUST BE LESS THAN 1.0000E-03
****************************************************************************************

***************************************************************
SUMMARY OF DESIGN CYCLE HISTORY
***************************************************************
(HARD CONVERGENCE ACHIEVED)

(SOFT CONVERGENCE ACHIEVED)

NUMBER OF FINITE ELEMENT ANALYSES COMPLETED 4


NUMBER OF OPTIMIZATIONS W.R.T. APPROXIMATE MODELS 3

OBJECTIVE AND MAXIMUM CONSTRAINT HISTORY


------------------------------------------------------------------------------------------------------------------------------------------------
OBJECTIVE FROM OBJECTIVE FROM FRACTIONAL ERROR MAXIMUM VALUE
CYCLE APPROXIMATE EXACT OF OF
NUMBER OPTIMIZATION ANALYSIS APPROXIMATION CONSTRAINT
------------------------------------------------------------------------------------------------------------------------------------------------
INITIAL 1.012500E-01 -3.333334E-01
1 8.099345E-02 8.100002E-02 -8.103655E-05 -1.666668E-01
2 6.750187E-02 6.750777E-02 -8.752044E-05 -1.150513E-04
3 6.750777E-02 6.750777E-02 0.000000E+00 -1.150513E-04
-------------------------------------------------------------------------------------------------------------------------------------------------
1 MSC/NASTRAN JOB CREATED ON 16-JUN-98 AT 12:36:31 ** DEMO ** JUNE 16, 1998
MSC/NASTRAN 9/ 4/97 PAGE 42

DESIGN VARIABLE HISTORY


-------------------------------------------------------------------------------------------------------------------------------------
INTERNAL | EXTERNAL | |
DV. ID. | DV. ID. | LABEL | INITIAL : 1 : 2 : 3 : 4 : 5 :
-------------------------------------------------------------------------------------------------------------------------------------
1 | 2 |PROP1_:2 | 7.5000E+01 :6.0E+01 :5.0006E+01 :5.0006E+01 :
-------------------------------------------------------------------------------------------------------------------------------------
0*** USER INFORMATION MESSAGE 6464 (DOM12E)
RUN TERMINATED DUE TO HARD CONVERGENCE TO AN OPTIMUM AT CYCLE NUMBER = 3.

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Пример 2

Общее описание
В данном примере представлена оптимизация трех стержневой фермы при двух
вариантах нагружения и при ограничениях на напряжения и перемещения для одного вида
анализа.

Постановка задачи
Минимизировать вес конструкции, варьируя площадями поперечного сечения стержней, при
ограничениях на напряжения.
Y
10” 10”

1 2 3
X
A1 A2 A3

1 2 3 10”

Subcase 2 Subcase 1
20.000 lbs 20.000 lbs
x: -16.0 lbs x: 16.0 lbs
y: -12.0 lbs y: -12.0 lbs
Модель оптимизации:
Проектные переменные - площади поперечного сечения А1 и А2.
Объектная функция - минимум веса.
Ограничения:
Предельно допустимые напряжения σсж= 15 ksi, σраст=20 ksi.
Предельно допустимые перемещения по оси X ±0.2 in, по оси Y ±0.2 in.

Процедура выполнения
Запускаем MSC/PATRAN.
File / New / в панель New Database Name вводим имя новой базы данных Three_bar / OK
Появляется окно New Model Preferences, в котором устанавливаем / Tolerance : Based on
Model / Approximate Maximum Model Dimension : 10 / Analysis Code : MSC/NASTRAN / OK

Создание КЭ модели

Создание четырех точек с координатами (-10 0 0), (0 0 0), (10 0 0) и (0 -10 0):
Geometry / Create / Point / XYZ / Point Coordinates List: [-10 0 0] / Apply, повторите
процедуру для создания остальных точек.

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Создание четырех узлов в соответствующих точках:


Finite Elements / Create / Node / Edit / убедитесь, что кнопка Auto Execute выключена
/ Node Location List : Point 1 / Apply.
Finite Elements / Create / Node / Edit / Node Location List : Point 2 / Apply.
Finite Elements / Create / Node / Edit / Node Location List : Point 3 / Apply.
Finite Elements / Create / Node / Edit / Node Location List : Point 4 / Apply.

Создание одномерного элемента по двум узлам:


Finite Elements / Create / Element / Edit / Shape : Bar, убедитесь, что кнопка Auto
Execute выключена / Node 1= : Node 1 / Node 2= : Node 4 / Apply. Аналогичным образом
создайте остальные два элемента (2;4) и (3;4).

Создание изотропного материала с именем AL и свойствами согласными с условиями


задачи:
Materials / Create / Isotropic / Manual Input / Material Name : Al / нажмите кнопку
Input Property / Constitutive Model : Linear Elastic / Elastic Modulus = : 7.0E7 / Poisson Ratio
= : 0.3 / Density = : 0.1 / Apply / Cancel.

Задание свойств элемента:


Properties / Create / 1 D / Rod / Property Set Name : Prop1 / нажмите кнопку Input
Property / Material Name : m:Al / Area : 1.0 / OK / Select Members : Elm 1 / Add / Select
Members : Elm 3 / Add / Apply.
Properties / Create / 1 D / Rod / Property Set Name : Prop2 / нажмите кнопку Input
Property / Material Name : m:Al / Area : 2.0 / OK / Select Members : Elm 2 / Add / Apply.

Создание варианта нагружения:


Load Cases / Create / введите имя Load Case Name : sub1 ,убедитесь, что кнопка Make
Current включена, что означает активизацию нового варианта нагружения / Apply.

Создание нагрузки в первом варианте нагружения:


Loads/BCs / Create / Force / Nodal / New Set Name : force1 / Input Data / Force <F1 F2
F3> : <16000,-12000,> / OK / Select Application Region / Select Nodes : Node 4 / Add / OK /
Apply.

Наложение граничных условий:


Loads/BCs / Create / Displacement / Nodal / New Set Name : Displacement_1 / Input
Data / Translations <T1 T2 T3> : <0,0,0> / Rotations <R1 R2 R3> : <0,0,0> / OK / Select
Application Region / нажмите кнопку FEM / Select Nodes : Node 1:3 / Add / OK / Apply.
Loads/BCs / Create / Displacement / Nodal / New Set Name : Displacement_2 / Input
Data / Translations <T1 T2 T3> : <,,0> / Rotations <R1 R2 R3> : <0,0,0> / OK / Select
Application Region / Select Nodes : Node 4 / Add / OK / Apply.

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Создание второго варианта нагружения:


Load Cases / Create / введите имя Load Case Name : sub2 ,убедитесь, что кнопка Make
Current включена, что означает активизацию нового варианта нагружения, нажмите на
кнопку Assign/Prioritize Loads/BCs / в окне Select Loads/BCs to Add to Spreadsheet
выберите: Disp_Displacement_1 и Disp_Displacement_2, что отобразится в нижнем окне / OK /
Apply. Теперь во втором варианте нагружения у Вас будут присутствовать, выбранные Вами
закрепления.

Создание дополнительных нагрузок во втором варианте нагружения:


Loads/BCs / Create / Force / Nodal / New Set Name : force2 / Input Data / Force <F1 F2
F3> : <16000,-12000,> / OK / Select Application Region / Select Nodes : Node 4 / Add / OK /
Apply.

Создание модели оптимизации


Создание проектных переменных:
Tools / Model Variables

Попадаем в меню Model Variables и создаем проектные переменные (в данном случае


переменными будут площади поперечного сечения элементов).
Create / Variable / Property / Dimension : 1D / Type : Rod / выделите в Select Property Set :
Prop1 / выделите в Select Property Name : Area / Apply / отмените выделение в Select Property
Set : Prop1 и выделите Prop2 / выделите в Select Property Name : Area / Apply / Теперь у Вас
есть две проектные переменные, соответствующие выбранным свойствам.

Описание нижних и верхних границ проектных переменных, наложение ограничений


на конструкцию (создание переменных состояния)
Tools / Design Study
Попадаем в меню Design Study / Create / Design Study / Вводим имя Design Study Name :
Study1
Опишем проектные переменные
Нажав на кнопку Design Variables, попадем в меню Define Design Variables. Определим
нижнюю и верхнюю границы (максимальное и минимальное значения) проектных
переменных. В поле Lower Bound (нижняя граница) введем 0.1 и нажмем Enter, повторим
процедуру для второй переменной. В поле Upper Bound (верхняя граница) введем 100, Enter
и повторим для второй переменной / OK.

Ограничения:
Нажав на кнопку Design Constraints, попадем в меню Design Constrai… Накладываем
ограничения по осевым напряжениям на элементы со свойствами prop1 и prop2 σmin = -15000
σmax = 20000. Create / Linear Static / Stress / нажмите на кнопку PSET / 1D / Rod / в окне
Select Existing Properties выделите prop1 и prop2 / Stress Component : Axial / Lower Bound : -
15000 / Upper Bound : 20000 / Apply / Накладываем ограничения ±0.2 in по осям X и Y на
перемещение узла № 4. Create / Linear Static / Displacement / Select Node : Node 4,
Displacement Component : TX / Lower Bound : -0.2 / Upper Bound : 0.2 / Apply / Select Node :
Node 4, Displacement Component : TY / Lower Bound : -0.2 / Upper Bound : 0.2 / Apply / Теперь

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

у Вас есть два ограничения на перемещения с именами DISP_1 и DISP_2 и ограничение по


напряжениям с именем STRESS_1 / Close / Apply.

Создание файла исходных данных (.bdf):


Analysis / Optimize / Entire Model / Analysis Deck / Job Name : Three_bar, нажав на
кнопку Optimization Parameters попадаем в соответствующее меню /Maximum Number of
Design cycles (DESMAX) : 10 / OK / Subcase select / 101 LINEAR STATIC / в поле Subcase
Available выделите sub1 и sub2, что отобразится в нижнем окне / OK / Apply.

Файл исходных данных (bdf)


$ NASTRAN input file created by the MSC MSC/NASTRAN input file
$ translator ( MSC/PATRAN Version 7.5 ) on June 17, 1998 at
$ 14:26:58.
ASSIGN OUTPUT2 = 'three_bar.op2', UNIT = 12
$ Direct Text Input for File Management Section
$ Design Sensitivity and Optimization Analysis
SOL 200
TIME 600
$ Direct Text Input for Executive Control
CEND
SEALL = ALL
SUPER = ALL
TITLE = MSC/NASTRAN job created on 17-Jun-98 at 14:23:20
ECHO = NONE
MAXLINES = 999999999
DESOBJ(MIN) = 1
ANALYSIS = STATICS
$ Direct Text Input for Global Case Control Data
SUBCASE 1
$ Subcase name : sub1
SUBTITLE=sub1
SPC = 2
LOAD = 2
DISPLACEMENT(SORT1,REAL)=ALL
SPCFORCES(SORT1,REAL)=ALL
STRESS(SORT1,REAL,VONMISES,BILIN)=ALL
DESSUB = 1
SUBCASE 2
$ Subcase name : sub2
SUBTITLE=sub2
SPC = 2
LOAD = 4
DISPLACEMENT(SORT1,REAL)=ALL
SPCFORCES(SORT1,REAL)=ALL
STRESS(SORT1,REAL,VONMISES,BILIN)=ALL
DESSUB = 1
BEGIN BULK
PARAM POST -1

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

PARAM PATVER 3.
PARAM AUTOSPC YES
PARAM COUPMASS -1
PARAM K6ROT 0.
PARAM WTMASS 1.
PARAM,NOCOMPS,-1
PARAM PRTMAXIM YES
PARAM NASPRT 0
$ Direct Text Input for Bulk Data
$ Elements and Element Properties for region : prop1
PROD 1 1 1.
CROD 1 1 1 4
CROD 3 1 3 4
$ Elements and Element Properties for region : prop2
PROD 2 1 2.
CROD 2 2 2 4
$ Referenced Material Records
$ Material Record : al
$ Description of Material : Date: 16-Jun-98 Time: 19:29:48
MAT1 1 1.+7 .33 1.
$ Nodes of the Entire Model
GRID 1 -10. 0. 0.
GRID 2 0. 0. 0.
GRID 3 10. 0. 0.
GRID 4 0. -10. 0.
$ Loads for Load Case : sub1
SPCADD 2 4 6
LOAD 2 1. 1. 1
$ Loads for Load Case : sub2
LOAD 4 1. 1. 3
$ Displacement Constraints of Load Set : fix
SPC1 4 123456 1 2 3
$ Displacement Constraints of Load Set : fix2
SPC1 6 3456 4
$ Nodal Forces of Load Set : forse1
FORCE 1 4 0 20000. .8 -.6 0.
$ Nodal Forces of Load Set : forse2
FORCE 3 4 0 20000. -.8 -.6 0.
$ Referenced Coordinate Frames
$ ...DESIGN VARIABLE DEFINITION
$ prop1_Area
DESVAR 1 prop1_:1 1. .1 100. 1.
$ prop2_Area
DESVAR 2 prop2_:2 2. .1 100. 1.
$ ...DEFINITION OF DESIGN VARIABLE TO ANALYSIS MODEL PARAMETER
RELATIONS
DVPREL1 1 PROD 1 4 + A
+ A1 1.

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

DVPREL1 2 PROD 2 4 + B
+ B2 1.
$ ...STRUCTURAL RESPONSE IDENTIFICATION
DRESP1 1 W WEIGHT
$ DISP_1
DRESP1 2 DIS2 DISP 1 4
$ DISP_2
DRESP1 3 DIS3 DISP 2 4
$ STRESS_1
DRESP1 4 STR4 STRESS PROD 2 1 + C
+ C2
$ ...CONSTRAINTS
DCONSTR 1 2 -.2 .2
DCONSTR 1 3 -.2 .2
DCONSTR 1 4 -15000. 20000.
$ ...OPTIMIZATION CONTROL
DOPTPRM DESMAX 10 P1 0 P2 1 CONV1 .001 + D
* D CONV2 1.-20 CONVDV .001 * E
* E CONVPR .01 DELP .2 * F
+ F DELX 1. DPMIN .01 DXMIN .05
ENDDATA

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Результаты расчета
***************************************************************
SUMMARY OF DESIGN CYCLE HISTORY
***************************************************************

(HARD CONVERGENCE ACHIEVED)

NUMBER OF FINITE ELEMENT ANALYSES COMPLETED 10


NUMBER OF OPTIMIZATIONS W.R.T. APPROXIMATE MODELS 9

OBJECTIVE AND MAXIMUM CONSTRAINT HISTORY


------------------------------------------------------------------------------------------------------------------------------------
OBJECTIVE FROM OBJECTIVE FROM FRACTIONAL ERROR MAXIMUM VALUE
CYCLE APPROXIMATE EXACT OF OF
NUMBER OPTIMIZATION ANALYSIS APPROXIMATION CONSTRAINT
-------------------------------------------------------------------------------------------------------------------------------------

INITIAL 4.828427E+01 -3.234952E-01

1 3.862546E+01 3.862742E+01 -5.066193E-05 -1.543690E-01

2 3.206346E+01 3.206306E+01 1.249236E-05 8.926758E-04

3 3.021593E+01 3.021756E+01 -5.390494E-05 -2.254590E-03

4 2.890430E+01 2.890375E+01 1.880705E-05 -3.162695E-03

5 2.804086E+01 2.804132E+01 -1.652867E-05 -3.860937E-03

6 2.746255E+01 2.746233E+01 7.778765E-06 -1.281836E-03

7 2.723141E+01 2.723197E+01 -2.045191E-05 -3.798730E-03

8 2.707383E+01 2.707449E+01 -2.451597E-05 -2.041406E-03

9 2.705491E+01 2.705472E+01 7.190966E-06 -1.847852E-03


--------------------------------------------------------------------------------------------------------------------------------------

DESIGN VARIABLE HISTORY


--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
INTERNAL | EXTERNAL | |
DV. ID. | DV. ID. | LABEL | INITIAL : 1 : 2 : 3 : 4 : 5 :
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
1| 1 | PROP1_:1 | 1.0000E+00 : 8.0000E-01 : 6.8107E-01 : 7.0640E-01 : 7.3235E-01 : 7.5977E-01 :
2| 2 | PROP2_:2 | 2.0000E+00 : 1.6000E+00 : 1.2800E+00 : 1.0237E+00 : 8.1898E-01 : 6.5518E-01 :

----------------------------------------------------------------------------------------------------------------------------------
INTERNAL | EXTERNAL | |
DV. ID. | DV. ID. | LABEL | INITIAL : 6 : 7 : 8 : 9 : 10 : 11 :
----------------------------------------------------------------------------------------------------------------------------------
1| 1 | PROP1_:1 | 7.8347E-01 : 8.1314E-01 : 8.3467E-01 : 8.4226E-01 :
2| 2 | PROP2_:2 | 5.3026E-01 : 4.2329E-01 : 3.4665E-01 : 3.2321E-01 :
----------------------------------------------------------------------------------------------------------------------------------
0*** USER INFORMATION MESSAGE 6464 (DOM12E)
RUN TERMINATED DUE TO HARD CONVERGENCE TO AN OPTIMUM AT CYCLE NUMBER = 9.

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Пример 3

Общее описание
В данном примере представлена оптимизация панели с ограничивающими ее поясами
при ограничениях на собственные частоты. Приведен пример построения графиков истории
изменнения проектных переменных в MSC/PATRAN V75.

Постановка задачи
Минимизировать вес конструкции, варьируя площадями поперечного сечения поясов и
толщинами стенок, при ограничениях на собственные частоты.

A1 A2 A3
15lb каждая

6” T1 T2 T3 X

20” 20” 20”

Модель оптимизации:
Проектные переменные - площади поперечного сечения А1, А2 и А3, толщины стенок Т1, Т2 и
Т3 .
Объектная функция - минимум веса.
Ограничения:
Поперечные собственные частоты ≥ 20Гц.

Процедура выполнения
Запускаем MSC/PATRAN.
File / New / в панель New Database Name вводим имя новой базы данных Beam_vibration
/ OK
Появляется окно New Model Preferences, в котором устанавливаем / Tolerance : Based on
Model / Approximate Maximum Model Dimension : 10 / Analysis Code : MSC/NASTRAN / OK

Создание КЭ модели

Создание поверхности с координатами (0 0 -3), (0 0 3), (60 0 -3) и (60 0 3):

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Geometry / Create / Surface / XYZ / Vector Coordinate List: < 60 0 6 > / Origin Coordinates
List: [0 0 -3] / Apply. Сориентируйте изображение в плоскости Z,Y,X.

Определение размера КЭ сетки:


Finite Elements / Create / Mesh Seed / Uniform / включите кнопку Number of Elements
/ Number = : 1 / Выберите любую короткую сторону прямоугольника Curve List = : Surface 1.1
/ Apply.
Finite Elements / Create / Mesh Seed / Uniform / включите кнопку Number of Elements
/ Number = : 3 / Выберите любую длинную сторону прямоугольника Curve List = : Surface 1.3
/ Apply.

Создание КЭ сетки:
Finite Elements / Create / Mesh / Surface / включите кнопку IsoMesh / Surface List = :
Surface 1 / Apply.

Генерация одномерных элементов, моделирующих пояса:


Finite Elements / Create / Mesh / Curve / Curve List = : Surface 1.1 1.3 / Apply.

Объединение узлов:
Finite Elements / Equivalence / All / Tolerance Cube / Equivalencing Tolerance = :
0.005 / Apply.

Создание точечных элементов в узлах с 3 по 8:


Finite Elements / Create / Element / Edit / Shape : Point, убедитесь, что кнопка Auto
Execute выключена / Node 1= : Node 3:8 / Apply.

Создание изотропного материала с именем Mat1 и свойствами согласными с


условиями задачи:
Materials / Create / Isotropic / Manual Input / Material Name : Mat1 / нажимаем кнопку
Input Property / Constitutive Model : Linear Elastic / Elastic Modulus = : 1.03E7 / Poisson Ratio
= : 0.3 / Density = : 0.1 / Apply / Cancel.

Задание масс точечных элементов:


Properties / Create / 0 D / Mass / Property Set Name : mass / Options : Lumped /
нажимаем кнопку Input Property / Mass : 15 / OK / Select Members : Elm 10:15 / Add /
Apply.

Задание свойств поясов (каждое вновь созданное “свойство”, а точнее элементы


принадлежащие ему, в дальнейшем будут использоваться в качестве проектных
переменных):
Properties / Create / 1 D / Rod / Property Set Name : A1 / нажмите кнопку Input
Property / Material Name : m:Mat1 / Area : 1.0 / OK / Select Members : Elm 4,7 / Add / Apply.
Properties / Create / 1 D / Rod / Property Set Name : A2 / нажмите кнопку Input
Property / Material Name : m:Mat1 / Area : 1.0 / OK / Select Members : Elm 5,8 / Add /
Apply.

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Properties / Create / 1 D / Rod / Property Set Name : A3 / нажмите кнопку Input


Property / Material Name : m:Mat1 / Area : 1.0 / OK / Select Members : Elm 6,9 / Add / Apply.

Задание свойств пластин:


Properties / Create / 2 D / Shell / Property Set Name : T1 / нажимаем кнопку Input
Property / Material Name : m:Mat1/ Thickness : 0.2 / OK / Select Members : Elm 1 / Add /
Apply.
Properties / Create / 2 D / Shell / Property Set Name : T2 / нажимаем кнопку Input
Property / Material Name : m:Mat1/ Thickness : 0.2 / OK / Select Members : Elm 2 / Add /
Apply.
Properties / Create / 2 D / Shell / Property Set Name : T3 / нажимаем кнопку Input
Property / Material Name : m:Mat1/ Thickness : 0.2 / OK / Select Members : Elm 3 / Add /
Apply.

Наложение граничных условий:


Loads/BCs / Create / Displacement / Nodal / New Set Name : Displacement_1 / Input
Data / Translations <T1 T2 T3> : <0,0,0> / Rotations <R1 R2 R3> : <0,0,0> / OK / Select
Application Region / нажмите кнопку FEM / Select Nodes : Node 1,2 / Add / OK / Apply.
Loads/BCs / Create / Displacement / Nodal / New Set Name : Displacement_2 / Input
Data / Translations <T1 T2 T3> : <,0,> / Rotations <R1 R2 R3> : <0,0,0> / OK / Select
Application Region / Select Nodes : Node 3:8 / Add / OK / Apply.

Создание модели оптимизации


Создание проектных переменных:
Tools / Model Variables

Попадаем в меню Model Variables и создаем проектные переменные (в данном случае


переменными будут площади поперечного сечения Rod элементов и толщины Shell
элементов).
Create / Variable / Property / Dimension : 1D / Type : Rod / выделите в Select Property Set : A1
/ выделите в Select Property Name : Area / Apply / отмените выделение в Select Property Set :
A1 и выделите A2 / выделите в Select Property Name : Area / Apply / выделите в Select
Property Set : A3 / выделите в Select Property Name : Area / Apply. Теперь у Вас есть три
проектные переменные, соответствующие выбранным свойствам.
Create / Variable / Property / Dimension : 2D / Type : Shell / выделите в Select Property Set :
T1 / выделите в Select Property Name : Thickness для этого вам может понадобится
переместить ползунок / Apply / отмените выделение в Select Property Set : T1 и выделите T2 /
выделите в Select Property Name : Thickness / Apply / выделите в Select Property Set : T3 /
выделите в Select Property Name : Thickness / Apply. Теперь у Вас есть еще три проектные
переменные, соответствующие выбранным свойствам.

Описание нижних и верхних границ проектных переменных, наложение ограничений


на конструкцию (создание переменных состояния)
Tools / Design Study

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Попадаем в меню Design Study / Create / Design Study / Вводим имя Design Study Name :
Study1
Опишем границы проектных переменных:
Нажав на кнопку Design Variables, попадем в меню Define Design Variables. Определим
нижнюю и верхнюю границы (максимальное и минимальное значения) проектных
переменных. В поле Lower Bound (нижняя граница) для переменных типа Area введите 0.01,
для переменных типа Thickness введите 0.001, в поле Upper Bound (верхняя граница) для
переменных типа Area введите 100., для переменных типа Thickness введите 10.0 / OK.

Ограничения:
Нажав на кнопку Design Constraints, попадем в меню Design Constrai… Накладываем
ограничения на собственные частоты нижняя граница 20Гц верхняя - 70Гц. Create / Normal
Modes / Frequency / Frequency Modes Number : 1 / Lower Bound : 20 / Upper Bound : 70 /
Apply / Close / Apply.

Создание исходного файла (bdf):


Analysis / Optimize / Entire Model / Analysis Deck / Job . Name :
beam_vibration, нажав на кнопку Optimization Parameters попадаем в соответствующее
меню / Wt.-Mass Conversion = : 0.002588 / Maximum Number of Design cycles (DESMAX) : 10 /
Fractional Property Change (DELP) = : 0.5 / OK / Subcase select / 103 NORMAL MODES / в
поле Subcase Available выделите Default, что отобразится в нижнем окне 103 Default / OK /
Apply.

Файл исходных данных (.bdf)


$ NASTRAN input file created by the MSC MSC/NASTRAN input file
$ translator ( MSC/PATRAN Version 7.5 ) on June 18, 1998 at
$ 16:07:43.
ASSIGN OUTPUT2 = 'beam_vibration.op2', UNIT = 12
$ Direct Text Input for File Management Section
$ Design Sensitivity and Optimization Analysis
SOL 200
TIME 600
$ Direct Text Input for Executive Control
CEND
SEALL = ALL
SUPER = ALL
TITLE = MSC/NASTRAN job created on 18-Jun-98 at 14:16:22
ECHO = UNSORT
MAXLINES = 999999999
DESOBJ(MIN) = 1
ANALYSIS = MODES
$ Direct Text Input for Global Case Control Data
SUBCASE 1
$ Subcase name : Default
SUBTITLE=Default
METHOD = 1
SPC = 2

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

BC = 2
VECTOR(SORT1,REAL)=ALL
SPCFORCES(SORT1,REAL)=ALL
DESSUB = 1
BEGIN BULK
PARAM POST -1
PARAM PATVER 3.
PARAM AUTOSPC YES
PARAM COUPMASS -1
PARAM K6ROT 0.
PARAM WTMASS .002588
PARAM,NOCOMPS,-1
PARAM PRTMAXIM YES
PARAM NASPRT 0
EIGRL 1 10 0
$ Direct Text Input for Bulk Data
$ Elements and Element Properties for region : A2
PROD 1 1 1.
CROD 5 1 3 5
CROD 8 1 4 6
$ Elements and Element Properties for region : A1
PROD 2 1 1.
CROD 4 2 1 3
CROD 7 2 2 4
$ Elements and Element Properties for region : A3
PROD 3 1 1.
CROD 6 3 5 7
CROD 9 3 6 8
$ Elements and Element Properties for region : T1
PSHELL 4 1 .2 1 1
CQUAD4 1 4 1 2 4 3
$ Elements and Element Properties for region : T2
PSHELL 5 1 .2 1 1
CQUAD4 2 5 3 4 6 5
$ Elements and Element Properties for region : T3
PSHELL 6 1 .2 1 1
CQUAD4 3 6 5 6 8 7
$ Elements and Element Properties for region : mass
CONM2 10 3 15.
CONM2 11 4 15.
CONM2 12 5 15.
CONM2 13 6 15.
CONM2 14 7 15.
CONM2 15 8 15.
$ Referenced Material Records
$ Material Record : Mat1
$ Description of Material : Date: 18-Jun-98 Time: 12:47:27
MAT1 1 1.03+7 .3 .1

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

$ Nodes of the Entire Model


GRID 1 0. 0. -3.
GRID 2 0. 0. 3.
GRID 3 20. 0. -3.
GRID 4 20. 0. 3.
GRID 5 39.9999 0. -3.
GRID 6 39.9999 0. 3.
GRID 7 60. 0. -3.
GRID 8 60. 0. 3.
$ Loads for Load Case : Default
SPCADD 2 1 3
$ Displacement Constraints of Load Set : Displ1
SPC1 1 123456 1 2
$ Displacement Constraints of Load Set : Displ2
SPC1 3 2456 3 4 5 6 7 8
$ Referenced Coordinate Frames
$ ...DESIGN VARIABLE DEFINITION
$ T1_Thickness
DESVAR 1 T1_Thi:1 .2 .001 10. 1.
$ T2_Thickness
DESVAR 2 T2_Thi:2 .2 .001 10. 1.
$ T3_Thickness
DESVAR 3 T3_Thi:3 .2 .001 10. 1.
$ A1_Area
DESVAR 4 A1_Are:4 1. .01 100. 1.
$ A2_Area
DESVAR 5 A2_Are:5 1. .01 100. 1.
$ A3_Area
DESVAR 6 A3_Are:6 1. .01 100. 1.
$ ...DEFINITION OF DESIGN VARIABLE TO ANALYSIS MODEL PARAMETER
RELATIONS
DVPREL1 1 PROD 1 4 + A
+ A5 1.
DVPREL1 2 PROD 2 4 + B
+ B4 1.
DVPREL1 3 PROD 3 4 + C
+ C6 1.
DVPREL1 4 PSHELL 4 4 + D
+ D1 1.
DVPREL1 5 PSHELL 5 4 + E
+ E2 1.
DVPREL1 6 PSHELL 6 4 + F
+ F3 1.
$ ...STRUCTURAL RESPONSE IDENTIFICATION
DRESP1 1 W WEIGHT
$ FREQ_1
DRESP1 2 FREQ1 FREQ 1
$ ...CONSTRAINTS

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

DCONSTR 1 2 20. 70.


$ ...OPTIMIZATION CONTROL
DOPTPRM DESMAX 10 P1 0 P2 1 CONV1 .001 + G
* G CONV2 1.-20 CONVDV .001 * H
* H CONVPR .01 DELP .5 * I
+ I DELX 1. DPMIN .01 DXMIN .05
ENDDATA

Результаты расчета

***************************************************************
SUMMARY OF DESIGN CYCLE HISTORY
***************************************************************
(HARD CONVERGENCE ACHIEVED)

NUMBER OF FINITE ELEMENT ANALYSES COMPLETED 5


NUMBER OF OPTIMIZATIONS W.R.T. APPROXIMATE MODELS 4

OBJECTIVE AND MAXIMUM CONSTRAINT HISTORY


------------------------------------------------------------------------------------------------------------------------------------
OBJECTIVE FROM OBJECTIVE FROM FRACTIONAL ERROR MAXIMUM VALUE
CYCLE APPROXIMATE EXACT OF OF
NUMBER OPTIMIZATION ANALYSIS APPROXIMATION CONSTRAINT
------------------------------------------------------------------------------------------------------------------------------------
INITIAL 1.920000E+01 -3.048573E-01
1 1.064546E+01 1.064456E+01 8.448584E-05 -7.684870E-02
2 7.688326E+00 7.688197E+00 1.686998E-05 -7.529450E-03
3 6.939711E+00 6.939564E+00 2.116356E-05 3.083515E-03
4 6.937957E+00 6.937983E+00 -3.780067E-06 2.710533E-03
------------------------------------------------------------------------------------------------------------------------------------
1 MSC/NASTRAN JOB CREATED ON 18-JUN-98 AT 14:16:22 ** DEMO ** JUNE 18, 1998
MSC/NASTRAN 9/ 4/97 PAGE 80

DESIGN VARIABLE HISTORY


------------------------------------------------------------------------------------------------------------------------------------INTERNAL |
EXTERNAL | |
DV. ID. | DV. ID. | LABEL | INITIAL : 1 : 2 : 3 : 4 :
-------------------------------------------------------------------------------------------------------------------------------------
1| 1 | T1_THI:1 | 2.00E-01 : 1.00E-01 : 6.27E-02 : 4.2324E-02 : 4.6097E-02 :
2| 2 | T2_THI:2 | 2.00E-01 : 1.00E-01 : 5.00E-02 : 4.0782E-02 : 3.9856E-02 :
3| 3 | T3_THI:3 | 2.00E-01 : 1.00E-01 : 5.00E-02 : 2.5000E-02 : 2.3885E-02 :
4| 4 | A1_ARE:4 | 1.00E+00 : 7.61E-01 : 8.21E-01 : 8.4689E-01 : 8.4749E-01 :
5| 5 | A2_ARE:5 | 1.00E+00 : 5.00E-01 : 3.62E-01 : 4.3873E-01 : 4.3800E-01 :
6| 6 | A3_ARE:6 | 1.00E+00 : 5.00E-01 : 2.50E-01 : 1.2496E-01 : 1.1950E-01 :
------------------------------------------------------------------------------------------------------------------------------------
0*** USER INFORMATION MESSAGE 6464 (DOM12E)
RUN TERMINATED DUE TO HARD CONVERGENCE TO AN OPTIMUM AT CYCLE NUMBER = 4.

Чтение и обработка результатов


Чтение результатов из файла Beam_vibration.op2
Analysis / Read Output2 / Result Entities / Translate / нажмите на кнопку Select
Result File / выберите файл Beam_vibration.op2 . OK / Apply.

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Создание графиков
XY Plot / Post / XYWindow / в окне Post/Unpost XYWindow выделите Design Variable
History / Apply. Для построения графика трех переменных выполните следующую
операцию: XY Plot / Post / Curve / в окне Post/Unpost Curves выделите A1,A2,A3 / Apply.
Аналогичным образом можно построить все нижеприведенные графики.

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Пример 4

Общее описание
В данном примере представлена оптимизация распределения высоты поперечного
сечения консольно закрепленной балки с ограничениями на напряжения и вторую
собственную частоту. В данном случае проводится оптимизация при двух видах расчета.

Постановка задачи
Минимизировать вес конструкции, варьируя высотой поперечного сечения балки, при
ограничениях на предельно-допустимые напряжения и вторую собственную частоту.

H1 H2 H3 H4 H5 H6 H7

123456 345

F=20N
W=0.01m
8 σmax = 2.1E+8 Pa
Модель оптимизации:
Проектные переменные - высоты поперечного сечения H1,H2…H7.
Объектная функция - минимум веса.
Ограничения:
Максимальное напряжение ≤ 2.1E+8
Вторая поперечная собственная частота ≥ 500Гц.

Процедура выполнения
Запускаем MSC/PATRAN.
File / New / в панель New Database Name вводим имя новой базы данных Constr_bar / OK
Появляется окно New Model Preferences, в котором устанавливаем / Tolerance : Based on
Model / Approximate Maximum Model Dimension : 70 / Analysis Code : MSC/NASTRAN / OK

Создание КЭ модели
Создание кривой с координатами (0 0 0) и (0.2 0 0):
Geometry / Create / Curve / Point / Option: 2 Point / Starting Point List: [0 0 0] / Ending
Point List: [0.2 0 0] / Apply.

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Finite Elements / Create / Mesh Seed / Uniform / включите кнопку Number of Elements
/ Number = : 7 / Curve List = : Curve 1 / если кнопка Auto Execute выключена Apply.

Генерация одномерных элементов:


Finite Elements / Create / Mesh / Curve / Element Topology: Bar2 / Curve List = : Curve 1
/ Apply.

Создание изотропного материала с именем Mat1 и свойствами согласными с


условиями задачи:
Materials / Create / Isotropic / Manual Input / Material Name : Mat1 / нажмите кнопку
Input Property… / Constitutive Model : Linear Elastic / Elastic Modulus = : 7.0E10 / Poisson
Ratio = : 0.3 / Density = : 2700 / Apply / Cancel.

Создание сечений в библиотеке сечений:


Tools / Beam Library… Попадаем в окно “Beam Library” / Create / Standard Shape /
New section Name: Box1 / из набора стандартных сечений выберите сплошной
прямоугольник / W= : 0.01 / H= : 0.02 / Apply, поменяйте имя на Box2 / Apply, повторите
несколько раз эту операцию, создав семь сечений с соответствующими именами / Cancel.

Задание свойств элементов:


Properties / Create / 1 D / Beam / Property Set Name : Prop1 / нажмите кнопку Input
Property… / Material Name : m:Mat1 / [Section Name]: выберите из списка Beam Sections:
box1 / Bar Orientation : Coord 0.2 / OK / Select Members : Elm 1 / Add / Apply.
Properties / Create / 1 D / Beam / Property Set Name : Prop2 / нажмите кнопку Input
Property… / Material Name : m:Mat1 / [Section Name]: выберите из списка Beam Sections:
box2 / Bar Orientation : Coord 0.2 / OK / Select Members : Elm 2 / Add / Apply. Аналогичным
образом для пяти оставшихся элементов создайте свойства с соответствующими именами и
сечениями.

Наложение граничных условий:


Loads/BCs / Create / Displacement / Nodal / New Set Name : Displacement_1 / Input
Data… / Translations <T1 T2 T3> : <0,0,0> / Rotations <R1 R2 R3> : <0,0,0> / OK / Select
Application Region… / нажмите кнопку FEM / Select Nodes : Node 1 / Add / OK / Apply.
Loads/BCs / Create / Displacement / Nodal / New Set Name : Displacement_2 / Input
Data / Translations <T1 T2 T3> : < , ,0> / Rotations <R1 R2 R3> : <0, ,0> / OK / Select
Application Region / Select Nodes : Node 2:8 / Add / OK / Apply.

Создание нагрузки:
Loads/BCs / Create / Force / Nodal / New Set Name : force1 / Input Data… / Force <F1
F2 F3> : <0,20,0> / OK / Select Application Region… / Select Nodes : Node 8 / Add / OK /
Apply.

Создание модели оптимизации


Создание проектных переменных:
Tools / Model Variables

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Попадаем в меню Model Variables и создаем проектные переменные (в данном случае


переменными будут высоты поперечных сечений элементов).
Create / Variable / Beam Dimension / Type : Bar / выделите в Select Beam Section: Box1 /
выделите в Select Beam Dimension : H / Apply / отмените выделение в Select Beam Section:
Box1 и выделите Box 2 / выделите в Select Beam Dimension : H / Apply / Теперь у Вас есть
две проектные переменные, соответствующие выбранным сечениям, аналогичным образом
создайте остальные переменные / Close.

Описание нижних и верхних границ проектных переменных, наложение ограничений


на конструкцию (создание переменных состояния)
Tools / Design Study
Попадаем в меню Design Study / Create / Design Study / Введите имя Design Study Name :
Study1
Опишем проектные переменные
Нажав на кнопку Design Variables…, попадем в меню Define Design Variables. Определим
нижнюю и верхнюю границы (максимальное и минимальное значения) проектных
переменных. В поле Lower Bound (нижняя граница) введите 0.001 и нажмем Enter, повторим
процедуру для остальных переменных, в поле Upper Bound (верхняя граница) введите 0.1,
Enter и повторим для остальных переменных / OK.

Ограничения:
Нажав на кнопку Design Constraints, попадем в меню Design Constrai… Накладываем
ограничения по максимальным напряжениям на концах А элементов со свойствами prop1,
prop2 и т.д. σmin = -2.1E+8 σmax = 2.1E+8. Create / Linear Static / Stress / нажмите на кнопку
Fem / 1D / Bar / Select Finite Element: Element 1:7 / Stress Component : Maximum / Location on
Element : ENDA Lower Bound : -2.1E8 / Upper Bound : 2.1E8 / Apply / Накладываем
ограничения по максимальным напряжениям на концах В элементов со свойствами prop1,
prop2 и т.д. σmin = -2.1E+8 σmax = 2.1E+8. Create / Linear Static / Stress / нажмите на кнопку
Fem / 1D / Bar / Select Finite Element: Element 1:7 / Stress Component : Maximum / Location on
Element : ENDB Lower Bound : -2.1E8 / Upper Bound : 2.1E8 / Apply / Теперь у Вас есть два
ограничения с именами DISP_1 и DISP_2.
Накладываем ограничения на 2 собственную частоту нижняя граница 500Гц верхняя -
9000Гц. Create / Normal Modes / Frequency / Frequency Modes Number : 2 / Lower Bound : 500
/ Upper Bound : 9000 / Apply / Close / Apply

Создание файла исходных данных (.bdf):


Analysis / Optimize / Entire Model / Analysis Deck / Job Name : Constr_bar, нажав на
кнопку Optimization Parameters… попадаем в соответствующее меню /Maximum Number
of Design cycles (DESMAX) : 15 / Data Deck Echo : Unsorted / Minimum Property Move Limit
(DPMIN)= : 0.003 / OK / Subcase Create…/ Solution Type : 103 NORMAL MODES / в поле
Available Subcases выделите default / Subcase Parameters… Number of Desired Roots : 3 /
OK / Apply / Cancel / Subcase select… / 101 LINEAR STATIC / в поле Subcase Available
выделите default, что отобразится в нижнем окне / 103 NORMAL MODES / в поле Subcase
Available выделите default /OK / Apply.

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Файл исходных данных (.bdf)


$ NASTRAN input file created by the MSC MSC/NASTRAN input file
$ translator ( MSC/PATRAN Version 7.5 ) on June 26, 1998 at
$ 18:05:32.
ASSIGN OUTPUT2 = 'constr_bar.op2', UNIT = 12
$ Direct Text Input for File Management Section
$ Design Sensitivity and Optimization Analysis
SOL 200
TIME 600
$ Direct Text Input for Executive Control
CEND
SEALL = ALL
SUPER = ALL
TITLE = MSC/NASTRAN job created on 26-Jun-98 at 12:13:44
ECHO = UNSORT
MAXLINES = 999999999
DESOBJ(MIN) = 1
$ Direct Text Input for Global Case Control Data
SUBCASE 1
$ Subcase name : Default
SUBTITLE=Default
SPC = 2
LOAD = 2
DISPLACEMENT(SORT1,REAL)=ALL
SPCFORCES(SORT1,REAL)=ALL
STRESS(SORT1,REAL,VONMISES,BILIN)=ALL
ANALYSIS = STATICS
DESSUB = 1
SUBCASE 2
$ Subcase name : Default
SUBTITLE=Default
METHOD = 1
SPC = 2
BC = 2
VECTOR(SORT1,REAL)=ALL
SPCFORCES(SORT1,REAL)=ALL
ANALYSIS = MODES
DESSUB = 2
$ Direct Text Input for this Subcase
BEGIN BULK
PARAM POST -1
PARAM PATVER 3.
PARAM AUTOSPC YES
PARAM COUPMASS -1
PARAM K6ROT 0.
PARAM WTMASS 1.
PARAM,NOCOMPS,-1

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

PARAM PRTMAXIM YES


PARAM NASPRT 0
EIGRL 1 3 0
$ Direct Text Input for Bulk Data
$ Elements and Element Properties for region : p1
PBARL 1 1 BAR + A
+ A .01 .02
CBAR 1 1 1 2 0. 1. 0.
$ Elements and Element Properties for region : p2
PBARL 2 1 BAR + B
+ B .01 .02
CBAR 2 2 2 3 0. 1. 0.
$ Elements and Element Properties for region : p3
PBARL 3 1 BAR + C
+ C .01 .02
CBAR 3 3 3 4 0. 1. 0.
$ Elements and Element Properties for region : p4
PBARL 4 1 BAR + D
+ D .01 .02
CBAR 4 4 4 5 0. 1. 0.
$ Elements and Element Properties for region : p5
PBARL 5 1 BAR + E
+ E .01 .02
CBAR 5 5 5 6 0. 1. 0.
$ Elements and Element Properties for region : p6
PBARL 6 1 BAR + F
+ F .01 .02
CBAR 6 6 6 7 0. 1. 0.
$ Elements and Element Properties for region : p7
PBARL 7 1 BAR + G
+ G .01 .02
CBAR 7 7 7 8 0. 1. 0.
$ Referenced Material Records
$ Material Record : aluminium_iso_SI
$ Description of Material : Date: 26-Jul-94 Time: 17:54:56
MAT1* 1 7.+10 .3 * H
* H 2700. 2.32-5
$ Nodes of the Entire Model
GRID 1 0. 0. 0.
GRID 2 .028571 0. 0.
GRID 3 .057143 0. 0.
GRID 4 .085714 0. 0.
GRID 5 .114286 0. 0.
GRID 6 .142857 0. 0.
GRID 7 .171429 0. 0.
GRID 8 .2 0. 0.
$ Loads for Load Case : Default
SPCADD 2 4 6

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

LOAD 2 1. 1. 1
$ Loads for Load Case : Default
$ Displacement Constraints of Load Set : d1
SPC1 4 123456 1
$ Displacement Constraints of Load Set : d2
SPC1 6 345 2 THRU 8
$ Nodal Forces of Load Set : f1
FORCE 1 8 0 20. 0. 1. 0.
$ Referenced Coordinate Frames
$ ...DESIGN VARIABLE DEFINITION
$ box1_H
DESVAR 1 box1_H:1 .02 .001 .022 1.
$ box2_H
DESVAR 2 box2_H:2 .02 .001 .022 1.
$ box3_H
DESVAR 3 box3_H:3 .02 .001 .022 1.
$ box4_H
DESVAR 4 box4_H:4 .02 .001 .022 1.
$ box5_H
DESVAR 5 box5_H:5 .02 .001 .022 1.
$ box6_H
DESVAR 6 box6_H:6 .02 .001 .022 1.
$ box7_H
DESVAR 7 box7_H:7 .02 .001 .022 1.
$ ...DEFINITION OF DESIGN VARIABLE TO ANALYSIS MODEL PARAMETER
RELATIONS
DVPREL1 1 PBARL 1 13 + I
+ I1 1.
DVPREL1 2 PBARL 2 13 + J
+ J2 1.
DVPREL1 3 PBARL 3 13 + K
+ K3 1.
DVPREL1 4 PBARL 4 13 + L
+ L4 1.
DVPREL1 5 PBARL 5 13 + M
+ M5 1.
DVPREL1 6 PBARL 6 13 + N
+ N6 1.
DVPREL1 7 PBARL 7 13 + O
+ O7 1.
$ ...STRUCTURAL RESPONSE IDENTIFICATION
DRESP1 1 W WEIGHT
$ FREQ_1
DRESP1 2 FREQ10 FREQ 2
$ STRESS_1
DRESP1 3 STR3 STRESS PBAR 7 1 + P
+ P2 3 4 5 6 7
$ STRESS_2

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

DRESP1 4 STR4 STRESS PBAR 7 1 + Q


+ Q2 3 4 5 6 7
$ ...CONSTRAINTS
DCONSTR 1 3 -2.1+8 2.1+8
DCONSTR 1 4 -2.1+8 2.1+8
DCONSTR 2 2 500. 10000.
$ ...OPTIMIZATION CONTROL
DOPTPRM DESMAX 15 P1 0 P2 1 CONV1 .001 + R
* R CONV2 1.-20 CONVDV .001 * S
* S CONVPR .01 DELP .2 * T
+ T DELX 1. DPMIN .003 DXMIN .05
ENDDATA

Результаты расчета
***************************************************************
SUMMARY OF DESIGN CYCLE HISTORY
***************************************************************
NUMBER OF FINITE ELEMENT ANALYSES COMPLETED 16
NUMBER OF OPTIMIZATIONS W.R.T. APPROXIMATE MODELS 15
DESIGN VARIABLE HISTORY
-------------------------------------------------------------------------------------------------------------------------------------
INTERNAL | EXTERNAL | |
DV. ID. | DV. ID. | LABEL | INITIAL : 1 : 2 : 3 : 4 : 5 :
-------------------------------------------------------------------------------------------------------------------------------------
1 | 1 | BOX1_H:1 | 2.00E-02 : 1.60E-02 : 1.28E-02 : 9.87E-03 : 6.87E-03 : 3.87E-03 :
2 | 2 | BOX2_H:2 | 2.00E-02 : 1.60E-02 : 1.28E-02 : 9.87E-03 : 6.88E-03 : 3.88E-03 :
3 | 3 | BOX3_H:3 | 2.00E-02 : 1.60E-02 : 1.28E-02 : 9.87E-03 : 6.87E-03 : 3.87E-03 :
4 | 4 | BOX4_H:4 | 2.00E-02 : 1.60E-02 : 1.28E-02 : 9.87E-03 : 6.88E-03 : 3.88E-03 :
5 | 5 | BOX5_H:5 | 2.00E-02 : 1.60E-02 : 1.28E-02 : 9.87E-03 : 6.87E-03 : 3.87E-03 :
6 | 6 | BOX6_H:6 | 2.00E-02 : 1.60E-02 : 1.28E-02 : 9.87E-03 : 6.88E-03 : 3.88E-03 :
7 | 7 | BOX7_H:7 | 2.00E-02 : 1.60E-02 : 1.28E-02 : 9.87E-03 : 6.87E-03 : 3.87E-03 :
----------------------------------------------------------------------------------------------------------------------------------
INTERNAL |EXTERNAL | |
DV. ID. | DV. ID. | LABEL | 6 : 7 : 8 : 9 : 10 : 11 :
----------------------------------------------------------------------------------------------------------------------------------
1 | 1 | BOX1_H:1 | 4.16E-03 : 4.25E-03 : 4.31E-03 : 4.29E-03 : 4.34E-03 : 4.53E-03 :
2 | 2 | BOX2_H:2 | 3.03E-03 : 3.31E-03 : 3.03E-03 : 3.21E-03 : 3.07E-03 : 3.20E-03 :
3 | 3 | BOX3_H:3 | 3.31E-03 : 2.99E-03 : 2.78E-03 : 2.94E-03 : 2.86E-03 : 2.85E-03 :
4 | 4 | BOX4_H:4 | 3.85E-03 : 3.67E-03 : 3.52E-03 : 3.50E-03 : 3.48E-03 : 3.44E-03 :
5 | 5 | BOX5_H:5 | 3.83E-03 : 3.70E-03 : 3.57E-03 : 3.55E-03 : 3.54E-03 : 3.58E-03 :
6 | 6 | BOX6_H:6 | 3.34E-03 : 3.04E-03 : 2.85E-03 : 2.84E-03 : 2.81E-03 : 2.62E-03 :
7 | 7 | BOX7_H:7 | 2.68E-03 : 1.93E-03 : 1.20E-03 : 1.51E-03 : 1.22E-03 : 1.37E-03 :
----------------------------------------------------------------------------------------------------------------------------------
INTERNAL | EXTERNAL | |
DV. ID. | DV. ID. | LABEL | 12 : 13 : 14 : 15 : 16 : 17 :
----------------------------------------------------------------------------------------------------------------------------------
1 | 1 | BOX1_H:1 | 4.52E-03 : 4.52E-03 : 4.57E-03 : 4.57E-03 :
2 | 2 | BOX2_H:2 | 3.13E-03 : 3.12E-03 : 3.12E-03 : 3.12E-03 :
3 | 3 | BOX3_H:3 | 2.99E-03 : 2.87E-03 : 2.86E-03 : 2.86E-03 :
4 | 4 | BOX4_H:4 | 3.41E-03 : 3.40E-03 : 3.36E-03 : 3.36E-03 :
5 | 5 | BOX5_H:5 | 3.55E-03 : 3.54E-03 : 3.47E-03 : 3.47E-03 :
6 | 6 | BOX6_H:6 | 2.62E-03 : 2.68E-03 : 2.70E-03 : 2.70E-03 :
7 | 7 | BOX7_H:7 | 1.23E-03 : 1.32E-03 : 1.24E-03 : 1.31E-03 :
------------------------------------------------------------------------------------------------------------

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Пример 5

Общее описание
В данном примере представлена оптимизация поясов и стенки части лонжерона с
ограничениями на напряжения и устойчивость. В данном случае проводится оптимизация
при двух видах расчета. Особенностью данного примера является отсутствие возможности
создания оптимизационного файла препроцессором для ограничений на устойчивость. Тем
не менее

Постановка задачи
Минимизировать вес лонжерона, варьируя высотами поперечных сечений поясов и
толщиной стенки, при ограничениях на предельно-допустимые напряжения и устойчивость.

Схема нагружения

Y
U123 U3

100000Н

U3

U123

Q∑=11000H

100000Н X

U123 U3

Схема модели оптимизации

Y Т1_t1 T2_t1 T3_t1 T4_t1 T5_t1

t1

S=0.02м t2 H

plate_Thickness

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Материал поясов:
Е=2.1Е11Па
µ=0.3
ρ=7800кг/м3
Материал стенок:
Е=7.0Е11Па
µ=0.3
ρ=2700кг/м3
Примечание: В районе сосредоточенных нагрузок толщина стенки искусственно увеличена
и проектной переменной не является. Это необходимо для обеспечения распределенных
нагрузок в стенке лонжерона. При проектировании реальных конструкций подобное
моделирование части лонжерона не желательно.
Модель оптимизации:
Проектные переменные - высоты полок поясов t1 и толщина стенки лонжерона.
Объектная функция - минимум веса.
Ограничения:
Максимально-допустимые напряжения в поясах ≤ 5.6E+8
Максимально-допустимые напряжения в стенке ≤ 2.1E+8
λ≥1.0, где Pкр=λРдейств.
Примечание: Так как препроцессор MSC/PATRAN не поддерживает оптимизацию с
ограничениями на устойчивость, мы рекомендуем создать оптимизационную модель с
комплексными ограничениями на предельно-допустимые напряжения и собственные
частоты. А следующим этапом переправить в исходном файле (.bdf) тип расчета, метод
расчета, переменные состояния и ограничения в соответствии с требованиями расчета на
устойчивость. Данный подход оправдывается тем, что в основах расчета на устойчивость и
собственные частоты лежат общие принципы и структура исходных файлов очень близка.

Процедура выполнения
Запускаем MSC/PATRAN.
File / New / в панель New Database Name вводим имя новой базы данных Longeron / OK
Появляется окно New Model Preferences, в котором устанавливаем / Tolerance : Based on
Model / Approximate Maximum Model Dimension : 10 / Analysis Code : MSC/NASTRAN / OK

Создание КЭ модели

Создание поверхности с координатами (0 0 0), (0 0.2 0), (0.5 0 0) и (0.5 0.2 0):
Geometry / Create / Surface / XYZ / Vector Coordinate List: < 0.5 0.2 0 > / Origin
Coordinates List: [0 0 0] / Apply.

Определение размера КЭ сетки:


Finite Elements / Create / Mesh Seed / Uniform / включите кнопку Number of Elements
/ Number = : 10 / Выберите обе короткие стороны прямоугольника Curve List = : Surface 1.1
1.3 / если кнопка Auto Execute выключена Apply.
Finite Elements / Create / Mesh Seed / Uniform / включите кнопку Number of Elements
/ Number = : 20 / Выберите обе длинные стороны прямоугольника Curve List = : Surface 1.2
1.4 / если кнопка Auto Execute выключена Apply.

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Создание КЭ сетки:
Finite Elements / Create / Mesh / Surface / включите кнопку IsoMesh / Surface List = :
Surface 1 / Apply.

Генерация одномерных элементов, моделирующих пояса:


Finite Elements / Create / Mesh / Curve / Выберите обе длинные стороны
прямоугольника Curve List = : Surface 1.2 1.4 / Apply.

Объединение узлов:
Finite Elements / Equivalence / All / Tolerance Cube / Equivalencing Tolerance = :
0.005 / Apply.

Создание изотропного материала с именем Mat1 и свойствами согласными с


условиями задачи:
Materials / Create / Isotropic / Manual Input / Material Name : Mat1 / нажмите кнопку
Input Property… / Constitutive Model : Linear Elastic / Elastic Modulus = : 7.0E10 / Poisson
Ratio = : 0.3 / Density = : 2700 / Apply / Cancel.

Создание изотропного материала с именем Mat2 и свойствами согласными с


условиями задачи:
Materials / Create / Isotropic / Manual Input / Material Name : Mat2 / нажмите кнопку
Input Property… / Constitutive Model : Linear Elastic / Elastic Modulus = : 2.1E11 / Poisson
Ratio = : 0.3 / Density = : 7800 / Apply / Cancel.

Создание сечений в библиотеке сечений:


Tools / Beam Library… Попадаем в окно “Beam Library” / Create / Standard Shape /
New section Name: T1 / из набора стандартных сечений выберите тавр / W= : 0.03 / H= : 0.03 /
t1= :0.006 / t2= : 0.002 / Apply, поменяйте имя на T2 / Apply, повторите несколько раз эту
операцию, создав пять сечений с соответствующими именами: Т1, Т2, …, Т5 / Cancel.

Задание свойств элементов:


Properties / Create / 1 D / Beam / Property Set Name : Prop1 / нажмите кнопку Input
Property… / Material Name : m:Mat2 / [Section Name]: выберите из списка Beam Sections: Т1
/ Bar Orientation : Coord 0.2 / OK / Выберите 1D элементы, соответствующие первой
проектной переменной, Select Members : Elm 201:204, 221:224 / Add / Apply.
Properties / Create / 1 D / Beam / Property Set Name : Prop2 / нажмите кнопку Input
Property… / Material Name : m: :Mat2 / [Section Name]: выберите из списка Beam Sections:
T2 / Bar Orientation : Coord 0.2 / OK / Выберите 1D элементы, соответствующие второй
проектной переменной Select Members : Elm 205:208, 225:228 / Add / Apply. Аналогичным
образом для оставшихся 1D-элементов создайте свойства с соответствующими именами и
сечениями, согласно проектным переменным.

Задание свойств пластин:


Properties / Create / 2 D / Shell / Property Set Name : plate / нажмите кнопку Input
Property / Material Name : m:Mat1/ Thickness : 0.001 / OK / Вберите все плоские элементы,

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

исключая два правых столбца, которые соответствуют другим свойствам. Select Members :
(список элементов) / Add / Apply.
Properties / Create / 2 D / Shell / Property Set Name : platex / нажмите кнопку Input
Property / Material Name : m:Mat2/ Thickness : 0.02 / OK / Вберите два правых столбца
плоских элементов Select Members : (список элементов) / Add / Apply.

Создание граничных условий:


Loads/BCs / Create / Displacement / Nodal / New Set Name : Displacement_1 / Input
Data… / Translations <T1 T2 T3> : <0,0,0> / OK / Select Application Region… / нажмите
кнопку FEM / Выделите все крайние левые узлы Select Nodes : Node 1:221:21 / Add / OK /
Apply.
Loads/BCs / Create / Displacement / Nodal / New Set Name : Displacement_2 / Input
Data / Translations <T1 T2 T3> : < , ,0> / OK / Select Application Region / Выберите все
узлы, находящиеся на периметре панели, исключая те на которые ограничения уже
наложены Select Nodes : Node (список узлов) / Add / OK / Apply.

Создание нагрузки:
Loads/BCs / Create / Force / Nodal / New Set Name : m_f_b / Input Data… / Force <F1
F2 F3> : <-100000,0,0> / OK / Select Application Region… / Select Nodes : Node 231 / Add
/ OK / Apply.
Loads/BCs / Create / Force / Nodal / New Set Name : m_f_t / Input Data… / Force <F1
F2 F3> : <100000,0,0> / OK / Select Application Region… / Select Nodes : Node 21 / Add /
OK / Apply.

Loads/BCs / Create / Force / Nodal / New Set Name : q_f / Input Data… / Force <F1 F2
F3> : <0,1000,0> / OK / Select Application Region… / Выберите все крайне правые узлы
Select Nodes : Node 21:231:21 / Add / OK / Apply.

Создание модели оптимизации


Создание проектных переменных:
Tools / Model Variables

Попадаем в меню Model Variables и создаем проектные переменные (в данном случае


переменными будут высоты полок поперечных сечений балочных элементов и толщина
стенки).
Create / Variable / Beam Dimension / Type : T / выделите в Select Beam Section: T1 /
выделите в Select Beam Dimension : t1 / Apply / отмените выделение в Select Beam Section:
T1 и выделите T2 / выделите в Select Beam Dimension : t1 / Apply / Теперь у Вас есть две
проектные переменные, соответствующие выбранным сечениям, аналогичным образом
создайте остальные три переменные.
Create / Variable / Property / Dimension : 2D / Type : Shell / выделите в Select Property Set :
plate / выделите в Select Property Name : Thickness для этого вам может понадобится
переместить ползунок / Apply / Close.

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Описание нижних и верхних границ проектных переменных, наложение ограничений


на конструкцию (создание переменных состояния)
Tools / Design Study
Попадаем в меню Design Study / Create / Design Study / Вводим имя Design Study Name :
Study1
Опишем проектные переменные
Нажав на кнопку Design Variables…, попадем в меню Define Design Variables. Определим
нижнюю и верхнюю границы (максимальное и минимальное значения) проектных
переменных. Для переменных Т1_t1, T2_t1, …, T5_t1 введите: Lower Bound : 0.001 / Upper
Bound : 0.01. Для переменной plate_Thickness введите: Lower Bound : 0.0005 / Upper Bound :
0.005. / OK.

Ограничения:
Нажав на кнопку Design Constraints, попадем в меню Design Constrai… Накладываем
ограничения по максимальным напряжениям на концах А элементов со свойствами prop1,
prop2 и т.д. σmin = -5.6E+8 σmax = 5.6E+8. Create / Linear Static / Stress / нажмите на кнопку
PSET / 1D / Bar нажмите на кнопку Select All / Stress Component : Maximum / Location on
Element : ENDA Lower Bound : -5.6E8 / Upper Bound : 5.6E8 / Apply /
Накладываем ограничения по максимальным напряжениям на концах В элементов со
свойствами prop1, prop2 и т.д. σmin = -5.6E+8 σmax = 5.6E+8. Create / Linear Static / Stress /
нажмите на кнопку Select All / Stress Component : Maximum / Location on Element : ENDB
Lower Bound : -5.6E8 / Upper Bound : 5.6E8 / Apply.
Накладываем ограничения по максимальным напряжениям на стенку Create / Linear Static /
Stress / 2D / Plate/Shell / В окне Select Existing Properties выделите plate, что отобразится в
окне Select Element Properties / Stress Component : von Mises / Location on Element :
Max.Corners Lower Bound : -2.1E8 / Upper Bound : 2.1E8 / Apply.
Так как данный препроцессор не может создавать исходные файлы с ограничениями на
потерю устойчивости, накладываем ограничения на собственную частоту: нижняя граница
500Гц верхняя - 9000Гц. Create / Normal Modes / Frequency / Frequency Modes Number : 1 /
Lower Bound : 500 / Upper Bound : 9000 / Apply / Close / Apply.

Создание файла исходных данных (.bdf):


Analysis / Optimize / Entire Model / Analysis Deck / Job Name : Longeron, нажав на
кнопку Optimization Parameters… попадаем в соответствующее меню /Maximum Number
of Design cycles (DESMAX) : 10 / Data Deck Echo : Unsorted / Minimum Property Move Limit
(DPMIN)= : 0.01 / OK / Subcase select… / 101 LINEAR STATIC / в поле Subcase Available
выделите Default, что отобразится в нижнем окне / 103 NORMAL MODES / в поле Subcase
Available выделите Default /OK / Apply.

Файл исходных данных (bdf)


В данном случае показана только структура и оптимизационная модель. Так как
препроцессор создал файл с ограничениями на собственные частоты с соответствующим
типом расчета файл надо переделать. Строки, которые необходимо изменить или удалить,
подчеркнуты.

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

$ NASTRAN input file created by the MSC MSC/NASTRAN input file


$ translator ( MSC/PATRAN Version 7.5 ) on July 03, 1998 at
$ 17:47:05.
ASSIGN OUTPUT2 = 'Longeron.op2', UNIT = 12
$ Direct Text Input for File Management Section
$ Design Sensitivity and Optimization Analysis
SOL 200
TIME 600
$ Direct Text Input for Executive Control
CEND
SEALL = ALL
SUPER = ALL
TITLE = MSC/NASTRAN job created on 03-Jul-98 at 14:21:57
ECHO = NONE
MAXLINES = 999999999
DESOBJ(MIN) = 1
$ Direct Text Input for Global Case Control Data
SUBCASE 1
$ Subcase name : Default
SUBTITLE=Default
SPC = 2
LOAD = 2
DISPLACEMENT(SORT1,REAL)=ALL
SPCFORCES(SORT1,REAL)=ALL
STRESS(SORT1,REAL,VONMISES,BILIN)=ALL
ANALYSIS = STATICS
DESSUB = 1
SUBCASE 2
$ Subcase name : Default
SUBTITLE=Default
METHOD = 1
SPC = 2
BC = 2
VECTOR(SORT1,REAL)=ALL
SPCFORCES(SORT1,REAL)=ALL
ANALYSIS = MODES
DESSUB = 2
BEGIN BULK
PARAM POST -1
PARAM PATVER 3.
PARAM AUTOSPC YES
PARAM COUPMASS -1
PARAM K6ROT 0.
PARAM WTMASS 1.
PARAM,NOCOMPS,-1
PARAM PRTMAXIM YES
PARAM NASPRT 0
EIGRL 1 10 0

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

$ Direct Text Input for Bulk Data


$ ...DESIGN VARIABLE DEFINITION
$ T1_t1
DESVAR 1 T1_t1:1 .006 .001 .01 1.
$ T2_t1
DESVAR 2 T2_t1:2 .006 .001 .01 1.
$ T3_t1
DESVAR 3 T3_t1:3 .006 .001 .01 1.
$ T4_t1
DESVAR 4 T4_t1:4 .006 .001 .01 1.
$ T5_t1
DESVAR 5 T5_t1:5 .006 .001 .01 1.
$ plate_Thickness
DESVAR 6 plate_:6 .001 5.-4 .005 1.
$ ...DEFINITION OF DESIGN VARIABLE TO ANALYSIS MODEL PARAMETER
RELATIONS
DVPREL1 1 PBARL 1 14 + J
+ J1 1.
DVPREL1 2 PBARL 2 14 + K
+ K2 1.
DVPREL1 3 PBARL 3 14 + L
+ L3 1.
DVPREL1 4 PBARL 4 14 + M
+ M4 1.
DVPREL1 5 PBARL 5 14 + N
+ N5 1.
DVPREL1 6 PSHELL 6 4 + O
+ O6 1.
$ ...STRUCTURAL RESPONSE IDENTIFICATION
DRESP1 1 W WEIGHT
$ FREQ_1
DRESP1 2 FREQ5 FREQ 1
$ STRESS_1
DRESP1 3 STR3 STRESS PBAR 7 1 + P
+ P2 3 4 5
$ STRESS_2
DRESP1 4 STR4 STRESS PBAR 7 1 + Q
+ Q2 3 4 5
$ STRESS_3
DRESP1 5 STR5 STRESS PSHELL 28 6
DRESP1 6 STR6 STRESS PSHELL 45 6
DRESP1 7 STR7 STRESS PSHELL 62 6
DRESP1 8 STR8 STRESS PSHELL 79 6
DRESP1 9 STR9 STRESS PSHELL 36 6
DRESP1 10 STR10 STRESS PSHELL 53 6
DRESP1 11 STR11 STRESS PSHELL 70 6
DRESP1 12 STR12 STRESS PSHELL 87 6
DRESP2 13 MAX13 1 + R

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

+ R DRESP1 5 6 7 8 9 10 11 + S
+ S 12
DEQATN 1 MAXSTRE ( STR5 , STR6 , STR7 , STR8 , STR9 , STR10 ,
STR11 , STR12 ) = MAX ( STR5 , STR6 , STR7 , STR8 , STR9 ,
STR10 , STR11 , STR12 )
$ ...CONSTRAINTS
DCONSTR 1 3 -5.6+8 5.6+8
DCONSTR 1 4 -5.6+8 5.6+8
DCONSTR 1 13 -2.1+8 2.1+8
DCONSTR 2 2 500. 9000.
$ ...OPTIMIZATION CONTROL
DOPTPRM DESMAX 5 P1 0 P2 1 CONV1 .001 + T
* T CONV2 1.-20 CONVDV .001 * U
* U CONVPR .01 DELP .2 * V
+ V DELX 1. DPMIN .01 DXMIN .05
ENDDATA

Ниже приведен файл с изменениями. Измененные и добавленные строки подчеркнуты, в


скобочках даны комментарии.

$ NASTRAN input file created by the MSC MSC/NASTRAN input file


$ translator ( MSC/PATRAN Version 7.5 ) on July 03, 1998 at
$ 17:47:05.
ASSIGN OUTPUT2 = 'Longeron.op2', UNIT = 12
$ Direct Text Input for File Management Section
$ Design Sensitivity and Optimization Analysis
SOL 200
TIME 600
$ Direct Text Input for Executive Control
CEND
SEALL = ALL
SUPER = ALL
TITLE = MSC/NASTRAN job created on 03-Jul-98 at 14:21:57
ECHO = NONE
MAXLINES = 999999999
DESOBJ(MIN) = 1
$ Direct Text Input for Global Case Control Data
SUBCASE 1
$ Subcase name : Default
SUBTITLE=Default
SPC = 2
LOAD = 2
DISPLACEMENT(SORT1,REAL)=ALL
SPCFORCES(SORT1,REAL)=ALL
STRESS(SORT1,REAL,VONMISES,BILIN)=ALL
ANALYSIS = STATICS
DESSUB = 1
SUBCASE 2

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

$ Subcase name : Default


SUBTITLE=Default
METHOD = 1
SPC = 2
VECTOR(SORT1,REAL)=ALL
SPCFORCES(SORT1,REAL)=ALL
ANALYSIS = BUCK
DESSUB = 2
BEGIN BULK
PARAM POST -1
PARAM PATVER 3.
PARAM AUTOSPC YES
PARAM COUPMASS -1
PARAM K6ROT 0.
PARAM WTMASS 1.
PARAM,NOCOMPS,-1
PARAM PRTMAXIM YES
PARAM NASPRT 0
EIGRL,1,0.,,,0
$ Direct Text Input for Bulk Data
$ ...DESIGN VARIABLE DEFINITION
$ T1_t1
DESVAR 1 T1_t1:1 .006 .001 .01 1.
$ T2_t1
DESVAR 2 T2_t1:2 .006 .001 .01 1.
$ T3_t1
DESVAR 3 T3_t1:3 .006 .001 .01 1.
$ T4_t1
DESVAR 4 T4_t1:4 .006 .001 .01 1.
$ T5_t1
DESVAR 5 T5_t1:5 .006 .001 .01 1.
$ plate_Thickness
DESVAR 6 plate_:6 .001 5.-4 .005 1.
$ ...DEFINITION OF DESIGN VARIABLE TO ANALYSIS MODEL PARAMETER
RELATIONS
DVPREL1 1 PBARL 1 14 + J
+ J1 1.
DVPREL1 2 PBARL 2 14 + K
+ K2 1.
DVPREL1 3 PBARL 3 14 + L
+ L3 1.
DVPREL1 4 PBARL 4 14 + M
+ M4 1.
DVPREL1 5 PBARL 5 14 + N
+ N5 1.
DVPREL1 6 PSHELL 6 4 + O
+ O6 1.
$ ...STRUCTURAL RESPONSE IDENTIFICATION

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

DRESP1 1 W WEIGHT
$ FREQ_1
DRESP1,2,BUCK1,LAMA,,,1
$ STRESS_1
DRESP1 3 STR3 STRESS PBAR 7 1 + P
+ P2 3 4 5
$ STRESS_2
DRESP1 4 STR4 STRESS PBAR 7 1 + Q
+ Q2 3 4 5
$ STRESS_3
DRESP1 5 STR5 STRESS PSHELL 28 6
DRESP1 6 STR6 STRESS PSHELL 45 6
DRESP1 7 STR7 STRESS PSHELL 62 6
DRESP1 8 STR8 STRESS PSHELL 79 6
DRESP1 9 STR9 STRESS PSHELL 36 6
DRESP1 10 STR10 STRESS PSHELL 53 6
DRESP1 11 STR11 STRESS PSHELL 70 6
DRESP1 12 STR12 STRESS PSHELL 87 6
DRESP2 13 MAX13 1 + R
+ R DRESP1 5 6 7 8 9 10 11 + S
+ S 12
DEQATN 1 MAXSTRE ( STR5 , STR6 , STR7 , STR8 , STR9 , STR10 ,
STR11 , STR12 ) = MAX ( STR5 , STR6 , STR7 , STR8 , STR9 ,
STR10 , STR11 , STR12 )
$ ...CONSTRAINTS
DCONSTR 1 3 -5.6+8 5.6+8
DCONSTR 1 4 -5.6+8 5.6+8
DCONSTR 1 13 -2.1+8 2.1+8
DCONSTR 2 2 1.00 9.5
DSCREEN,LAMA
$ ...OPTIMIZATION CONTROL
DOPTPRM DESMAX 5 P1 0 P2 1 CONV1 .001 + T
* T CONV2 1.-20 CONVDV .001 * U
* U CONVPR .01 DELP .2 * V
+ V DELX 1. DPMIN .01 DXMIN .05
ENDDATA

Результаты расчета
DESIGN VARIABLE HISTORY
-------------------------------------------------------------------------------------------------------------------------------
INTERNAL | EXTERNAL | |
DV. ID. | DV. ID. | LABEL | INITIAL : 1 : 2 : 3 :
-------------------------------------------------------------------------------------------------------------------------------
1 | 1 | T1_T1:1| 6.0000E-03 : 6.4240E-03 : 6.3390E-03 : 6.3390E-03 :
2 | 2 | T2_T1:2| 6.0000E-03 : 6.6056E-03 : 6.5208E-03 : 6.5208E-03 :
3 | 3 | T3_T1:3| 6.0000E-03 : 6.3579E-03 : 6.2732E-03 : 6.2732E-03 :
4 | 4 | T4_T1:4| 6.0000E-03 : 5.9320E-03 : 5.7961E-03 : 5.7961E-03 :
5 | 5 | T5_T1:5| 6.0000E-03 : 4.9405E-03 : 4.6706E-03 : 4.6706E-03 :
6 | 6 | PLATE_:6 | 1.0000E-03 : 1.9845E-03 : 1.7883E-03 : 1.7883E-03 :

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Приложение А

Постановка оптимизационной задачи


F ( xr ) Объект минимизации (целевая функция)
g j ( xr ) ≤ 0 j = 1,..., ng неточные ограничения
r
hk ( x ) = 0 k = 1,..., nh точные ограничения
xi ≤ xi ≤ xi i = 1,..., n
L u
краевые ограничения, где

{
xr = x , x ,..., x
1 2 n } проектные переменные
Опишем основные проблемы поиска минимума целевой функции и их решение в программе
MSC/NASTRAN.
Перепишем вектор переменной в виде:
r
xr 1 = xr o + a * S 1 , где (1)
rx o - начальный вектор проектной переменной,
S 1 - вектор поиска,
a * - параметр поиска.
Данное уравнение представляет собой одномерный поиск, когда коррекция х зависит только
от одного скалярного параметра a * . a * - величина, перемещающая значение проектной
1 1
переменной в направлении S . В направлении S мы имеем или неточные ограничения,
или перемещение. Обнаружение a * завершает первую итерацию. В случае отсутствия
ограничений, мы могли бы просто повторить процесс нахождения направления с
максимальным градиентом и продолжить перемещение. На практике есть лучший способ
выбора направления, называющегося сопряженным направлением. В любом случае мы
находим направление вниз и перемещаемся насколько это возможно.
Теперь предположим, что мы наткнулись на ограничения. В этом случае надо найти
1
направление S , которое приведет к уменьшению целевой функции. Математически это
будет выглядеть так:
r r
∇F ( x ) ⋅ S ≤ 0 (2)
Данное уравнение является скалярной формой (точечной) градиента объектной функции с
1
направлением поиска S .
r r r r r
∇F ( x ) ⋅ S ⋅ cos(∇F ( x ) ∧ S ) = ∇F ( x ) ⋅ S
r
Из формулы видно, что знак градиента определяет косинус. Направление
r
cos(∇F ( x ) ∧ S ) = 0 - это углы 900 и 2700, направление где grad ( F ( xr )) = 0 .Напротив,
r
если значение косинуса -1, то мы получим направление с максимальным градиентом. Таким
образом, мы хотим найти направление поиска, которое делает целевую функцию наиболее
отрицательной, но оно должно остаться в пределах ограничений. То есть, к данному
требованию прилагается дополнительное, связанное с ограничениями:
r r
∇g j ( x ) ⋅ S ≤ 0

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Допустимо-применимое направление поиска


X1

сектор
F(xo) допустимого
направления

x
F(x) = constant

g 1 (xo)

S
сектор допустимо-
применимого применимый g 2 (x) = 0
направления сектор

g 1 (x) = 0

0 X2

Для объектной функции угол между направлением поиска и градиентом ограничений должен
быть между 900 и 2700, данным углам соответствует направление касательных к границе
ограничений. Чтобы найти направление поиска, которое дает максимальное улучшение
объектной функции, необходимо объединить применимые и возможные требования. Эта
комбинация создает новое задание субоптимизации: нахождение компонентов поиска для
того чтобы:
r r
минимизировать ∇F ( x ) ⋅ S (3)
r r
в зависимости ∇g ( x ) ⋅ S ≤ 0
j
j ∈J (4)
r r
S ⋅ S ≤ 1 , где (5)

j - комплект ограничений, чьи величины являются 0 в пределах определенного пространства


(комплект активных ограничений). В двумерном случае - это довольно простая и наглядная
задача, в случае большого числа переменных это становится подзадачей, которая решается
как часть задачи.

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Предположим, что мы можем найти физически допустимое направление поиска. Мы можем


двигаться в этом направлении до тех пор, пока не смогли достичь дальнейшего улучшения.
Подзадача нахождения нового направления поиска повторяется до тех пор, пока нового
направления обнаружить не удается. Мы называем эту точку оптимум. Если начальные
условия задачи находятся вне ограничений или вне допустимой зоны - первая задача: найти
допустимую область.
Возникает вопрос: как определить, что мы достигли минимума. Ответ находится в
обнулении функции градиента цели. В этом случае управление уравнением является
стационарным условием функции Лагранжа:
r r
L( x , λ ) = F ( x ) + ∑ λi ∇gi ( x *)
M
r
j =1

λ..i ≥ 0
r
Из условия Куна-Таккера функция Лагранжа L x , λ ( r ) должна иметь исчезающий градиент в
оптимальной постановке задачи. Тем не менее, мы должны учитывать исходные проблемы,
получим:
r
1. x * - выполнимое, следовательно, для всех g j ( x *) ≤ 0
r
r
2. λi ∇gi ( x *) = 0
r M
r
3. ∇F ( x *) + ∑ λi ∇gi ( x *) = 0 , для λ.i ≥ 0 i = 1,..., M
j =1

Условия Куна-Таккера
X2 g2(x)

F(x*)

g 1(x)

x*

g2(x*)
λ1 g1(x*)
λ 2 g2(x*)

0 X1
λ1 g1(x*) + λ 2 g2(x*) g 1(x*)

Физическая интерпретация этих условий - сумма градиентов цели λi , связанных градиентов


всех активных ограничений должно векторно равняться 0. Данное уравнение показывает,
что, соответствуя Лагранжу, множители являются 0 для всех неактивных ограничений.

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Алгоритм модифицированного метода допустимых направлений


Рассмотрим фактическое решение приближенной проблемы. Метод, описанный здесь,
называется модифицированный метод допустимых направлений. В данном случае допустим,
r
что мы имеем объектную функцию и ограничения g j ( x *) ≤ 0 , i = 1,..., ng , как и верхнюю с
нижней границы проектной переменной. Также доступны градиенты цели и ограничений.
Таким образом, решаем задачу:
найти значения проектных переменных таких, что:
r
min F ( x )
r
с учетом g j ( x ) ≤ 0 j = 1,..., ng
x ≤ xi ≤ x
i
L u
i i = 1,..., n
Начальный вектор скорректируется согласно уравнению:
r r r
x q = x q −1 + a * S q , где
q - номер итерации
S 1 - вектор выбора направления
a * - параметр перемещения
Общий оптимизационный процесс происходит следующим образом:
1.старт q = 0, x = x
2.q = q + 1
r r
3.оценка F ( x ) и g j ( x ) где j = 1,..., ng
4.идентификация комплекта критических и околокритических ограничений
r r
5.вычисление ∇F ( x ) и g j ( x ) для всех j ∈ J
6.определение направления вектора поиска S
7.проведение одномерного поиска для определения a *
r q r q −1 rq
8.вычисление x = x + a * S
9.проверка сходимости в области, в случае удовлетворения - выход из цикла, в противном
случае переход на этап 2.
Основные задачи оптимизации состоят в следующем:

1
Нахождение физически допустимых направлений поиска S .
r

r q −1
Обнаружение скалярного параметра a * , что минимизирует F x + x * S , ( )
принадлежащей ограничениям.
• Испытания для сходимости в оптимуме и завершение, если сходимость
достигнута.
Обсудим каждые из них.
1
Нахождение направления поиска S .
Сначала надо определить активные и нарушенные ограничения. Здесь активное ограничение
определено между двумя числами: СТ - небольшое отрицательное и CTMIN - небольшое
положительное. Таким образом, получаем:
g j ( x ) < СТ - неактивное
СТ ≤ g j ( x ) ≤ CTMIN активное
g j ( x ) ≥ CTMIN нарушенное

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

CTMIN = 0.003g j ( x )
Активные ограничения
X1

область
допустимых
значений
gj (x) < 0

область
недопустимых g j(x) = CT
значений

g j (x) > 0 g j(x) = 0

gj (x) = CTMIN

0 X2

Используя активные критерии ограничения, алгоритм сначала сортирует все ограничения и


идентифицирует, те которые являются активными или нарушенными. Затем функционируют
градиенты цели и вычисляются все нарушенные и активные градиенты цели. Согласно этому
обнаруживается направление поиска. В этом случае есть три возможности.

Отсутствие активных и нарушенных ограничений (безусловная оптимизация).

В данном случае мы можем двигаться в любом направлении, надо только его найти. Нам не
нужно направление с максимальным градиентом цели, т.е.
r
S q = −∇F ( xr q −1 )
Данное направление используется только в том случае, если это начало оптимизации или
последние результаты не уступили никаким ограничениям. Теперь примем, что в процессе
оптимизации не встретится активных ограничений. В таком случае, могли бы каждый раз
двигаться в направлении с максимальным градиентом цели, но существуют теории, которые

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

доказывают, что данные ряды не сходятся, что проверенно на практике. Простой


сопряженный метод оказался наиболее надежным. Здесь использовано раздвоение:
r r
(r
)
S q = −∇F x q −1 + β ⋅ S q −1 , где
[ ∇F ( x )]
r 2
q −1

β=
[∇F ( xr )]
2
q−2

Метод максимальных градиентов

X2

x0

S1
x*
+

x1 S2 x5 x7
x8
x3
x6
x4

x2 X1

На данном рисунке выбираются направления поиска с максимальными градиентами.


Метод сопряженных направлений

X2

x3
x0

S1 x* x 4
+

x1
S2

X1
x2

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Здесь используются сопряженные направления (направления с максимальными градиентами,


плюс доля предшествующих). Этот алгоритм чрезвычайно прост, но как видно из рисунков
улучшает сходимость оптимума.

Существуют только активные ограничения (нет нарушенных).

Наиболее общая проблема направления поиска: мы находимся в физически допустимой


области и есть по крайней мере одно активное ограничение. Надо найти направление,
которое улучшает объектную функцию и двигается либо к границе ограничений, либо
отступает от него. Математически это выглядит так:
найти направление поиска минимизируя
r
(
r
)
∇F x q −1 ⋅ S q (6)

в зависимости
r
∇g j ( x q −1 ) ⋅ S q ≤ 0
r
j ∈J (7)
r r
Sq ⋅Sq ≤ 1 (8)
Это скалярный продукт является величиной произведения двух модулей и косинуса угла
между ними. Таким образом, получим:
r
(
r
)
∇F x q −1 ⋅ S ⋅ cos(θ ) (9)
Требуется косинус сделать наиболее отрицательным, не выходя за ограничения. Кроме того
для любого угла между 900 и 2700 уравнение (9) может быть более отрицательным при
увеличении S. Также, если S удовлетворяет уравнению (7) любое увеличение в величине S
также удовлетворяет этому уравнению. Предположим, движение объектной функции в
отрицательную сторону, удовлетворено уравнение (2). Если объектная функция не может
уменьшаться вследствие уравнения (6), выходит, что не существует такого направления,
которое уменьшает объектную функцию, оставаясь в пределах ограничений. В этом случае
процесс оптимизации может быть расторгнут.
На практике приходится еще уменьшать значения СТ и CTMIN, тем самым, достигая точной
границы ограничений, если и в этом случае не находятся направления S, то процесс
оптимизации расторгается.

Одно или более нарушенных ограничений.

Такой случай показан на рис. 5 g1 - нарушено а g2 - активное. Теперь мы должны найти


направление поиска обратно по отношению к области допустимых значений, при
необходимости с увеличением объектной функции. Для этого запишем уравнения (6) и (8) с
новой переменной Wo).

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

X1

g1(x) g 2(x)

0 X2

Новое направление, обнаруживающее решение:


нахождение направления поиска S и переменной W:
r q −1 r q
функция минимизации ∇F x (
⋅ S − ψW ) (10)
rq
в зависимости ∇g j x (r )⋅S
q −1
+ QjW ≤ 0 j ∈J (11)
r r
Sq ⋅Sq +W ≤ 1 (12)

Для примера допустим, что Q=1, и Ψ - очень большое число. Затем, вторая итерация
доминирует над снижением (10), так как любое увеличение W все больше уменьшает цель.
Переменная W включена просто как средство для уменьшения объектной функции. Теперь
рассмотрим величину Q в уравнении (11). Она нужна для выталкивания области решения с
нарушенного ограничения. Если Q=0 повышение W не приведет область определения за
границы ограничения.
Это может быть выполнено фактором Qj , как квадратной функцией j-того ограничения,
такого что:
Qj=0 при g j x ( )
q−1
=СТ, таким образом:

g j ( xr q −1 ) 
2
 (13)
Q j = Q0 10
. − 
 CT 
Q j ≤ 50 (14)
Предел Q базируется на опыте.

Одномерный поиск.
После определения направления поиска возникает проблема поиска величины перемещения.
Определим начальную величину а*. Рассмотрим объектную функцию и создадим 1 порядок
аппроксимации для F(a*) с точки зрения а*, получим:
r
F ( x q ) = F ( x q −1 + a * S )
r r

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

таким образом, аппроксимация первого порядка для F x (r )


q

r q −1  n  ∂ F ( x )   ∂ x  
r q −1
F ( x ) = F ( x ) + ∑ 
rq
∗ ∗ a * , или
 i =1  ∂ xi   ∂ a  
r q −1 dF ( x )
r q −1
F(x ) = F(x ) +
rq
, но
da *
dF ( x q −1 )
r
= Si , следовательно
da *
dF ( x q −1 )
r r
= ∇F ( x q −1 ) ⋅ S q
r
da *
Мы можем ожидать уменьшения объектной функции на некоторую долю, например 10%, это
будет выглядеть так:
r q −1 dF ( x )
r q −1
F( x ) = F( x ) + ∗ a* = F ( x q −1 ) − 0,1 ⋅ F ( x q −1 ) , откуда
rq r r
da *
0,1 ⋅ F ( x )
r q −1
a* =
 dF ( xr q −1 ) 
 
 da * 
В тот момент, когда градиенты некоторых ограничений доступны, другие могут быть
вычислены. Теперь допустим, что существует несколько градиентов ограничений. Вместо
перемещения с изменением целевой функции на 10% доведем ее до границы g j x
q−1
=0, ( )
получим:
r q −1 dg j ( x )
r q −1
gj(x ) = gj(x ) +
rq
∗ a* = 0
da *
g j ⋅ ( x q −1 )
r
a* =
 dg j ( xr q −1 ) 
 
 da * 
Следовательно, даже в начале поиска, значительная часть информации пригодна для прямого
процесса. Последнее уравнение определяет допустимый шаг для a * .

Интерполяция для a * .

В данной программе используется полиномиальная интерполяция цели и функций


ограничений. Как показывает практика, при решении подобных задач достаточно
кубической интерполяции.

Сходимость в оптимуме.

Поскольку цифровая оптимизация является итеративным процессом, одна из наиболее


сложных задач - определить прекращение процесса. По умолчанию берется максимум 5
итераций.

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

Точка уменьшенного возвращения.

Наиболее общая ситуация - ассимтотическое приближение оптимума. Следовательно, при


наличии прогресса прекращение итераций не доказано. В данном случае использованы два
критерия. Критерий, требующий, чтобы относительные изменения в цели были менее
определенного допуска:
F ( x q ) − F ( x q −1 )
r r
≤ DELOBJ
F(xq )
r
значение для DELOBJ=0.001
Второй критерий - абсолютные изменения в цели между итерациями:
F ( x q ) − F ( x q −1 ) ≤ DABOBJ
r r

значение DABOBJ=0.001 F ( x ) или 1,0Е-20


rq

Последовательное линейное программирование.


Программа MSC/NASTRAN использует модифицированный метод сопряженных
направлений, поскольку он хорошо решает линейные задачи. Приведем пошаговый
алгоритм:
1.Для текущих величин переменных сортируются ограничения и сохраняются наиболее
критические для использования в течение этого цикла.
2.Создание первой элемента ряда Тейлора для переменных и удержанных ограничений.
3.Определение перемещения в области определения. В течение одного цикла переменным
позволится измениться максимум на 40%.
4.Решение приближенной линейной задачи оптимизации.
5.Определение сходимости. В случае удовлетворения условия сходимости - выход, в
противном случае - возвращение в пункт 1.
Первый элемент ряда Тейлора выглядит следующим образом:
r r
( r
) ( r
F~( x ) = F x q −1 + ∇F x q −1 ⋅ δ x ) (15)

g~j ( x ) = g j ( x q −1 ) + ∇g j ( x q −1 ) ⋅ δ x
r r r r
j ∈ J , где (16)

δ xr = xr q − xr q −1 (17)

Уравнения (16) и (17) можно записать следующим образом:


F~( x q ) = F~ o + ∇F ( x q −1 ) ⋅ x q
r r r (18)

g~j ( x q ) = g~ o j + ∇g j ( x q −1 ) ⋅ x q j ∈ J , где
r r r (19)

( )
r
( ) r
F~ o = F~ x q − ∇F x q −1 ⋅ x q
r (20)

= g~ ( x ) − ∇g ( x ) ⋅ x
r r r
g~ o j j
q
j
q −1 q
j ∈J (21)
Проблема оптимизации будет выглядеть следующим образом:
~ rq
минимизировать F x ( ) (22)
~j xr q ≤ 0
с учетом g ( ) ё j ∈J (23)

x~i L ≤ xi ≤ x~iu i = 1,..., n (24)

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.


Оптимизация в MSC/PATRAN V 7.5

xiL = xiq − D xiq (25)

xiu = xiq + D xiq (26)

Множитель D в(25) и (26) первоначально устанавливается на определенную величину,


которая в последствии будет уменьшена. Естественно, что первая итерация может нарушать
ряд ограничений, но в последствии количество этих нарушений сведется на нет.

MacNeal-Schwendler Crporation 815 Colorado Boulevard, Los Angeles, CA 90041-1777 U.S.A.

Оценить