Each plugin returns an analysis result containing the MS = allowable / applied -1.
Constructors
|
Parameters |
Description |
|---|---|
|
Use static None() method instead. It is included here so that AnalysisResult can be a field in a class with a default constructor. |
|
|
TPluginEnum pluginId |
Creates a concept-based result with no margin of safety. |
|
TPluginEnum pluginId, Margin ms |
Creates a concept-based result. |
|
TPluginEnum pluginId, TObjectEnum |
Creates an object-based result with no margin of safety. |
|
TPluginEnum pluginId, TObjectEnum objectId, Margin ms |
Creates an object-based result. |
Static Methods
|
Method |
Parameters |
Return Type |
Description |
|---|---|---|---|
|
None |
AnalysisResult |
Returns a null result. No reporting or tracking will be performed.. |
Example
// Create a new (concept-based) result via plugin ID and MS. // PluginId is a user-defined enumeration. auto result = AnalysisResult(PluginId::Buckling, MS);
Referenced by:ResultList
|
Field |
Type |
|---|---|
|
ElementId |
int |
|
ComponentId |
int |
|
DiscreteId |
|
|
Length |
double |
|
M1A |
double |
|
M2A |
double |
|
M1B |
double |
|
M2B |
double |
|
V1 |
double |
|
V2 |
double |
|
Axial |
double |
|
Torque |
double |
Referenced by:BeamElementForces
|
Method |
Parameters |
Return Type |
Description |
|---|---|---|---|
|
operator() |
int i |
Returns the force data in a given beam. |
|
|
Count |
int |
Referenced by:PanelBeamState
|
Method |
Parameters |
Return Type |
Description |
|---|---|---|---|
|
operator() |
BeamLoad beamLoad |
double |
Returns a component of beam force. |
Referenced by:PanelBeamState
|
Method |
Parameters |
Return Type |
Description |
|---|---|---|---|
|
operator() |
BeamStrain beamStrain |
double |
Returns a component of beam strain. |
Referenced by:PanelBeamState
|
Field |
Type |
Description |
|---|---|---|
|
ElementId |
int |
Element ID of CBUSH (if applicable) |
|
Angle |
double |
|
|
BearingForce |
double |
|
|
BypassLoads |
double[3] |
Nx, Ny, Nxy bypass loads |
|
ShearLoad |
double |
|
|
BushForce |
double[6] |
Forces and moments rotated to shell component coordinates |
|
BushForceRaw |
double[6] |
Forces and moments directly as imported from FEA forces |
Referenced by:ObjectHoles
Contains information on the materials of the layers bolted together.
|
Field |
Type |
Description |
|---|---|---|
|
Thickness |
double |
Clamped layer thickness |
|
El |
double |
Longitudinal stiffness |
|
Et |
double |
Transverse stiffness |
|
G |
double |
Shear modulus |
|
IsComposite |
int |
Whether the clamped layer material is composite |
Referenced by:ObjectHoles
|
Field |
Type |
Description |
|
Points |
Note that array is static size and must be looped over with the PointCount property |
|
|
Temperature |
double |
|
|
PointCount |
int |
Referenced by: TemperatureCurveType
Each detail definition consists of a name and Units.
A DetailDefinition is constructed as follows:
|
Parameters |
Description |
|---|---|
|
string name, Units units |
Creates a new DetailDefinition with the given name and units. |
Referenced by:DetailDefinitionList and DetailList.
Collection of DetailDefinitions. Added to the plugin configuration in ConfigurationBase. See also User Defined Analysis Details.
Adding duplicate detail definitions (same name and units) to a plugin will only preserve the first occurrence.
Constructors
|
Parameters |
Description |
|---|---|
|
Create an empty DetailDefinitionList. |
|
|
initializer_list<DetailDefinition> details |
Construct using an existing DetailDefinitionList. |
|
intializer_list<DetailDefinitionList> detailLists |
Construct using a list of DetailDefinitionLists. |
Methods
|
Method |
Parameters |
Return Type |
Description |
|---|---|---|---|
|
Add |
DetailDefinitionList details |
void |
Add an existing DetailDefinitionList. |
|
Add |
DetailDefinition detail |
void |
Add a single DetailDefinition |
Contains a list of analysis details values.
|
Method |
Parameters |
Return Type |
Description |
|---|---|---|---|
|
Add |
DetailDefinition detailDefinition, TValue value |
void |
Method to add a value for the concept-based detail defined by detailDefinition. TValue can be double, Margin, float, int, bool, const char*, or string. |
|
Add |
DetailDefinition detailDefinition, ObjectId objectId, TValue value |
void |
Method to add a value for the object-based detail defined by detailDefinition. TValue can be double, Margin, float, int, bool, const char*, or string. |
|
Add |
DetailDefinition detailDefinition, ObjectId objectId |
void |
Special method to add an ObjectId as the detail value. |
|
Add |
DetailList details |
void |
Adds the contents of another DetailList to the current one. |
Referenced by:ResultList
|
Field |
Type |
Description |
|---|---|---|
|
Ftu |
double |
Tension |
|
Fcu |
double |
Compression |
|
Fsu |
double |
Shear |
|
Ffu |
double |
Flexural |
Referenced by:MaterialProperty
|
Field |
Type |
Description |
|---|---|---|
|
Ftu |
double |
Tension |
|
Fsuw |
double |
Shear, transverse |
|
Fsul |
double |
Shear, longitudinal |
|
Fcus |
double |
Compression, stabilized |
|
Fcub |
double |
Compression, bare |
|
Fcuc |
double |
Compression, crush |
Referenced by:MaterialProperty
Units in psi.
|
Field |
Type |
Description |
|---|---|---|
|
FtuL |
double |
Tension, ultimate, longitudinal |
|
FtyL |
double |
Tension, yield, longitudinal |
|
FcyL |
double |
Compression, ultimate, longitudinal |
|
FtuLT |
double |
Tension, ultimate, long transverse |
|
FtyLT |
double |
Tension, yield, long transverse |
|
FcyLT |
double |
Compression, yield, long transverse |
|
Fsu |
double |
In-plane shear, ultimate |
|
Fbru15 |
double |
Bearing, ultimate, e/D = 1.5 |
|
Fbry15 |
double |
Bearing, yield, e/D = 1.5 |
|
Fbru20 |
double |
Bearing, ultimate, e/D = 2.0 |
|
Fbry20 |
double |
Bearing, yield, e/D = 2.0 |
|
FtFatigue |
double |
Tension, fatigue |
|
FcFatigue |
double |
Compression |
Referenced by:MaterialProperty
Allowables include all correction factors. If the object is a hybrid laminate, the laminate allowables will be stored in the OML material.
|
Field |
Type |
Description |
|---|---|---|
|
Percent0 |
double[LamRotate_LENGTH] |
%0 plies with the material coordinate system rotated according to LaminateRotation. |
|
Percent45 |
double[LamRotate_LENGTH] |
%45 plies with the material coordinate system rotated according to LaminateRotation. |
|
Percent90 |
double[LamRotate_LENGTH] |
%90 plies with the material coordinate system rotated according to LaminateRotation. |
|
AML |
double[LamRotate_LENGTH] |
%0 plies with the material coordinate system rotated according to LaminateRotation. |
|
etuLamPristine |
double[LamRotate_LENGTH] |
|
|
etuLamTAI |
double[LamRotate_LENGTH] |
|
|
etuLamOHT |
double[LamRotate_LENGTH] |
|
|
etuLamFHT |
double[LamRotate_LENGTH] |
|
|
ecuLamPristine |
double[LamRotate_LENGTH] |
|
|
ecuLamCAI |
double[LamRotate_LENGTH] |
|
|
ecuLamOHC |
double[LamRotate_LENGTH] |
|
|
ecuLamFHC |
double[LamRotate_LENGTH] |
|
|
ecuLamBVID |
double[LamRotate_LENGTH] |
|
|
esuLamPristine |
double[LamRotate_LENGTH] |
|
|
esuLamSAI |
double[LamRotate_LENGTH] |
|
|
FbruLam |
double[LamRotate_LENGTH] |
Referenced by:MaterialProperty
Encapsulates a margin of safety. Contains methods to handle margins of safety without true values (no value passed, no value failed). Example: geometry checks, tensile load in a buckling method, etc.
Constructors
|
Parameters |
Description |
|---|---|
|
Default margin of safety - no value, passed. When returning a minimum margin from a series of margin, use this as the starting value. |
|
|
double rawMS |
Traditional margin of safety = allowable/applied - 1. |
Static Methods
|
Method |
Parameters |
Return Type |
Description |
|---|---|---|---|
|
FailedDataReqd |
Margin |
Method fails due to missing required data. |
|
|
FailedGeometry |
Margin |
Geometry check failure. |
|
|
FailedLow |
Margin |
Arbitrary failure. |
|
|
Max |
Margin& ms1, Margin& ms2 |
Margin |
Returns the max margin. |
|
Min |
Margin& ms1, Margin& ms2 |
Margin |
Return the min margin. |
|
PassedGeometry |
Margin |
Passes a geometry check. |
|
|
PassedHigh |
Margin |
Arbitrary pass. |
|
|
PassedNegativeLoad |
Margin |
Passes due to negative load. |
|
|
PassedPositiveLoad |
Margin |
Passes due to positive load. |
|
|
PassedSkipped |
Margin |
Analysis skipped. |
Methods
|
Method |
Parameters |
Return Type |
Description |
|---|---|---|---|
|
ApplyFactor |
double k |
Margin |
Applies a scalar factor 'k' to the (MS + 1) value. |
|
HasValue |
bool |
Returns true if the margin has a numerical value instead of a pass or fail flag. |
|
|
NoValueFailed |
bool |
Returns true if the margin is a failure flag. Example: Missing data or geometry check failed. |
|
|
NoValuePassed |
bool |
Returns true if the margin is a pass flag. Example: Positive loads for buckling or geometry check passed. |
|
|
Value |
double |
Returns the raw margin of safety value. |
|
|
operator< |
Margin& lhs, Margin& rhs |
Margin |
Less than operator. |
|
operator<= |
Margin& lhs, Margin& rhs |
Margin |
Less than or equal to operator. |
|
operator> |
Margin& lhs, Margin& rhs |
Margin |
Greater than operator. |
|
operator>= |
Margin& lhs, Margin& rhs |
Margin |
Greater than or equal to operator. |
Example
Basic Value
double allowable = 100.0; double applied = 50.0; Margin ms = Margin(allowable / applied - 1.0);
Geometry Check
Margin ms;
if (ratio > 0.5)
ms = Margin::PassedGeometry();
else
ms = Margin::FailedGeometry();
Buckling Check
Margin ms;
if (P < 0)
ms = Margin(Pcr / abs(P) - 1.0);
else
ms = Margin::PassedPositiveLoad();
|
Field |
Type |
|---|---|
|
Id |
int |
|
MaterialType |
|
|
Name |
char[80] |
|
IsEffectiveLaminate |
int |
|
Temperature |
double |
|
Density |
double |
|
Stiffness |
|
|
FoamAllowable |
|
|
HoneycombAllowable |
|
|
IsotropicAllowable |
|
|
LaminateAllowable |
|
|
OrthotropicAllowable |
|
|
LaminateAllowableCurves |
Referenced by:Object
|
Field |
Type |
Description |
|---|---|---|
|
Et1 |
double |
|
|
Et2 |
double |
|
|
Et3 |
double |
|
|
nu12t |
double |
|
|
Ec1 |
double |
|
|
Ec2 |
double |
|
|
Ec3 |
double |
|
|
nu12c |
double |
|
|
G12 |
double |
|
|
G13 |
double |
|
|
G23 |
double |
|
|
RamF07 |
double |
Ramberg-Osgood F0.7 reference stress |
|
RamExp |
double |
Ramberg-Osgood |
|
Alpha1 |
double |
Thermal expansion (in/in/F) |
|
Alpha2 |
double |
Thermal expansion (in/in/F) |
Referenced by:MaterialProperty
An object is a portion of the panel or beam - flange, web, skin span etc. The object stiffnesses and resulting stresses and strains are computed from strength loads.
|
Field |
Type |
|
|---|---|---|
|
Id |
int (ObjectId) |
|
|
Name |
char[40] |
|
|
Exists |
int |
If true, the object is populated. Necessary since the object array in PanelBeamState is sparse. |
|
PlyCount |
int |
Number of plies in the Plies array. |
|
Plies |
Pointer to an array of plies. |
|
|
MaterialCount |
int |
|
|
Materials |
Pointer to an array of material properties. These materials correspond to the plies of the object. For cases of through-thickness temperature gradients, material properties from the ply with the temperature closest to the average object temperature are used. |
|
|
ObjectHoles |
||
|
Geometry |
||
|
Stiffness |
||
|
Force |
Unit force and moment |
|
|
Strain |
Strain and curvature |
|
|
Pressure |
double |
Referenced by:PanelBeamState
|
Field |
Type |
Description |
|---|---|---|
|
Thickness |
double |
|
|
WidthForce |
double |
Object width for force summation |
|
WidthCrippling |
double |
Object width for crippling stress lookup |
|
LengthBuckling |
double |
Object length for local buckling |
|
ElementArea |
double |
Currently only set for skin objects; for DSM = element area between stringers; = 0 for all other objects |
|
ElementStiffnessAngle |
double |
Currently only set for skin objects; for DSM = average angle between skin material direction and stringer direction; = 0 for all other objects |
|
IsForce |
bool |
|
|
IsCrippling |
bool |
|
|
IsBuckling |
bool |
|
|
NumberEdgesFree |
int |
Referenced by:Object
|
Field |
Type |
|---|---|
|
HasHoles |
bool |
|
Diameter |
double |
|
CounterSinkDepth |
double |
|
Pitch |
double |
|
Rows |
int |
|
BoltCount |
int |
|
BoltLoads |
|
|
ClampedLayerCount |
int |
|
ClampedLayers |
ClampedLayer[5] |
Referenced by:Object
Contains object IDs for objects within the beam/panel. These IDs can be used to quickly access objects from the PanelBeamState object array (without looping). See Family, ObjectId.
-
If the object is not applicable for the concept, the object ID will be set to Object_NULL .
-
The unstiffened panel family is not supported.
-
The web objects of the grid stiffened family are not included.
-
Bonded combo objects are not considered skin or stiffener objects.
-
For smeared panels the left skin ID and right skin ID are the same.
|
Field |
Type |
Description |
|---|---|---|
|
SkinLeftId |
Object ID of the left skin. |
|
|
SkinRightId |
Object ID of the right skin. |
|
|
StiffenerIds |
ObjectId[3] |
Object IDs of the stiffener objects. Bonded combo objects are not included. |
|
StiffenerIdCount |
int |
Actual number of stiffener IDs insider the above array. |
|
FootId |
Object ID of the foot. |
|
|
WebId |
Object ID of the web. |
|
|
CapId |
Object ID of the cap. |
|
|
MidId |
Object ID of the mid object. |
|
|
WebFootId |
Object ID of the web foot. |
|
|
WebCapId |
Object ID of the web cap. |
|
|
ShearClipFootId |
Object ID of the shear clip foot. |
|
|
ShearClipWebId |
Object ID of the shear clip web. |
Referenced by:PanelBeamState
|
Field |
Type |
Description |
|---|---|---|
|
ABD |
double[6][6] |
|
|
ABDInv |
double[6][6] |
|
|
E1 |
double |
Effective modulus using membrane terms (inverse A11) |
|
E2 |
double |
|
|
G12 |
double |
|
|
nu12 |
double |
|
|
nu21 |
double |
|
|
Ef1 |
double |
Effective modulus using flexural terms (inverse D11) |
|
Ef2 |
double |
|
|
Gf12 |
double |
|
|
nuf12 |
double |
|
|
nuf21 |
double |
Referenced by:Object
Allowables include all correction factors except those defined in tabular format in the Correction Factors form.
|
Field |
Type |
Description |
|---|---|---|
|
Ftu1 |
double |
|
|
Ftu2 |
double |
|
|
Fcu1 |
double |
|
|
Fcu2 |
double |
|
|
Fsu12 |
double |
|
|
Fsu13 |
double |
|
|
Fsu23 |
double |
|
|
Ftu3 |
double |
|
|
etu1 |
double |
|
|
etu2 |
double |
|
|
ecu1 |
double |
|
|
ecu2 |
double |
|
|
esu12 |
double |
|
|
etuOHT |
double |
|
|
ecuOHC |
double |
|
|
p_TLt |
double |
Puck inclination parameter |
|
p_TLc |
double |
Puck inclination parameter |
|
p_TTt |
double |
Puck inclination parameter |
|
p_TTc |
double |
Puck inclination parameter |
|
D0t |
double |
Bolted joint, tension characteristic distance |
|
D0c |
double |
Bolted joint, compression characteristic distance |
|
CD |
double |
Bonded joint, characteristic distance (in) |
|
BendingFactorMax |
double |
Max bending factor |
Referenced by:MaterialProperty
Stores the configuration of the plugin package.
|
Method |
Parameters |
Return Type |
Description |
|---|---|---|---|
|
Name |
std::string |
PackageConfiguration& |
Sets the package name. |
|
Version |
std::string |
PackageConfiguration& |
Sets the package version. Not associated with the HyperX version. |
|
GUID |
std::string |
PackageConfiguration& |
Sets the package GUID. |
|
Description |
std::string |
PackageConfiguration& |
Sets the package description. Displayed on the plugin loader form. |
|
QuickHelp |
PackageConfiguration& |
Sets the package quick help. Displayed on the Failure Mode form. |
|
|
Force |
PackageConfiguration& |
Forces will be converted to this unit before being passed to the plugin. |
|
|
Length |
PackageConfiguration& |
Lengths will be converted to this unit before being passed to the plugin. |
|
|
Mass |
PackageConfiguration& |
Masses will be converted to this unit before being passed to the plugin. |
|
|
Temperature |
PackageConfiguration& |
Temperatures will be converted to this unit before being passed to the plugin. |
|
|
AddPlugin |
PackageConfiguration& |
Adds a plugin to the configuration. Each single plugin is associated with a single margin reported in HyperX. |
|
|
AddUserConstant |
PackageConfiguration& |
Adds a user constant to the configuration. |
Referenced by: ConfigurationBase
|
Field |
Type |
Description |
|---|---|---|
|
IsPanelCurved |
bool |
|
|
IsFullCylinder |
bool |
|
|
CurvatureDirection |
||
|
BucklingBcXPlus |
||
|
BucklingBcXMinus |
||
|
BucklingBcYPlus |
||
|
BucklingBcYMinus |
||
|
SpanX |
double |
|
|
SpanY |
double |
|
|
SpanXEff |
double |
Effective column length (x span) based on the X boundary conditions. |
|
RadiusCurvature |
double |
|
|
BucklingKnockdown |
double |
|
|
SpacingX |
double |
Stringer spacing (pitch) for the stiffeners in the x-direction (uniaxial, hat, etc.). |
|
SpacingY |
double |
Stringer spacing (pitch) for the stiffeners in the y-direction (orthogrid, PRSEUS, etc.). |
|
StiffenerType |
Type of stiffener |
|
|
SpacingSpans |
Width of spacing span objects relative to the left and right skin component. |
|
|
Height |
double |
Total height. |
|
Angle |
double |
Angle variable for grid family concepts. |
|
PanelCenterOffset |
double |
Unstiffened family only. Distance from the HS analysis reference plane (top face midplane) to the panel centerline. Used to shift panel moment loads. |
Referenced by:PanelBeamState
|
Field |
Type |
Description |
|---|---|---|
|
GroupId |
int |
|
|
ComponentId |
int |
|
|
CategoryId |
||
|
FamilyId |
||
|
ConceptId |
int |
|
|
DSMTechnique |
int |
|
|
LoadCaseName |
string |
|
|
MechCond |
||
|
ThermalCond |
||
|
IsFatigueLoadCase |
int |
|
|
ElementId |
int |
Element ID associated with the strength loads. Not applicable for n-sigma FEA load extraction. |
|
TensComp |
Deprecated. Do not use. |
|
|
MaterialMode |
Indicates whether the panel/beam is metallic, composite, or both. |
|
|
IsFirstComponentCall |
int |
Indicates whether this is the first time the plugin is called for a component, so you can write out some data directly from the plugin one time. |
|
IsFirstElementCall |
int |
Indicates whether this is the first time the plugin is called for an element. |
|
IsNonFea |
int |
|
|
IsCompressionLoop |
int |
|
|
IsLoadCaseCheckout |
int |
|
|
IsLastCandidate |
int |
|
|
PanelABD |
double[TC_LENGTH][6][6] |
ABD matrices (tension, compression, average). Reference plane is not at neutral axis. |
|
PanelABDInv |
double[TC_LENGTH][6][6] |
Inverted ABD matrices. Reference plane is not at neutral axis. Multiple values for tension, compression, and average stiffness properties. |
|
PanelDSym |
double[TC_LENGTH][6][6] |
Bending, D, matrices with the reference plane shifted to (approximate) neutral axis. These D terms are used for panel buckling. Multiple values for tension, compression, and average stiffness properties. |
|
StiffenerProperty |
Panel stiffener properties and beam properties. Multiple values for tension, compression, and average stiffness properties. |
|
|
PanelBeamProperty |
||
|
ObjectIds |
Contains object IDs for objects within the beam/panel. These IDs can be used to quickly access objects from the PanelBeamState object array (without looping). |
|
|
Objects |
Contains object data (flanges, webs, skin spans). |
|
|
PanelForceStrength |
||
|
PanelForceBuckling |
||
|
PanelStrainStrength |
||
|
ShellElementForcesFactored |
Contains force data for each element in a given zone, including load factors. |
|
|
ShellElementForces |
Contains force data for each element in a given zone, unfactored. |
|
|
BeamForceStrength |
Beam components only. |
|
|
BeamForceBuckling |
Beam components only. |
|
|
BeamStrainStrength |
Beam components only. |
|
|
BeamElementForcesFactored |
Contains force data for each element in a given beam, including load factors. |
|
|
BeamElementForces |
Contains force data for each element in a given beam, unfactored. |
|
|
Pressure |
double |
|
|
PluginPath |
string |
Contains the path to the plugin DLL. |
|
TempPath |
string |
Contains the path to the temp folder for the current project. |
|
DatabasePath |
string |
Contains the path to the database. |
|
UserConstants |
||
|
PluginFlags |
Referenced by:PluginPackageBase
|
Method |
Parameters |
Return Type |
Description |
|---|---|---|---|
|
operator() |
PanelLoad panelLoad |
double |
Returns a component of panel force. |
Referenced by:PanelBeamState
|
Method |
Parameters |
Return Type |
Description |
|---|---|---|---|
|
operator() |
PanelStrain panelStrain |
double |
Returns a component of panel strain. |
Referenced by:PanelBeamState
|
Method |
Parameters |
Return Type |
Description |
|---|---|---|---|
|
Name |
std::string |
Plugin& |
Plugin name. Displayed in interface and used in stress and analysis reports |
|
Id |
TPluginIdEnum |
Plugin& |
The ID of the plugin within the package. Each plugin must be assigned a unique ID greater than 0. Enums are recommended, and should be defined as 'enum : int' or 'enum class : int' |
|
Version |
std::string |
Plugin& |
Not related to the HyperX version. |
|
GUID |
std::string |
Plugin& |
The (g)lobally (u)nique (id)entifier for the plugin. The GUID is used to distinguish plugins from each other both within and across plugin packages. |
|
Category |
Plugin& |
||
|
QuickHelp |
Plugin& |
||
|
AddConcept |
Plugin& |
||
|
AddObject |
Plugin& |
||
|
AddDetails |
std::vector<DetailDefinition> |
Plugin& |
Analysis details for stress reporting and visualization in HyperX. |
Referenced by: PackageConfiguration
Contains information on whether a certain analysis method is active.
|
Method |
Parameters |
Return Type |
Description |
|---|---|---|---|
|
IsActive |
TPluginEnum pluginIdEnum |
bool |
Returns true if the concept-based plugin is active for either limit or ultimate. |
|
IsActive |
TPluginEnum pluginIdEnum, ObjectId objectId |
bool |
Returns true if the object-based plugin is active for either limit or ultimate. |
|
IsActive |
TPluginEnum pluginIdEnum, MechanicalCondition mechanicalCondition |
bool |
Returns true if the concept-based plugin is active. |
|
IsActive |
TPluginEnum pluginIdEnum, ObjectId objectId, MechanicalCondition mechanicalCondition |
bool |
Returns true if the object-based plugin is active. |
Referenced by:PanelBeamState
|
Field |
Type |
Description |
|---|---|---|
|
Angle |
float |
|
|
Thickness |
float |
|
|
MaterialId |
int |
|
|
MaterialType |
||
|
Stress |
Ply stress in 1-2 coordinates. |
|
|
Strain |
Ply strain in 1-2 coordinates. |
|
|
StressSideA |
Ply stress at Point A for a given stiffener |
|
|
StressSideB |
Ply stress at Point B for a given stiffener |
|
|
StrainSideA |
Ply strain at Point A for a given stiffener |
|
|
StrainSideB |
Ply strain at Point B for a given stiffener |
Referenced by:Object
Example
using namespace hs; // Ply stress. Average of top and bottom. float sig1 = ply.Stress(SIG::SIG_1, Surface::Avg); float sig2 = ply.Stress(SIG::SIG_2, Surface::Avg); float tau12 = ply.Stress(SIG::TAU_12, Surface::Avg); // Ply strain. Average of top and bottom. float eps1 = ply.Strain(EPS::EPS_1, Surface::Avg); float eps2 = ply.Strain(EPS::EPS_2, Surface::Avg); float gamma12 = ply.Strain(EPS::GAM_12, Surface::Avg);
|
Method |
Parameters |
Return Type |
Description |
|---|---|---|---|
|
Title |
std::string |
QuickHelp& |
|
|
Text |
std::string |
QuickHelp& |
|
|
Image |
std::string |
QuickHelp& |
A base 64 encoded string. See note for how to generate. |
|
AddSection |
QuickHelp& |
Referenced by Plugin, PackageConfiguration
Image String Generation
The image is stored as a base 64 encoded string. You can easily encode an image as a base 64 string with Python. The text output from the following script can be copied into the C++ QuickHelp configuration.
import base64
imageFile = "PATH-TO-YOUR-IMAGE-FILE"
outputFile = "b64Image.txt"
def chunker(seq, size):
return (seq[pos:pos + size] for pos in range(0, len(seq), size))
with open(imageFile, "rb") as f:
data = f.read()
with open(outputFile, "w") as f:
for chunk in chunker(base64.b64encode(data).decode("utf-8"), 120):
f.write('"' + chunk + '"\n')
Output of the Analyze() method. Stores a list of AnalysisResult instances.
|
Method |
Parameters |
Return Type |
Description |
|---|---|---|---|
|
Add |
AnalysisResult result |
void |
Add a result. If an existing result with a lower MS is present, the result is not stored. |
|
Add |
vector<AnalysisResult> results |
void |
Add multiple results. If an existing result with a lower MS is present, the result is not stored. |
|
Add |
DetailList details |
void |
Adds the analysis details to the analysis results. |
|
Count |
size_t |
Returns the number of analysis results. |
|
|
operator[] |
int i |
Returns a reference to an analysis result. |
|
|
GetDetails |
Returns the existing details. |
|
Field |
Type |
|---|---|
|
ElementId |
int |
|
ComponentId |
int |
|
DiscreteId |
|
|
Area |
double |
|
Nx |
double |
|
Ny |
double |
|
Nxy |
double |
|
Mx |
double |
|
My |
double |
|
Mxy |
double |
|
Qx |
double |
|
Qy |
double |
Referenced by:ShellElementForces
|
Method |
Parameters |
Return Type |
Description |
|---|---|---|---|
|
operator() |
int i |
Returns the force data in a given element. |
|
|
Count |
int |
Referenced by:PanelBeamState
Width of spacing span objects relative to the left and right skin component.
|
Field |
Type |
Description |
|---|---|---|
|
Width |
double |
Width of the spacing span object. For uniaxial panels this is the same as the stringer pitch. For corrugated panels it is equivalent to the stringer pitch minus the width of the closed span. |
|
Active |
bool |
For stringer segment components, describes whether this spacing span is being used when determining the margins of safety. This distinction is necessary since stringer segments are analyzed using a single skin component, yet a stringer segment can be associated with two skin components (left and right). |
|
Method |
Parameters |
Return Type |
Description |
|---|---|---|---|
|
operator() |
SpacingSpanId spacingSpanId |
Referenced by:PanelBeamProperty
|
Field |
Type |
Description |
|---|---|---|
|
E |
double |
Average Young's modulus, E*. E* = EA / A |
|
G |
double |
Average shear modulus, G*. G* = GJ / J |
|
A |
double |
Area. A = Σ bi * ti |
|
I1 |
double |
I1 = EI1 / E* |
|
I2 |
double |
I2 = EI2 / E* |
|
I12 |
double |
Product moment of inertia. |
|
J |
double |
Polar are moment of inertia. |
|
EA |
double |
Sum of the membrane stiffness terms for each object: EA = Σ A11,i * bi |
|
EI1 |
double |
Bending stiffness about the y-axis. |
|
EI2 |
double |
Bending stiffness about the x-axis. |
|
GJ |
double |
Torsional stiffness. |
|
X_NA |
double |
Vertical distance from the midplane of facesheet to the neutral axis of the stiffener. |
|
Y_NA |
double |
Horizontal distance from middle of the foot flange to the neutral axis of the stiffener. |
|
Aenc |
double |
Enclosed area for closed stiffener sections. |
|
Density |
double |
Average density. ρ* = Σ ρi * Ai |
|
Alpha |
double |
Average thermal expansion coefficient. α* = Σ α1,i * Ai |
Referenced by:PanelBeamState
|
Field |
Type |
Description |
|
Curves |
All temperature curves for a single method. Note that array is static size and must be looped over with the CurveCount property. |
|
|
CurveCount |
int |
|
|
CurveType |
Each method can only define temperature curves for a single x-axis type |
Referenced by: MaterialProperty
|
Method |
Parameters |
Return Type |
Description |
|---|---|---|---|
|
Name |
std::string |
UserConstantDefinition& |
User constant name. |
|
Id |
TUserConstantIdEnum |
UserConstantDefinition& |
The ID of the user constant within the package. Each user constant must be assigned a unique ID greater than 0. Enums are recommended, and should be defined as 'enum : int' or 'enum class : int' |
|
GUID |
std::string |
UserConstantDefinition& |
The (g)lobally (u)nique (id)entifier for the user constant. The GUID is used to distinguish user constants from each other both within and across plugin packages. |
|
Description |
std::string |
UserConstantDefinition& |
|
|
QuickHelp |
UserConstantDefinition& |
||
|
DataType |
UserConstantDataType |
UserConstantDefinition& |
|
|
DefaultValue |
std::string |
UserConstantDefinition& |
|
|
DefaultValue |
const char* |
UserConstantDefinition& |
|
|
DefaultValue |
double |
UserConstantDefinition& |
|
|
DefaultValue |
int |
UserConstantDefinition& |
|
|
DefaultValue |
bool |
UserConstantDefinition& |
|
|
Category |
std::string |
UserConstantDefinition& |
Referenced by: PackageConfiguration
Holds a set of user defined constants as defined in the Settings section of the Failure Mode Form. The user constants are exposed via the UserConstants field on the PluginPackageBase class.
|
Method |
Parameters |
Return Type |
Description |
|---|---|---|---|
|
GetValue<DataType> |
TEnum userConstantId |
DataType |
Returns a user constant value of type DataType for the primary component. Throws exception if the constant is not found. |
|
GetValue<DataType> |
int componentId, TEnum userConstantId |
DataType |
Returns a user constant value of type DataType for the specified component, corresponding to the skin or stringer of a panel segment. Throws exception if the constant is not found. |
|
TryGetValue<DataType> |
TEnum userConstantId, DataType& valueOut |
bool |
Tries to extract the user constant value for the primary component. Throws an exception if the constant is not found. |
|
TryGetValue<DataType> |
int componentId, TEnum userConstantId, DataType valueOut |
bool |
Tries to extract the user constant value for the specified component. Throws an exception if the constant is not found. |
|
GetValueOptional<DataType> |
TEnum userConstantId |
std::optional<DataType> |
Tries to extract the user constant value for the primary component. Throws an exception if the constant is not found. If the constant does not have a value, a std::optional with no value is returned. |
|
GetValueOptional<DataType> |
int componentId, TEnum userConstantId |
std::optional<DataType> |
Tries to extract the user constant value for the specified component. Throws an exception if the constant is not found. If the constant does not have a value, a std::optional with no value is returned. |
Example
// User constant for smeared panel or stiffener segment. double fixity = state_.UserConstants.GetValue<double>(UserConstantId::c_fixity);
Referenced by: PanelPackageBase