O3seespy Documentation¶
This is the official documentation of the O3seespy (or simply O3) package.
O3seespy - Object-oriented OpenSees in Python
The documentation is built off the OpenSees tcl and OpenSeesPy documentation and has been amended and added to to cover the additional functionality of the O3seespy package.
The main difference between O3seespy and OpenSeesPy is that O3seespy provides a pure python layer to evaluate OpenSees inputs. This improves debugging and allows parameters to be easily accessed within Python.
Contents¶
- Installation
- Commands directory
- o3seespy.OpenSeesInstance
- Common commands
AlternativeAnalysisEleLoad2DPointEleLoad2DUniformEqualDOFEqualDOFMultiFixFix1DOFFix1DOFMultiFix2DOFFix2DOFMultiFix3DOFFix3DOFMultiFix4DOFFix6DOFFix6DOFMultiImposedMotionLoadMassMass2DMass3DModalDampingParameterRigidLinkSPadd_fixity_to_dof()analyze()analyze_w_restart()domain_change()gen_reactions()get_all_ele_node_tags()get_all_ele_node_tags_as_dict()get_all_ele_node_tags_by_n_nodes()get_all_node_coords()get_all_node_coords_w_tag()get_all_node_disps()get_eigen()get_ele_response()get_ele_tags()get_node_accel()get_node_coords()get_node_disp()get_node_disps()get_node_dofs()get_node_eigen_vector()get_node_pressure()get_node_reaction()get_node_reactions()get_node_tags()get_node_unbalance()get_node_vel()get_np()get_num_threads()get_pid()get_time()imposed_motion()load_constant()loop_for_analyze_w_restart()record()remesh()remove()remove_load_pattern()remove_recorders()remove_sp()reset()set_ele_rayleigh_damp()set_element_rayleigh_damping_factors()set_equal_dof()set_equal_dofs()set_equal_dofs_mixed()set_node_mass()set_num_threads()set_parameter()set_rigid_diaphragm()set_rigid_link()set_time()start()stop()update_element_domain()update_material_stage()update_parameter()wipe()wipe_analysis()
- o3seespy.algorithm
- o3seespy.analysis
- o3seespy.beam_integration
- o3seespy.constraints
- o3seespy.element
- Base element
- Beam-column
- Bearing
ElastomericBearingBoucWen2DElastomericBearingBoucWen3DElastomericBearingPlasticity2DElastomericBearingPlasticity3DElastomericXFPBearingPTVFlatSliderBearing2DFlatSliderBearing3DHDRKikuchiBearingadjustPDOutputKikuchiBearingdoBalanceLeadRubberXMultipleShearSpringRJWatsonEqsBearing2DRJWatsonEqsBearing3DSingleFPBearing2DSingleFPBearing3DTFPTripleFrictionPendulumYamamotoBiaxialHDRcoRS
- Brick
- Cable
- Contact
- Joint
- Link
- Misc
- Other UP
- PFEM
- quadrilateral
- Soil-foundation
- Tetrahedron
- Triangular
- Truss
- UC San Diego UP
- Zero length
- o3seespy.geom_transf
- o3seespy.integrator
- o3seespy.node
- o3seespy.nd_material
- base_material
- concrete_walls
- contact
- other_material
- Standard
AcousticMediumBoundingCamClayDamage2pDruckerPragerDruckerPrager.denDruckerPrager.nuDruckerPrager.op_typeDruckerPrager.set_bulk_mod()DruckerPrager.set_cohesive_intercept()DruckerPrager.set_frictional_strength()DruckerPrager.set_g_mod()DruckerPrager.set_material_state()DruckerPrager.set_nonassociative_term()DruckerPrager.set_nu()DruckerPrager.set_update_material_stage()DruckerPrager.update_eles_to_linear()DruckerPrager.update_eles_to_nonlinear()
ElasticIsotropicElasticOrthotropicElasticOrthotropic.op_typeElasticOrthotropic.set_e_mod_x()ElasticOrthotropic.set_e_mod_y()ElasticOrthotropic.set_e_mod_z()ElasticOrthotropic.set_g_mod_xz()ElasticOrthotropic.set_g_mod_yx()ElasticOrthotropic.set_g_mod_zy()ElasticOrthotropic.set_rho()ElasticOrthotropic.set_vxz()ElasticOrthotropic.set_vyx()ElasticOrthotropic.set_vzy()
FSAMJ2PlasticityManzariDafaliasManzariDafalias.op_typeManzariDafalias.set_integration_scheme()ManzariDafalias.set_jacobian()ManzariDafalias.set_material_state()ManzariDafalias.set_nu()ManzariDafalias.set_ref_shear_modulus()ManzariDafalias.set_stress_correction()ManzariDafalias.set_update_material_stage()ManzariDafalias.set_void_ratio()ManzariDafalias.update_to_linear()ManzariDafalias.update_to_nonlinear()
MultiaxialCyclicPlasticityPM4SiltPlaneStrainPlaneStressPlateFiberStressDensity
- Tsinghua_sand
- UC San Diego soil
- UC San Diego UD soil
- Wrapper
- o3seespy.node
- o3seespy.numberer
- o3seespy.patch
- o3seespy.pattern
- o3seespy.rayleigh
- o3seespy.recorder
ElementToArrayCacheElementToFileElementToXMLElementsToArrayCacheElementsToFileElementsToXMLNodeToArrayCacheNodeToFileNodeToXMLNodesToArrayCacheNodesToFileNodesToXMLRecorderBaseRecorderToArrayCacheBaseTimeToArrayCacheTimeToFileload_ecp2o3_type_dict()load_recorder_options()remove_recorder()remove_recorders()
- o3seespy.region
- o3seespy.section
- o3seespy.system
- o3seespy.test
- o3seespy.uniaxial_material
- base_material
- Concrete
Concrete01Concrete01WithSITCConcrete02Concrete04Concrete06Concrete07ConcreteCMConcreteDConfinedConcrete01FRPConfinedConcreteFRPConfinedConcrete.op_typeFRPConfinedConcrete.set_c()FRPConfinedConcrete.set_d()FRPConfinedConcrete.set_dlong()FRPConfinedConcrete.set_dtrans()FRPConfinedConcrete.set_ej()FRPConfinedConcrete.set_eju()FRPConfinedConcrete.set_epsco()FRPConfinedConcrete.set_es()FRPConfinedConcrete.set_fc1()FRPConfinedConcrete.set_fc2()FRPConfinedConcrete.set_fyh()FRPConfinedConcrete.set_fyl()FRPConfinedConcrete.set_k()FRPConfinedConcrete.set_s()FRPConfinedConcrete.set_sj()FRPConfinedConcrete.set_tj()FRPConfinedConcrete.set_use_buck()FRPConfinedConcrete.set_vo()
FRPConfinedConcrete02JacketCFRPConfinedConcrete02UltimateTDConcreteTDConcreteEXPTDConcreteMC10TDConcreteMC10NL
- Other
AxialSpAxialSpHDBWBNBarSlipBilinBilinearOilDamperBondSP01BoucWenCFSSSWPCFSWSWPCastECC01ElasticBilinElasticMultiLinearFatigueHardeningHyperbolicGapMaterialImpactMaterialInitStrainMaterialInitStressMaterialLimitStateMinMaxModIMKPeakOrientedModIMKPinchingMultiLinearPathIndependentSAWSSelfCenteringViscousViscousDamper
- pytz
- Standard
- Steel
- o3seespy.time_series
- o3seespy.transformation
- o3seespy.base_model
- o3seespy.tools package
Features¶
This package provides:
A ‘pythonic’ version of OpenSees - all input parameters to create OpenSees objects are all lowercase key-value arguments - all class objects are CamelCase - static string variables defined in ALL_CAPS - Where possible the exact name used in the original TCL version has been kept
Fully namespaced package allowing full auto-complete e.g. ‘o3.uniaxial_material.Steel01(…)’
Replication of underlying object-oriented C++ source code using Python objects.
Type checking of inputs before calling C++ OpenSees code, so that python debugging and errors can be viewed
In code documentation using python docstrings - can view the documentation within your IDE
Additional features for using OpenSees in python: - saving and loading data directly from OpenSees into numpy arrays - saving and loading data directly from OpenSees into json files - Save an entire model as a json file - allows efficient passing of models between servers
All object numbering handled by objects - no need for number tags!
Additional logic checking of optional inputs