N2PCalculatorRFJoints Module#
- class NaxToPy.Modules.static.fasteners.N2PCalculatorRFJoints.N2PCalculatorRFJoints[source]#
Bases:
object
Class that manages the Reserve Factor (RF) calculation process of the joints obtained through the modules N2PGetFasteners and N2PGetLoadFasteners.
Example
>>> import NaxToPy as n2p >>> from NaxToPy.Modules.Fasteners.N2PGetFasteners import N2PGetFasteners >>> from NaxToPy.Modules.Fasteners.N2PGetLoadFasteners import N2PGetLoadFasteners >>> from NaxToPy.Modules.Fasteners.Joints.N2PFastenerSystem import N2PFastenerSystem >>> from N2PCalculatorRFJoints import N2PCalculatorRFJoints >>> model1 = n2p.get_model(route.fem) # model loaded >>> fasteners = N2PGetFasteners() >>> fasteners.Model = model1 # compulsory input >>> fasteners.calculate() # fasteners are obtained >>> loads = N2PGetLoadFasteners() >>> loads.GetFasteners = fasteners # compulsory input >>> loads.ResultsFiles = [r"route1.op2", r"route2.op2", r"route3.op2"] # the desired results files are loaded >>> loads.OptionalAttributes.DefaultDiameter = 4.0 # joints with no previously assigned diameter will get this diameter (optional) >>> loads.calculate() # calculations will be made and results will be exported >>> Fastener_HWGT315 = N2PFastenerSystem() # Fastener system definition to be assigned to one or more joints >>> Fastener_HWGT315.Designation = "HWGT315-5-LEADING-EDGE" >>> Fastener_HWGT315.Fastener_pin_single_SH_allow = 5555.0 >>> Fastener_HWGT315.Fastener_collar_single_SH_allow = 5555.0 >>> Fastener_HWGT315.Fastener_pin_tensile_allow = 5555.0 >>> Fastener_HWGT315.Fastener_collar_tensile_allow = 5555.0 >>> Fastener_HWGT315.D_head = 10.5 >>> Fastener_HWGT315.D_tail = 9.5 >>> Fastener_HWGT315.D_nom = 5.5 >>> loads.JointsList[k].FastenerSystem = Fastener_HWGT315 # Fastener system assigned to joint k >>> rf = N2PCalculatorRFJoints() >>> rf.GetFasteners = fasteners # compulsory input >>> rf.ExportLocation = "path" >>> rf.elements_manager_filter(mode = "ADVANCED", table_print = "EXCEL") # analysis elements are classified >>> # Materials Allowables Definition for Mat ID:11211000 >>> rf.AnalysisCompMats[(11211000, '0')]._allowableORTO.ILSS = 200.00 >>> # Laminates Allowables Definition for PCOMP ID:13010000 >>> rf.AnalysisCompProps[13010000].BearingAllowable = 400.0 >>> rf.AnalysisCompProps[13010000].OHTAllowable = 7222.0E-6 >>> rf.AnalysisCompProps[13010000].OHCAllowable = -3632.0E-6 >>> rf.AnalysisCompProps[13010000].FHTAllowable = 7222.0E-6 >>> rf.AnalysisCompProps[13010000].FHCAllowable = -3632.0E-6 >>> # Metallic Allowables Definition for MAT ID:12345678 >>> rf.AnalysisMetalProps[12345678].Fbru_e1p5d = 600.0 >>> rf.AnalysisMetalProps[12345678].Fbru_e2d = 650.0 >>> rf.AnalysisMetalProps[12345678].Ftu = 500.0 >>> rf.GetLoadFasteners = loads # compulsory input if "calculate()" is called >>> rf.calculate() # RF calculations are performed >>> rf.rf_min_and_lc_to_CSV() # (Optional) -> Min reserve factors (RFs,LCs) are exported >>> rf.rf_min_and_lc_to_EXCEL() # (Optional) -> Min reserve factors (RFs,LCs) are exported >>> rf.rf_and_lc_to_CSV() # (Optional) -> All RFs for all LCs are exported
- elements_manager_filter(mode: str = 'ADVANCED', table_print: str = 'NO')[source]#
Method used to find all the analysis elements (2D & 1D) of a N2PGetFasteners class and store them in three different categories: COMP_ELEMENTS, METAL_ELEMENTS & 1D_ELEMENTS.
- Calling example #1:
>>> elements_manager_filter(mode = "SIMPLE", table_print = "EXCEL")
- Calling example #2:
>>> elements_manager_filter(mode = "ADVANCED", table_print = "CSV")
The SIMPLE mode only creates the dictionary of analysis elements. This is intended to be used when the user first needs a dictionary containing all the analysis elements connected to the corresponding N2PJoint and N2PPlates objects.
The ADVANCED mode creates both the dictionary and each joint N2PJointAnalysisParameters class using the corresponding default values. This is intended to be used once the user has assigned a N2PFastenerSystem to each N2PJoint of the analysis. (Default).
table_print (OPTIONAL) = “NO” (DEFAULT) / “EXCEL” / “CSV”
- Arg:
mode (str): “SIMPLE” or “ADVANCED” (Default) table_print (str): “EXCEL”, “CSV” or “NO (Default)
- rf_min_and_lc_to_CSV() None [source]#
Method used to export each element RF min and its corresponding LC to a CSV file
- rf_min_and_lc_to_EXCEL() None [source]#
Method used to export each element RF min and its corresponding LC to an EXCEL file
- property AnalysisCompMats: dict#
Dictionary which contains all the analysis composite materials objects.
- property AnalysisCompProps: dict#
Dictionary which contains all the analysis CompositeShell objects.
- property AnalysisMetalMats: dict#
Dictionary which contains all the analysis Isotropic objects.
- property AnalysisMetalProps: dict#
Dictionary which contains all the analysis Shell objects.
- property ExportLocation: str#
Path where the results are to be exported.
- property GetFasteners: N2PGetFasteners#
N2PGetFasteners instance. It is a compulsory input and an error will occur if this is not present.
- property GetLoadFasteners: N2PGetLoadFasteners#
N2PGetLoadFasteners instance. It is a compulsory input and an error will occur if this is not present.
- property RFAnalysisElems: dict#
Dictionary containing the analysis objects (plates and connectors)
- property RFResults: dict#
Results obtained in calculate().