Introductory ABBs & PBAMs
This page gives a few ABBs and PBAMs which introduce constrained object (cob) concepts progressively. More primitive ABBs are given first which are used to build subsequent ABBs and PBAMs.
See also:
Constrained object representation & constraint schematic notation
Analysis Building Blocks(ABBs)
Represenation of engineering analysis concepts as cobs.One D Linear Elastic Model
Extensional Rod
Elementary Deformable Body
PBAMs
Represenation of engineering analysis models as cobs that includes explicit associativity between detailed design objects (CAD) and analysis objects (ABBs - for CAE).Component Extensional Model
Linkage Extensional Model
PWB Thermal Bending Model
Other PBAM Examples (include FEA-based and nested PBAMs)
ABBs
One D Linear Elastic Model
Constraint Schematic
ABB Structure
Superclass
none
Variables
youngs modulus,
poissons ratio,
cte,
shear modulus,
strain,
elastic strain,
thermal strain,
stress,
shear strain,
shear stress,
temperature change,
Relations
r1
r2
r3
r4
r5
Subsystems
none
Subsystem Views (Special Cases)
full |
|
isothermal |
|
no shear |
Extensional Rod
Constraint Schematic
ABB Structure
Superclass
Elementary Deformable Body
Variables
undeformed length,
area,
start,
end,
length,
total elongation,
force,
youngs modulus,
cte,
strain,
elastic strain,
thermal strain,
stress,
Relations
r1
r2
r3
r4
Subsystems
deformation model : One D Linear Elastic Model (no shear)
Subsystem Views
full |
|
isothermal |
|
no force |
Elementary Deformable Body
ABB Structure
Superclass
none
Variables
reference temperature,
temperature,
temperature change,
Relations
r1
Subsystems
material model : One D Linear Elastic Model
Subsystem Views
not applicable (abstract superclass)
PBAMs
Component Extensional Model
Constraint Schematic
Express
ENTITY component_extensional_model SUBTYPE OF ( product_model_based_analysis_model ); (* Product Variables *) component : electrical_component; (* Subsystems *) deformation_model : basic_rod; (* Analysis Variables *) (* none extra *) (*Mapped Variables *) length : positive_length_measure; cte : cte; reference_temperature : temperature; temperature : temperature; temperature_change : temperature; total_elongation : length_measure; strain : strain; WHERE (* Associativity Linkages*) al1 : deformation_model.length = component.total_length; al2 : deformation_model.cte = component.primary_structural_material.linear_elastic_model.cte; (* Analysis-Analysis Transformations *) (* none extra *) (* Subsystem Conditions *) (* ssc1 : deformation_model.no_force = true; *) (*Mappings *) mv1 : length = deformation_model.length; mv2 : cte = deformation_model.cte; mv3 : reference_temperature = deformation_model.reference_temperature; mv4 : temperature = deformation_model.temperature; mv5 : temperature_change = deformation_model.temperature_change; mv6 : total_elongation = deformation_model.total_elongation; mv7 : strain = deformation_model.strain; END_ENTITY;
Smalltalk
"analysis variables" variables := nil. productVariables := List withAll: #(#component ). subProductVariables := Dictionary new. subProductVariables at: #component.totalLength put: #analysisVariable; at: #component.primaryStructuralMaterial put: #productVariable; at: #component.primaryStructuralMaterial.stressStrainModel put: #abb; at: #component.primaryStructuralMaterial.stressStrainModel.cte put: #analysisVariable. self addSubsystemSpec: #deformationModel type: BetterRod. mappedVariables := Dictionary new. mappedVariables at: #undeformedLength put: #deformationModel.undeformedLength; at: #cte put: #deformationModel.cte; at: #referenceTemperature put: #deformationModel.referenceTemperature; at: #temperature put: #deformationModel.temperature; at: #temperatureChange put: #deformationModel.temperatureChange; at: #totalElongation put: #deformationModel.totalElongation; at: #strain put: #deformationModel.strain. relations := nil. productAnalysisTransformations := Dictionary new. productAnalysisTransformations at: #al1 put: '#deformationModel.undeformedLength = #component.totalLength'; at: #al2 put: '#deformationModel.cte = #component.primaryStructuralMaterial.stressStrainModel.cte'.
Linkage Extensional Model
Constraint Schematic
PWB Thermal Bending Model
See Figures 6 & 7 in [Peak, et al., 1996] and U-Engineer for further explanation.
Constraint Schematic
Express
ENTITY pwb_thermal_bending_model SUBTYPE OF (pwb_warpage_model); (* Product Variables *) pwb : pwb; (* Subsystems *) deformation_model : thermal_bending_system; (* Analysis Variables *) (* none *) (*Mapped Variables *) length : positive_length_measure; thickness : positive_length_measure; coefficient_of_thermal_bending : REAL; temperature : temperature; reference_temperature : temperature; temperature_change : temperature; warpage : length_measure; WHERE (* Associativity Linkages *) al1 : deformation_model.length = pwb.total_diagonal; al2 : deformation_model.thickness = pwb.total_thickness; al3 : deformation_model.coefficient_of_thermal_bending = pwb.coefficient_of_thermal_bending; (* Analysis-Analysis Transformations *) (* none *) (* Subsystem Conditions *) (* none *) (* Mappings *) mv1 : warpage = deformation_model.total_deflection; mv2 : length = deformation_model.length; mv3 : thickness = deformation_model.thickness; mv4: coefficient_of_thermal_bending = deformation_model.coefficient_of_thermal_bending; mv6 : reference_temperature = deformation_model.reference_temperature; mv7 : temperature = deformation_model.temperature; mv8 : temperature_change = deformation_model.temperature_change; END_ENTITY;
Copyright © Georgia Tech