top of page

How to Use

This page is dedicated to providing information on how to use the NonLinear Structural Analysis tool as a PyPi module. For website, it is self-explanatory. 

 

 

Start a new project by clicking " START NEW PROJECT" or select an existing one 

01

General

1. Create and Assemble the Structural Model

2. Create Responses

3. Perform the Individual Response

 

The package contains following Modules:

 

1. StructuralElements - With this you can create Node, Member

2. Loads - With this you can create NeumanBC

3. main - with this you can assembale the model

4. FirstOrderResponse - With this you can create FirstOrderGLobalResponse and FirstOrderMemberResponse

5. SecondOrderResponse - With this you can create SecondOrderGLobalResponse and SecondOrderMemberResponse

6. DynamicResponse - With this you can create DynamicGlobalResponse

7. FiniteElementDivisor and Comparision

02

How to create Strucutural Model

  1. Node:

    • Node_Number – Give the node number as an integer.

    • xcoordinate – Specify the x-coordinate as a float.

    • ycoordinate – Specify the y-coordinate as a float.

    • Support_Condition – Define the type of support as a string from the given options- "Hinged Support", "Fixed Support", "Rigid Joint", "Roller in X-plane", "Roller in Y-plane", "Hinge Joint", "Glided Support", "Roller in X-plane-Hinge"

  2. Member:

    • Beam_Number – Assign a unique beam number as an integer.

    • Start_Node – Specify the starting node number as an integer.

    • End_Node – Specify the ending node number as an integer.

    • Area – Define the cross-sectional area as a float.

    • Youngs_Modulus – Specify Young’s modulus as a float.

    • Moment_of_Inertia – Provide the moment of inertia as a float.

  3. NeumanBC:

    • type – Define the Load type as a string.
      "UDL" - Uniformly Distributed Load, "PL" - Point Load

    • Magnitude – Specify the magnitude of the Load as a float.

    • Distance1 – Provide the distance at which the Load is starts as a float.

    • Distance2 – Provide the distance at which the Load end as a float. ( Not needed if you use "PL")

    • AssignedTo – Indicate the member to which the load is applied as a string.

    • Members – List the member numbers assigned to this boundary condition as integers.

03

 How to create responses

Response is created based on the Structure. Example of creating each response is given

Model1 = main.Model(Points = Points, Members = Members, Loads = Loads)

GlobalRes1 = FirstOrderResponse.FirstOrderGlobalResponse(Points = Points, Members = Members, Loads = Loads)

NodalRes1 = NodalResponse(Points = Points, Members = Members, Loads = Loads)

MemberRes1 = FirstOrderResponse.FirstOrderMemberResponse(Points = Points, Members = Members, Loads = Loads)

SecondOrderResponse1 = SecondOrderResponse.SecondOrderGlobalResponse(Points = Points, Members = Members, Loads = Loads)

SecondOrderMemberResponse1 = SecondOrderResponse.SecondOrderMemberResponse(Points = Points, Members = Members, Loads = Loads)

Comparision1 = Comparision.Comparision(MainModel = MemberRes1, Model2 = SecondOrderMemberResponse1)

DynamicResponse1 = DynamicResponse.DynamicGlobalResponse(Points = Points, Members = Members, Loads = Loads)

Instead of Model1, GlobalResponse1 you can use anyother name. Based on this model Structural results can be obtained as shown below

Follwing Structural results are availabe for each response:

1. FirstOrderGlobalResponse - SupportForcesVector, DisplacementVectorDict

2. FirstOrderNodalResponse - NodeForce, NodeDisplacement

3. FirstOrderMemberResponse - MemberForceLocal, MemberBMD, MemberSFD PlotMemberBMD, PlotMemberSFD, PlotGlobalBMD, PlotGlobalSFD, PlotGlobalDeflection

4. SecondOrderGlobalResponse - SupportForcesVector, DisplacementVectorDict, BucklingEigenLoad, PlotEigenMode

5. SecondOrderMemberResponse - MemberForceLocal, MemberBMD, MemberSFD PlotMemberBMD, PlotMemberSFD, PlotGlobalBMD, PlotGlobalSFD, PlotGlobalDeflection

6. Comparision - PlotGlobalBMDComparison, PlotGlobalSFDComparison, PlotGlobalDeflectionComparison

Aakash Ravichandran

©2025 by NStructAnaly

bottom of page