static_loads Module
digraph inheritanceb43a8911f1 {
bgcolor=transparent;
rankdir=LR;
size="";
"pyNastran.bdf.cards.aero.dynamic_loads.Aero" [URL="pyNastran.bdf.cards.aero.dynamic_loads.html#pyNastran.bdf.cards.aero.dynamic_loads.Aero",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Base class for AERO and AEROS cards."];
"pyNastran.bdf.cards.base_card.BaseCard" -> "pyNastran.bdf.cards.aero.dynamic_loads.Aero" [arrowsize=0.5,style="setlinewidth(0.5)"];
"pyNastran.bdf.cards.aero.static_loads.AEDW" [URL="#pyNastran.bdf.cards.aero.static_loads.AEDW",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Parametric Normal Wash Loading for Aerodynamics"];
"pyNastran.bdf.cards.base_card.BaseCard" -> "pyNastran.bdf.cards.aero.static_loads.AEDW" [arrowsize=0.5,style="setlinewidth(0.5)"];
"pyNastran.bdf.cards.aero.static_loads.AEFORCE" [URL="#pyNastran.bdf.cards.aero.static_loads.AEFORCE",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Parametric Force for Aerodynamics"];
"pyNastran.bdf.cards.base_card.BaseCard" -> "pyNastran.bdf.cards.aero.static_loads.AEFORCE" [arrowsize=0.5,style="setlinewidth(0.5)"];
"pyNastran.bdf.cards.aero.static_loads.AEPRESS" [URL="#pyNastran.bdf.cards.aero.static_loads.AEPRESS",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Parametric Pressure Loading for Aerodynamics"];
"pyNastran.bdf.cards.base_card.BaseCard" -> "pyNastran.bdf.cards.aero.static_loads.AEPRESS" [arrowsize=0.5,style="setlinewidth(0.5)"];
"pyNastran.bdf.cards.aero.static_loads.AEROS" [URL="#pyNastran.bdf.cards.aero.static_loads.AEROS",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Gives basic aerodynamic parameters for unsteady aerodynamics."];
"pyNastran.bdf.cards.aero.dynamic_loads.Aero" -> "pyNastran.bdf.cards.aero.static_loads.AEROS" [arrowsize=0.5,style="setlinewidth(0.5)"];
"pyNastran.bdf.cards.aero.static_loads.AESTAT" [URL="#pyNastran.bdf.cards.aero.static_loads.AESTAT",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Specifies rigid body motions to be used as trim variables in static"];
"pyNastran.bdf.cards.base_card.BaseCard" -> "pyNastran.bdf.cards.aero.static_loads.AESTAT" [arrowsize=0.5,style="setlinewidth(0.5)"];
"pyNastran.bdf.cards.aero.static_loads.CSSCHD" [URL="#pyNastran.bdf.cards.aero.static_loads.CSSCHD",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Defines a scheduled control surface deflection as a function of"];
"pyNastran.bdf.cards.aero.dynamic_loads.Aero" -> "pyNastran.bdf.cards.aero.static_loads.CSSCHD" [arrowsize=0.5,style="setlinewidth(0.5)"];
"pyNastran.bdf.cards.aero.static_loads.DIVERG" [URL="#pyNastran.bdf.cards.aero.static_loads.DIVERG",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="+--------+-----+--------+----+----+----+----+----+----+"];
"pyNastran.bdf.cards.base_card.BaseCard" -> "pyNastran.bdf.cards.aero.static_loads.DIVERG" [arrowsize=0.5,style="setlinewidth(0.5)"];
"pyNastran.bdf.cards.aero.static_loads.TRIM" [URL="#pyNastran.bdf.cards.aero.static_loads.TRIM",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Specifies constraints for aeroelastic trim variables."];
"pyNastran.bdf.cards.base_card.BaseCard" -> "pyNastran.bdf.cards.aero.static_loads.TRIM" [arrowsize=0.5,style="setlinewidth(0.5)"];
"pyNastran.bdf.cards.aero.static_loads.TRIM2" [URL="#pyNastran.bdf.cards.aero.static_loads.TRIM2",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Defines the state of the aerodynamic extra points for a trim analysis."];
"pyNastran.bdf.cards.aero.static_loads.TRIM" -> "pyNastran.bdf.cards.aero.static_loads.TRIM2" [arrowsize=0.5,style="setlinewidth(0.5)"];
"pyNastran.bdf.cards.aero.static_loads.UXVEC" [URL="#pyNastran.bdf.cards.aero.static_loads.UXVEC",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Defines the state of the aerodynamic extra points for a trim analysis."];
"pyNastran.bdf.cards.base_card.BaseCard" -> "pyNastran.bdf.cards.aero.static_loads.UXVEC" [arrowsize=0.5,style="setlinewidth(0.5)"];
"pyNastran.bdf.cards.base_card.BaseCard" [URL="../pyNastran.bdf.cards.base_card.html#pyNastran.bdf.cards.base_card.BaseCard",fillcolor=white,fontname="Vera Sans, DejaVu Sans, Liberation Sans, Arial, Helvetica, sans",fontsize=10,height=0.25,shape=box,style="setlinewidth(0.5),filled",target="_top",tooltip="Defines a series of base methods for every card class"];
}
- All trim aero cards are defined in this file. This includes:
AEROS
AESTAT
CSSCHD
DIVERG
TRIM
AEFORCE
AEPRESS
All cards are BaseCard objects.
- class pyNastran.bdf.cards.aero.static_loads.AEDW(mach: float, sym_xz: str, sym_xy: str, uxid: int, dmij: int = 0, dmiji: int = 0, comment: str = '')[source]
Bases:
BaseCardParametric Normal Wash Loading for Aerodynamics
Defines a downwash vector associated with a particular control vector of the associated aerodynamic configuration (AECONFIG). From this downwash vector, a force vector on the aerodynamic grids will be defined for use in nonlinear static aeroelastic trim.
1
2
3
4
5
6
7
AEDW
MACH
SYMXZ
SYMXY
UXID
DMIJ
DMIJI
AEDW
0.90
SYMM
ASYMM
101
ALP1
Creates an AEDW card.
- Attributes:
- machfloat
Mach number for this force. See Remark 2 (0.0 <= mach < 1.0).
- sym_xz, sym_xystr
The symmetry of this force vector. One of SYMM, ASYMM or ANTI.
- uxidint
The identification number of a UXVEC entry that defines the control parameter vector associated with this downwash vector.
- dmijint; default=0
Name of a DMI or DMIJ entry that defines the pressure per unit dynamic pressure.
- dmijiint; default=0
The name of a DMIJI entry that defines the CAERO2 interference element downwashes.
- classmethod add_card(card: BDFCard, comment: str = '')[source]
Adds a AEDW card from
BDF.add_card(...)- Parameters:
- cardBDFCard()
a BDFCard object
- commentstr; default=’’
a comment for the card
- type = 'AEPRESS'
- class pyNastran.bdf.cards.aero.static_loads.AEFORCE(mach: float, sym_xz: str, sym_xy: str, uxid: int, mesh: str, force: int = 0, dmik: int = 0, perq: str = '', comment: str = '')[source]
Bases:
BaseCardParametric Force for Aerodynamics
Defines a vector of absolute forces (not scaled by dynamic pressure) associated with a particular control vector. This force vector may be defined on either the aerodynamic mesh (ks-set) or the structural mesh (g-set). The force vector will be used in nonlinear static aeroelastic trim.
1
2
3
4
5
6
7
8
AEFORCE
MACH
SYMXZ
SYMXY
UXID
MESH
FORCE
DMIK
AEFORCE
0.90
SYMM
ASYMM
101
AERO
BETA
- Note: NX uses absolute forces, MSC is per q
Siemens and MSC: Add a flag please.
Creates an AEFORCE card.
- Attributes:
- machfloat
Mach number for this force. See Remark 2 (0.0 <= mach < 1.0).
- sym_xz, sym_xystr
The symmetry of this force vector. One of SYMM, ASYMM or ANTI.
- uxidint
The identification number of a UXVEC entry that defines the control parameter vector associated with this downwash vector.
- meshstr
AERO or STRUCT that declares whether the force vector is defined on the aerodynamic ks-set mesh or the structural g-set mesh.
- forceint
ID of a FORCE/MOMENT set that defines the vector. Required if mesh=’STRUCT’.
- dmik: int
Name of a DMIK entry that defines the aerodynamic force vector. Required if mesh=’AERO’.
- classmethod add_card(card: BDFCard, comment: str = '')[source]
Adds a AEFORCE card from
BDF.add_card(...)- Parameters:
- cardBDFCard()
a BDFCard object
- commentstr; default=’’
a comment for the card
- type = 'AEFORCE'
- class pyNastran.bdf.cards.aero.static_loads.AEPRESS(mach: float, sym_xz: str, sym_xy: str, uxid: int, dmij: int = 0, dmiji: int = 0, comment: str = '')[source]
Bases:
BaseCardParametric Pressure Loading for Aerodynamics
Defines a vector of pressure/unit dynamic pressure associated with a particular control vector. From this pressure vector, a force vector on the aerodynamic grids will be defined for use in nonlinear static aeroelastic trim.
1
2
3
4
5
6
7
AEPRESS
MACH
SYMXZ
SYMXY
UXID
DMIJ
DMIJI
AEPRESS
0.90
SYMM
ASYMM
101
ALP1
Creates an AEPRESS card.
- Attributes:
- machfloat
Mach number for this force. See Remark 2 (0.0 <= mach < 1.0).
- sym_xz, sym_xystr
The symmetry of this force vector. One of SYMM, ASYMM or ANTI.
- uxidint
The identification number of a UXVEC entry that defines the control parameter vector associated with this downwash vector.
- dmijint; default=0
Name of a DMI or DMIJ entry that defines the pressure per unit dynamic pressure.
- dmijiint; default=0
The name of a DMIJI entry that defines the CAERO2 interference element downwashes.
- classmethod add_card(card: BDFCard, comment: str = '')[source]
Adds a AEPRESS card from
BDF.add_card(...)- Parameters:
- cardBDFCard()
a BDFCard object
- commentstr; default=’’
a comment for the card
- type = 'AEPRESS'
- class pyNastran.bdf.cards.aero.static_loads.AEROS(cref: float, bref: float, sref: float, acsid: int = 0, rcsid: int = 0, sym_xz: int = 0, sym_xy: int = 0, comment: str = '')[source]
Bases:
AeroGives basic aerodynamic parameters for unsteady aerodynamics.
1
2
3
4
5
6
7
8
AEROS
ACSID
RCSID
REFC
REFB
REFS
SYMXZ
SYMXY
AEROS
10
20
1
Creates an AEROS card
- Parameters:
- creffloat
the aerodynamic chord
- breffloat
the wing span for a half model, this should be the full span for a full model, this should be the full span
- sreffloat
the wing area for a half model, this should be the half area for a full model, this should be the full area
- acsidint; default=0
aerodyanmic coordinate system defines the direction of the wind
- rcsidint; default=0
coordinate system for rigid body motions
- sym_xzint; default=0
xz symmetry flag (+1=symmetry; -1=antisymmetric)
- sym_xyint; default=0
xy symmetry flag (+1=symmetry; -1=antisymmetric)
- commentstr; default=’’
a comment for the card
- _properties = ['is_anti_symmetric_xy', 'is_anti_symmetric_xz', 'is_symmetric_xy', 'is_symmetric_xz']
- acsid
Aerodynamic coordinate system identification.
- classmethod add_card(card: BDFCard, comment: str = '')[source]
Adds an AEROS card from
BDF.add_card(...)- Parameters:
- cardBDFCard()
a BDFCard object
- commentstr; default=’’
a comment for the card
- bref
Reference span
- cref
Reference chord length
- cross_reference(model: BDF) None[source]
Cross reference aerodynamic coordinate system.
- Parameters:
- modelBDF
The BDF object.
- raw_fields()[source]
Gets the fields in their unmodified form
- Returns:
- fieldslist[varies]
the fields that define the card
- rcsid
Reference coordinate system identification for rigid body motions.
- repr_fields()[source]
Gets the fields in their simplified form
- Returns:
- fieldslist[varies]
the fields that define the card
- safe_cross_reference(model: BDF, xref_errors)[source]
Safe cross reference aerodynamic coordinate system.
- Parameters:
- modelBDF
The BDF object.
- sref
Reference wing area
- sym_xy
The symmetry key for the aero coordinate x-y plane can be used to simulate ground effects. (Integer = +1 for antisymmetry, 0 for no symmetry, and -1 for symmetry; Default = 0)
- sym_xz
Symmetry key for the aero coordinate x-z plane. See Remark 6. (Integer = +1 for symmetry, 0 for no symmetry, and -1 for antisymmetry; Default = 0)
- type = 'AEROS'
- class pyNastran.bdf.cards.aero.static_loads.AESTAT(aestat_id: int, label: str, comment: str = '')[source]
Bases:
BaseCardSpecifies rigid body motions to be used as trim variables in static aeroelasticity.
1
2
3
AESTAT
ID
LABEL
AESTAT
5001
ANGLEA
Creates an AESTAT card, which is a variable to be used in a TRIM analysis
- Parameters:
- aestat_idint
unique id
- labelstr
name for the id
- commentstr; default=’’
a comment for the card
- classmethod add_card(card: BDFCard, comment: str = '')[source]
Adds an AESTAT card from
BDF.add_card(...)- Parameters:
- cardBDFCard()
a BDFCard object
- commentstr; default=’’
a comment for the card
- raw_fields()[source]
Gets the fields in their unmodified form
- Returns:
- fieldslist[int/str]
the fields that define the card
- type = 'AESTAT'
- class pyNastran.bdf.cards.aero.static_loads.CSSCHD(sid: int, aesurf_id: int, lschd: int, lalpha=None, lmach=None, comment: str = '')[source]
Bases:
AeroDefines a scheduled control surface deflection as a function of Mach number and angle of attack.
1
2
3
4
5
6
CSSCHD
SlD
AESID
LALPHA
LMACH
LSCHD
CSSCHD
5
50
12
15
25
Creates an CSSCHD card, which defines a specified control surface deflection as a function of Mach and alpha (used in SOL 144/146).
- Parameters:
- sidint
the unique id
- aesurf_idint
the control surface (AESURF) id
- lalphaint; default=None
the angle of attack profile (AEFACT) id
- lmachint; default=None
the mach profile (AEFACT) id
- lschdint; default=None
the control surface deflection profile (AEFACT) id
- commentstr; default=’’
a comment for the card
- _properties = ['is_anti_symmetric_xy', 'is_anti_symmetric_xz', 'is_symmetric_xy', 'is_symmetric_xz']
- classmethod add_card(card: BDFCard, comment: str = '')[source]
Adds a CSSCHD card from
BDF.add_card(...)- Parameters:
- cardBDFCard()
a BDFCard object
- commentstr; default=’’
a comment for the card
- cross_reference(model: BDF) None[source]
Cross links the card so referenced cards can be extracted directly
- Parameters:
- modelBDF()
the BDF object
- raw_fields() list[source]
Gets the fields in their unmodified form
- Returns:
- fieldslist[varies]
the fields that define the card
- type = 'CSSCHD'
- class pyNastran.bdf.cards.aero.static_loads.DIVERG(sid: int, nroots: int, machs: list[float], comment: str = '')[source]
Bases:
BaseCard1
2
3
4
5
6
7
8
9
DIVERG
SID
NROOT
M1
M2
M3
M4
M5
M6
M7
etc.
- Attributes:
- sidint
The name.
- nrootsint
the number of roots
- machslist[float, …, float]
list of Mach numbers
Creates an DIVERG card, which is used in divergence analysis (SOL 144).
- Parameters:
- sidint
The name
- nrootsint
the number of roots
- machslist[float, …, float]
list of Mach numbers
- commentstr; default=’’
a comment for the card
- classmethod add_card(card: BDFCard, comment: str = '')[source]
Adds a DIVERG card from
BDF.add_card(...)- Parameters:
- cardBDFCard()
a BDFCard object
- commentstr; default=’’
a comment for the card
- type = 'DIVERG'
- class pyNastran.bdf.cards.aero.static_loads.TRIM(sid: int, mach: float, q: float, labels: list[str], uxs: list[float], aeqr: float = 1.0, comment: str = '')[source]
Bases:
BaseCardSpecifies constraints for aeroelastic trim variables.
1
2
3
4
5
6
7
8
9
TRIM
ID
MACH
Q
LABEL1
UX1
LABEL2
UX2
IS_RIGID
LABEL3
UX3
LABEL4
UX4
LABEL5
UX5
LABEL6
UX6
Creates a TRIM card for a static aero (144) analysis.
- Parameters:
- sidint
the trim id; referenced by the Case Control TRIM field
- machfloat
the mach number
- qfloat
dynamic pressure
- labelslist[str]
names of the fixed variables
- uxslist[float]
values corresponding to labels
- aeqrfloat
0.0 : rigid trim analysis 1.0 : elastic trim analysis (default)
- commentstr; default=’’
a comment for the card
- classmethod add_card(card: BDFCard, comment: str = '')[source]
Adds a TRIM card from
BDF.add_card(...)- Parameters:
- cardBDFCard()
a BDFCard object
- commentstr; default=’’
a comment for the card
- aeqr
Flag to request a rigid trim analysis (Real > 0.0 and < 1.0; Default = 1.0. A value of 0.0 provides a rigid trim analysis.
- labels
The label identifying aerodynamic trim variables defined on an AESTAT or AESURF entry.
- mach
Mach number. (Real > 0.0 and != 1.0)
- q
Dynamic pressure. (Real > 0.0)
- raw_fields()[source]
Gets the fields in their unmodified form
- Returns:
- fieldslist[varies]
the fields that define the card
- repr_fields()[source]
Gets the fields in their simplified form
- Returns:
- fieldslist[varies]
the fields that define the card
- sid
Trim set identification number. (Integer > 0)
- type = 'TRIM'
- uxs
The magnitude of the aerodynamic extra point degree-of-freedom. (Real)
- verify_trim(suport: list[SUPORT], suport1: SUPORT1 | None, aestats: dict[int, AESTAT], aeparms: dict[int, AEPARM], aelinks: dict[int, list[AELINK]], aesurf: dict[int, AESURF], xref=True)[source]
Magic function that makes TRIM cards not frustrating.
Warning
This probably gets AELINKs/AEPARMs/AESURFSs wrong.
The TRIM equality ndelta = (naestat + naesurf + naeparm)
(ntrim + ntrim_aesurf? + naelink + nsuport_dofs + nsuport1_dofs)
ndelta = 0 ntrim_aesurf is not included, but it might exist…
Steps to a TRIM analysis 1. Define the number of independent control surfaces (naesurf)
Make an AESURF for each. Dual link the AESURFs if you can to avoid needing an AELINK (e.g., +roll is left aileron down, right aileron up). Horizontal Tail : name it DPITCH Vertical Tail : name it DYAW Aileron : name it DROLL
Create AELINKs if necessary.
Add the AESTAT variables. Include one for each DOF the aircraft can move in the frame of the model (e.g., half/full model).
- Half model (2.5g pullup, abrupt pitch):
2d pitch/plunge, 1 control : URDD3, URDD5, PITCH, ANGLEA
- Full model (2.5g pullup, abrupt pitch):
3d pitch/plunge, 3 control : URDD3, URDD5, PITCH, ANGLEA, YAW (???)
Add the TRIM card to lock the variables that could theoretically move in the plane of the analysis that are known.
- Half model:
- 2.5g pulluplock URDD3=2.5, URDD5=0, PITCH=0
solve for ANGLEA, DPITCH use DPITCH
- abrupt pitchlock URDD3=1.0, URDD5=0, ANGLEA=5
solve for PITCH, DPITCH use DPITCH
- Full model:
- 2.5g pulluplock URDD3=2.5, URDD4=0, URDD5=0, PITCH=0, YAW=0,
lock SIDES=0, ROLL=0 solve for ANGLEA, DPITCH use DPITCH, DYAW, DROLL TODO: probably wrong
- 30 degree yawlock URDD3=1.0, URDD4=0, ANGLEA=5, PITCH=0, YAW=30,
lock DPITCH=0, ROLL=0 solve for SIDES, URDD5 use DPITCH, DYAW, DROLL TODO: probably wrong
Note that we could have simplified our full model AESTAT/TRIM cards (they can be the same as for a half model), but we’d like to be able to do multiple load cases in the same deck.
Add some SUPORT/SUPORT1 DOFs to ignore non-relevant motion in certain DOFs (e.g., z-motion). Add enough to satisfy the TRIM equality.
- Doesn’t Consider
AEPARM
AESURFS
Default AESTATs
ANGLEA | ur (R2) | Angle of Attack YAW | ur (R3) | Yaw Rate SIDES | ur (R3) | Angle of Sideslip
ROLL | ůr (R1) | Roll Rate PITCH | ůr (R2) | Pitch Rate
URDD1 | ür (T1) | Longitudinal URDD2 | ür (T2) | Lateral URDD3 | ür (T3) | Vertical URDD4 | ür (R1) | Roll URDD5 | ür (R2) | Pitch URDD6 | ür (R3) | Yaw
- class pyNastran.bdf.cards.aero.static_loads.TRIM2(sid, mach, q, labels, uxs, aeqr=1.0, comment: str = '')[source]
Bases:
TRIMDefines the state of the aerodynamic extra points for a trim analysis. All undefined extra points will be set to zero.
1
2
3
4
5
6
7
8
9
TRIM2
ID
MACH
Q
IS_RIGID
LABEL1
UX1
LABEL2
UX2
…
Creates a TRIM card for a static aero (144) analysis.
- Parameters:
- sidint
the trim id; referenced by the Case Control TRIM field
- machfloat
the mach number
- qfloat
dynamic pressure
- labelslist[str]
names of the fixed variables
- uxslist[float]
values corresponding to labels
- aeqrfloat
0.0 : rigid trim analysis 1.0 : elastic trim analysis (default)
- commentstr; default=’’
a comment for the card
- classmethod add_card(card: BDFCard, comment: str = '')[source]
Adds a TRIM2 card from
BDF.add_card(...)- Parameters:
- cardBDFCard()
a BDFCard object
- commentstr; default=’’
a comment for the card
- raw_fields()[source]
Gets the fields in their unmodified form
- Returns:
- fieldslist[varies]
the fields that define the card
- repr_fields()[source]
Gets the fields in their simplified form
- Returns:
- fieldslist[varies]
the fields that define the card
- type = 'TRIM2'
- class pyNastran.bdf.cards.aero.static_loads.UXVEC(sid: int, labels: list[str], uxs: list[float], comment: str = '')[source]
Bases:
BaseCardDefines the state of the aerodynamic extra points for a trim analysis. All undefined extra points will be set to zero.
1
2
3
4
5
6
7
8
9
UXVEC
ID
LABEL1
UX1
LABEL2
UX2
…
- classmethod add_card(card: BDFCard, comment: str = '')[source]
Adds a UXVEC card from
BDF.add_card(...)- Parameters:
- cardBDFCard()
a BDFCard object
- commentstr; default=’’
a comment for the card
- raw_fields()[source]
Gets the fields in their unmodified form
- Returns:
- fieldslist[varies]
the fields that define the card
- type = 'UXVEC'
- pyNastran.bdf.cards.aero.static_loads.check_aestats_suport_dofs(suport_dofs: set[str], aestat_labels: list[str]) None[source]