CAPÍTULO 3. VALIDACIÓN DE LA SOLUCIÓN PROPUESTA
3.1. INTRODUCCIÓN
Before the objective function and constraints can be defined, the analysis responses on which they depend must be identified. These responses are called design responses and are specified in the design model using DRESP1 and/or DRESP2 Bulk Data entries.
Type 1 Responses
DRESP1 Bulk Data entries define type-1, or first-level responses. These responses are available directly from an NX Nastran analysis. Structural weight, displacements at grid points, element stresses, and so on are all examples of type-1 responses. See the DRESP1 Bulk Data entry description for a list of available responses in design optimization. SeeEfficiencies in First-Level Response Identificationfor information on how to generate multiple DRESP1 entries for more than one entity (such as a grid or an element) or frequency, and how to generate results of simple mathematical functions (such as Sum or Average) in frequency response.
Type 2 Responses
DRESP2 and DRESP3 Bulk Data entries define type-2, or second-level responses. This class of responses is also frequently called user-defined since they utilize the equation or external program input features in NX Nastran, respectively. With the DRESP2 entry and its companion DEQATN entry (Design EQuATioN), responses such as error functions, stress averages, and so on can be defined. First-level responses, design variables, grid coordinate values, and table constants may all be used as input to these user-defined responses. Figure 2-22is a diagram of the DRESP1 and DRESP2 data structure.
Figure 2-22. First- and Second-Level Responses
To illustrate the difference between DRESP1 and DRESP2 entries, suppose we have a case where we want to use the x and y static displacement components at a particular grid point as design responses in our design model. These first-level responses can be identified using two DRESP1 entries as follows:
$DRESP1,ID, LABEL, RTYPE, PTYPE, REGION, ATTA, ATTB, ATT1, +
$+, ATT2, ...
$
$... X DISPLACEMENT AT GRID 100:
DRESP1, 501, UX100, DISP, , , 1, , 100
$... Y DISPLACEMENT AT GRID 100:
DRESP1, 502, UY100, DISP, , , 2, , 100
DRESP1 501 selects the x-component of displacement at Grid 100, and DRESP1 502 selects the corresponding y-component. These displacements may also be used in a synthetic relation.
For example, to express the total x-y plane displacement at Grid 100 as the square root of the sum of displacement squares we could use:
$
The equation data is supplied on the DEQATN entry, while the DRESP2 entry defines the arguments to this equation—in this case, the two first-level responses DRESP1 501 and 502.
DRESP2 520 can now be used either as the objective function or as a constraint.
For the use of the DRESP3 entry, consider instead that the equation is evaluated by an external program which is referenced from a DRESP3 data entry. See the DRESP2 and DRESP3 entries in the NX Nastran Quick Reference Guide for more information. However, DRESP3 is more suitable for cases in which the evaluation is not direct but may require, for example, an iterative solution (as in Newton’s method), or the solution of a system of equations to arrive at the value of a single variable among many.
Efficiencies in First-Level Response Identification
1. Since a large number of responses are often used in design, the DRESP1 entry must be able to efficiently define many responses using few entries. For example, a single DRESP1 entry can identify the z-component of displacement at grid points 100, 101, and 102 as follows:
$DRESP1,ID, LABEL, RTYPE, PTYPE, REGION, ATTA, ATTB, ATT1, +
$+, ATT2, ...
$
DRESP1, 100, UZ, DISP, , , 3, , 100, +
+, 101, 102
This list can be extended as necessary to any number of grids.
Note
Item codes used on DRESP1 entries to select response components can be found in the NX Nastran Quick Reference Guide. These are also often referred to as plot codes.
Element-level responses can be selected using either element IDs (much like the list of grids in the previous example), or property IDs. By supplying a property ID on a DRESP1
entry, we identify the element-level response for every element in that property group. For example, the following selects the axial stress response for all ROD elements in property groups 150, 160, 170 and 180:
$DRESP1,ID, LABEL, RTYPE, PTYPE, REGION, ATTA, ATTB, ATT1, +
$+, ATT2, ...
$
DRESP1, 250, SIG1, STRESS, PROD, , 2, , 150, +
+, 160, 170, 180
This can generate quite a lot of design data. Figure 2-23is a schematic diagram of this hierarchy.
If limits are subsequently placed on these responses using a DCONSTR entry (discussed in Defining the Constraints), the result will be a pair of stress constraints (one for the upper bound and one for the lower bound) for every element in each of these property groups.
By using just a pair of entries, we have been able to define potentially hundreds of stress constraints.
Figure 2-23. Identification of Element-Level Responses
2. Further automatic generation of DRESP1 data is possible in Frequency Response or Transient Response analyses. In a Frequency Response analysis, if you leave the frequency value field blank in the DRESP1 entry, NX Nastran generates that particular DRESP1 entry for every frequency in the relevant frequency set. If you are using an OFREQUENCY Case Control command, the software generates that particular DRESP1 frequency for all frequencies specified by the OFREQUUENCY command. Similarly, in a Transient Response analysis, if you leave the time value field blank, NX Nastran generates multiple DRESP1 entries. In addition, if you specify multiple entities (grid or element), NX Nastran generates multiple DRESP1 entries for each listed entity.
3. For Frequency Response or Transient Response analyses, you can obtain a simple
mathematical function resultant of the multiple responses by entering character input in the field instead of either specifying a frequency or time value or leaving the field blank. For example, if you specify “AVG” instead of a frequency value in a DRESP1 entry, NX Nastran evaluates DRESP1 at all frequencies in the relevant set. It then calculates the average of these responses. See Remark 20 for the DRESP1 entry in the NX Nastran Quick Reference Guide for further details.
Note
If you reference such a DRESP1 entry from a DRESP2 entry, you should reference it as a DRESP2 entry. If you reference it as a DRESP1 entry, then the software generates the referencing DRESP2 entry for multiple frequencies using the frequency-based components of the mathematical function (such as of the “AVG”) rather than the function resultant itself (the actual “AVG”). Such mathematical function resultants are referred to as “integrated responses” for brevity. Currently, you cannot reference these responses from a DRESP3 entry, except as a DRESP1 entry.
Efficiencies in Second-Level Response Definition
1. These efficiencies in design response identification extend to type-2 responses as well. For example, consider the following DRESP1 entries that identify major and minor principal stresses at surface z1 for PSHELL group 10:
$DRESP1,ID, LABEL, RTYPE, PTYPE, REGION, ATTA, ATTB, ATT1, +
$+, ATT2, ...
$
$ Major principal stress at surface z1:
DRESP1, 101, SIG1, STRESS, PSHELL, , 7, , 10
$
$ Minor principal stress at surface z1:
DRESP1, 102, SIG2, STRESS, PSHELL, , 8, , 10
This pair of entries defines a pair of stresses for every element in this property group. This could easily result in hundreds of design responses.
Assume we wanted to write the maximum shearing stress as the average of these responses:
$DRESP2,ID, LABEL, EQID, REGION, , , , , +
$ Input to equation to compute max shears:
DRESP2, 201, MAXS, 300, , , , , , +
+, DRESP1, 101, 102
$
$ Equation for max shears:
DEQATN 300 MAXS(SIG1,SIG2) = (SIG1-SIG2)/2.
This single DRESP2 entry defines a maximum shear for every element in the group! Since the underlying first-level responses are element-level, the DRESP2 is as well. This also applies to DRESP3 type responses.
2. You can multiply nest DRESP2 entries. In other words, each DRESP2 entry can reference one or more other DRESP2 entries. However, you can only nest integrated response DRESP1 entries which are referenced as DRESP2 entries a single time (i.e., you can only reference it from a DRESP2 entry that isn’t further nested). You cannot nest DRESP3 entries inside each other.
Limitations in Writing Second-Level Responses
A few restrictions apply to the formulation of second-level responses:
• Unless you use a DRSPAN Case Control command, you can only reference subcase-dependent responses from a DRESP2 or DRESP3 entry with other responses from the same subcase. If
a DRESP2 or DRESP3 entry contains one or more DRESP1 entries that are assigned with a DRSPAN command to particular subcases, then all DRESP1 entries in the same DRESP2 or DRESP3 entries must be assigned with the DRSPAN command. You can also use a DRSPAN command to assign any integrated response DRESP1 entries to a specific subcase.
• When combining responses of different types (e.g. stress + strain, etc.), the responses must be scalar quantities. That is, the corresponding DRESP1 entries must define a single response only. This implies that for displacements, only a single grid may be listed on the DRESP1 entry; for element-level responses, the ELEM identifier must be used with only a single element ID; and so on.
Designed Grids
The DNODE input fields on the DRESP2 entry may be used to input the coordinates for designed grids only. A designed grid is one whose coordinates may vary during shape optimization.
Mathematically, a designed grid has a nonzero coordinate component in one or more of the shape basis vectors. See the DRESP2 entry for a detailed description of designed grids.
Example
Suppose we would like to include Euler buckling constraints in the design model for some simple, pin-ended rod elements. A representative element is shown inFigure 2-24.
Figure 2-24. Pin-ended Rod Element The critical load that induces the first Euler buckling mode is given by
Equation 2-23.
The design requirements call for the axial load in this ROD element to be greater (less compressive) than this critical load PCRor
Equation 2-24.
which can be rewritten as
Equation 2-25.
Note that the critical load is a function of the least area moment of inertia, yet this quantity is not a part of the analysis model specification for the ROD element. If the cross-sectional area of the element is the design variable and a solid circular section is assumed, then
Equation 2-26.
and
Equation 2-27.
The buckling constraint is now a function of the cross-sectional area design variable for this ROD element geometry. The following Bulk Data entries illustrate one way in which these relations may be implemented: ---DESVAR, 1, A200, 0.5, 0.25, 0.75
$
$ note use of PI function--^ (see DEQATN entry description)
$
$DCONSTR,DCID, RID, LALLOW, UALLOW DCONSTR,500, 501, -1.E35, 1.0
---The two GRID entries along with the CROD and PROD entries specify ROD Element 100 with a length of 10 units along the x-axis and an initial cross-sectional area of 0.5.
The DESVAR entry defines the area design variable with an initial value equal to the initial cross-sectional area of the ROD. Lower and upper bounds of 0.25 and 0.75, respectively, are set, representing 50% move limits on the cross-sectional area.
Since the constraint on Euler buckling is applied here for just a single element, the ‘ELEM’
identifier is used on the DRESP1 in field 5 along with a ‘100’ in field 9 to specify that the axial load for Element 100 is to be used in the design model. The force component is selected by reference to the plot codes (the 2 in field 7 indicates axial force). (See the NX Nastran Quick Reference Guide for these plot codes.)
Note
The order of the DRESP2 continuation lines is not interchangeable. See the DRESP2 Bulk Data entry description.
The DRESP2 entry defines the arguments of the Euler buckling equation DEQATN 600. Note that this information is positional; the values are assigned to the argument list of the equation based on the order of specification in the DRESP2 entry.