Download Programmers Manual

Transcript
AROSNSDR
PROGRAMMER’S MANUAL
Application Calling Sequence:
None
Method:
This module treats two distinct families of aeroelastic constraints for the current boundary condition
and subscript number: the active aeroelastic effectiveness constraints DCONALE, DCONCLA and DCONSCF;
and the active displacement dependent constraints DCONTRM, DCONDSP, stress and strain. Two parallel
sets of partitioning operations take place to extract the active pseudodisplacements needed for effectiveness constraints and active displacements needed for the displacement-dependent constraints. The
control information for the presence or absence of each type of constraint and the additional control
information to extract data from downstream entities is also prepared for each constraint family. Finally,
the need to loop through another subscript value is determined and the LOOP variable is output. LOOP
will be false after the last needed AROSNSDR call for the current BC.
First CASE is queried to obtain the TRIM identification number and symmetry. Then TRIM is read to
obtain the subscript numbers, MINDEX values and subcase ids for each SAERO subcase in the current
BC. These data are then assembled into a master table containing the trim identification number, the
subscript number and the subcase id.
The CONST relation is then read to count the number of active stress, strain, displacement, aileron
effectiveness, lift effectiveness, stability coefficient and trim parameter constraints. A loop over each
CONST entry is then made to assemble the partitioning vectors and control information for sensitivity
computations. Each family of constraints is treated separately.
For effectiveness constraints, the DISPCOL attribute in CONST is used to build a partitioning vector for
the active pseudodisplacements and accelerations. The partitioning vector is later destroyed but the
active column numbers are stored as a contiguous string of numbers and written to PCAE. For lift
effectiveness constraints there is one UAGC/AAGC column for each applied constraint: the disp/accel. due
to a unit angle of attack. For aileron effectiveness, there are two columns: the first due to unit control
surface deflection and the second due to unit roll rate. For stability coefficients, there is one column due
to a unit deflection of the constrained parameter. As the constraints are looped over, only those with the
current subscript value are considered. Those with lower subscript values have already been processed
and, if any active constraints are found with a higher subscript value, the LOOP flag is set to TRUE to
ensure another pass is done.
A similar path exists for the displacement-dependent constraints except the matrices being partitioned
are the actual displacement and acceleration fields. Separate partitioning vectors are assembled for 1)
active columns due to all displacement dependent constraints (PGAA) and 2) active columns due to stress,
strain and displacement constraints (PGUA). Again, previously processed subscripts are ignored and
LOOP is set to true if larger subscripts are encountered.
Finally, the assembled partitioning vectors are written to their respective entities and the PCAE and
PCAA entities are determined from the partitioning data and written to the unstructured entities. The
presence of active constraints in the effectiveness family or displacement-dependent family is then
known and the ACTAEFF and ACTUAG flags, respectively, are set.
5-20 ENGINEERING APPLICATION MODULES
ASTROS