Download File
0.Introduction
The purpose of this chapter is to make the various features of MIDAS GH more accessible by structuring the content in a way similar to practical examples. This approach aims to help users who may have struggled to learn through manuals to intuitively understand the use of Grasshopper and CIVIL_NX APIs. The primary goal is to support users in learning more effectively and systematically.
This template is designed to help practitioners efficiently and systematically execute their projects.
In this example, we will learn how to input everything from the basic geometry to the Construction Stage using the FCM Bridge.
Result Preview
1. Overview
1-1 Recommended Versions
The required versions of MIDAS GH and CIVIL NX for proper use of this template are as follows:
CIVIL NX | MIDAS CIVIL NX 2024(v2.1) |
---|---|
MIDAS GH | MIDAS GH (v2.0.5) |
If the versions do not match the ones listed above, some features may not function correctly.
For proper functionality, if you are using lower versions, please update to the versions specified or higher.
1-2 Unit System Settings
This template is configured with the following unit system:
1-3 Model Overview
-
Material Properties and Allowable Stress
-
Pier properties
fc' = 5.0ksi, ASTM(RC), Grade C5000
-
Main Girder properties
fc' = 4.0ksi, ASTM(RC), Grade C4000
-
Tendon Properties
Material: EN 05(S) Y1770S7
P.C Strand: Φ15.2 mm (0.6˝strand)
Duct Diameter: 100 mm
Yield Strength: fpy = 1600 N/mm2
Ultimate Strength: fpu = 1850 N/mm2
Cross Sectional area: Ap = 2635.3 mm2
Modulus of Elasticity: Eps = 2.00 X 105 N/mm2
Jacking Stress: fpj = 0.7fpu = 1295 N/mm2
Curvature friction factor: μ = 0.2 /rad
Wobble friction factor: k = 0.006 /m
Anchorage Slip: Δs = 6 mm (At the Beginning and at the End)
-
Pier properties
-
Load
Self-weight : Input Self-Weight
2nd Dead Load : w = 35 kN/m
Form Travelling Load : P = 800kN , e = 2.5m , M = P x e = 2,000 kN·m
Fig 5. From Travelling Load Point Curing Load : Non harden Concrete Weight
-
Creep and Shrinkage
Code: CEB-FIP(1990)
Characteristic compressive strength of concrete at the age of 28 days: 35 N/mm2(Grade C5000). / 28 N/mm2(Grade C4000)
Relative Humidity of ambient environment: 70%
Type of cement: Normal or rapid hardening cement
Age of concrete at the beginning of shrinkage: 3 days
- Construction Stage
The following outlines a general procedure for FCM construction
This example is a 3-span FCM bridge constructed with 4 Form Travelers (FT). As such FT will not be relocated.
2. Execution
2-1 Setting
Before generating the model, Midas GH requires the following settings:
A. API Connection
B. Template Execution
A. API Connection
MIDAS GH operates using the API of CIVIL NX.
Therefore, the developed components will function correctly only when they are connected to CIVIL NX.
The steps to connect to CIVIL NX are as follows:
① Run the Midas Setting component in Grasshopper.
② Double-click the Midas Setting component icon to open the Settings window.
③ Execute API Settings in CIVIL NX.
④ Copy the content of Base URL from CIVIL NX and paste it into the Base URL field in Grasshopper.
⑤ Copy the content of MAPI-Key from CIVIL NX and paste it into the MAPI-Key field in Grasshopper.
⑥ Click the Connect button in CIVIL NX.
⑦ Click the OK button in the Midas Setting window in Grasshopper.
Once the Midas Setting in Grasshopper is connected, the setting information is retained. You only need to update it if the MAPI-Key changes.
B. Open Template File
Once the settings are complete, open the downloaded template file.
Additionally, to create tendons, you need to run the downloaded Rhino file along with this template.
MIDAS GH components generate information when the file is executed.
Therefore, if "1) API Connection" has not been completed beforehand, the information will not be generated correctly upon file execution.
Make sure to perform "1) API Connection" before running the file.
2-2 Work Flow
MIDAS GH creates modeling in CIVIL NX through the following process:
A. Generate Geometry in Grasshopper
B. Use MIDAS GH Components to Transfer Geometry to CIVIL NX
MIDAS GH components are used to create geometry in CIVIL NX, each accepting various input variables.
① Create a line in Grasshopper, then use the Beam component in MIDAS GH to build the model.
② For sections, combine the Outer-Dimension of PSC Shape and Inner-Dimension of PSC Shape components to create a PSC shape. Then, connect these to the Tapered Shape component to generate a Tapered PSC Shape.
③ Connect the completed Section Property, Material Property, and Geometry to the Beam component to create the model in CIVIL NX.
④ To establish relationships with substructures and set constraints with the foundation, use the Get Property component from the created modeling component to extract Node and Element IDs for the input locations.
⑤ Similarly, for loads, input Node and Element IDs along with the load values.
⑥ To accommodate construction stages later, configure Structure Groups, Boundary Groups, and Load Groups and input them simultaneously.
⑦ For tendons, this template utilizes tendons imported from drawings into Rhino.
⑧ The imported tendons are transformed into coordinates suitable for the bridge using Grasshopper, and the corresponding elements are identified and assigned accordingly.
⑨ Once the input for the complete structure is finished, create construction stages and set durations for each stage.
⑩ Assign the groups configured in Step ⑥ to the respective construction stages to input the construction stage process.
For detailed instructions on how to use the components, please refer to the manual.
GrassHopper API Online Manual – MIDAS Support
C. Convert MIDAS GH Components to Data for CIVIL NX API
The input components are converted into data compatible with the CIVIL NX API.
D. Send API Data in Batch Using Merge and Builder Components
While each MIDAS GH component has its own API execution button, Merge and Builder components are used for efficient modeling to send API data in batches.
E. Run the Model in CIVIL NX
When the Run button is executed, the model is generated in CIVIL NX.
2-3 Run Component
A. Important Notes
a. API Connection When Running Grasshopper
-> If the template is executed without API connection, components may not function properly, and the data in the Builder component could become disconnected.
In this case, press the Recalculating Button to re-execute all components.
If the Merge component and Builder component are still disconnected, reconnect them manually.
b. Geometry Modifications
-> When the geometry is changed, discrepancies may arise between the modeling information generated in CIVIL NX and the data calculated within Grasshopper.
To ensure proper updates, press the C.Data Matching button to synchronize the modeling information.
c. Deactivating Intermediate Components
-> For efficient work in Grasshopper, components that require long computation times are sometimes deactivated and reactivated after the task is completed.
In such cases, components following the deactivated ones will not function, causing data to be missing in the Merge component, resulting in the API output disappearing.
In this case, the connection between the Merge component and the Builder component may become disconnected.
After reactivating the deactivated components, ensure to reconnect the Merge and Builder components.
B. Template Execution
3. Description
This template consists of a total of seven sections:
① Modeling, ② Property, ③ Boundary, ④ Static Load, ⑤ Prestress, ⑥ Construction Stage, and ⑦ Update.
Their locations are as follows:
Additionally, in this template, the data that users can modify is marked in purple on the overall component map.
When the Parameter values in these areas are adjusted, the modeling information will be updated accordingly.
Please refer to the following details for guidance.
3-1 Modeling
The following information is configured as part of the structural modeling details:
A. Arrangement
Set the bridge path.
The template supports single paths only.
For multiple paths, users need to make additional modifications.
B. Pier Table
The following information is configured as part of the Pier Table details:
a. Pier Point
Specify the position of the bridge's substructure.
b. Pier Distance
Define the distance between the Pier Center and Pier Point.
c. Distance to End of Pier Table
Set the distance from the end of the Pier Table to the Pier Center.
C. FSM
The following information is configured as part of the FSM details:
a. FSM Length
Configure the length of the FSM section.
b. FSM Divide Count
Set the number of elements in the FSM section, excluding the Abutment Support section.
The S4 (Element Length) is determined based on the number of elements.
c. Abutment Support Length
Define the length of the Abutment Support section.
d. Abutment Divide Count
Specify the number of elements in the Abutment Support section.
D. Key Segment
The following information is configured as part of the Key Segment details:
a. Key Segment Length
Set the length of the Key Segment section.
The Key Segment is divided into three sections. To adjust each section’s length individually, modify the connected components.
E. Segment
The following information is configured as part of the Segment details:
a. Segment Length
Configure the length of a single segment.
Segments are created sequentially from each pier in the FSM direction, but Element Direction for analysis is aligned with the Global Axis (+ direction).
b. Equal-interval Options
- True : Segments are divided into equal lengths, approximating the specified length.
- False : Segments are divided as per user-defined lengths. If the total length cannot be evenly divided, the last segment’s length is adjusted.
F. Pier
The following information is configured as part of the Pier details:
a. Pier Length
Set the total length of the pier.
b. Divide Count
Define the number of elements in the pier section.
G. Structure Group
Separate geometry into groups for Construction Stage settings.
The template automatically assigns element numbers to groups.
a. Name
Specify the name of the group.
Please refer to the diagram above for the currently configured Group Name.
3-2 Property
Adjust the material and section properties applied to the geometry.
A. Material
Generate the Material Property to be applied to the members.
Note
MIDAS GH utilizes the CIVIL NX database.
Please apply the appropriate database for your use case in each component.
a. Material ID
Assign an ID to each material.
b. Material Name
Set the name for the material.
c. Modulus of Elasticity
Enter the elastic modulus of the material.
d. Thermal Coefficient
Specify the thermal expansion coefficient.
B. Time Dependent Material
Generate the Time Dependent Material Property to be applied to the members.
a. Relative Humidity
Configure the ambient relative humidity for concrete.
b. Concrete Age
Set the time for drying shrinkage to begin after casting.
c. Member Size
Input the geometric dimensions of the structure.
d. Compressive Strength
Define the 28-day compressive strength.
C. Section
Generate the Section Property to be applied to the members.
a. Section ID
Assign an ID to each section.
b. Section Name
Assign a Name the section.
c. Section Size
Input dimensions for the sections:
c-1. Section Outer Dimension
Input Outer Dimension for PSC sections.
c-2. Section Inner Dimension
Input Inner Dimension for PSC sections.
d. Section Shape
Choose the shape of the section.
3-3 Boundary
Configure boundary conditions for the bridge.
The template uses CIVIL NX boundary features, allowing users to adjust degrees of freedom and applied values.
A. Support
Apply constraints for the model.
B. Rigid Elastic Link
Apply a rigid connection between two nodes in the model.
C. Boundary Group
Group boundary cases for Construction Stage settings.
a. Name prefix
Specify the prefix for each boundary group.
Boundary Group Name : Combine Name prefix and Structure Group Name.
3-4 Static Load
Apply static loads to the bridge.
A. Load Case
Set the Load Type to be applied during member design.
Enter the Load Case Name as shown below.
a. Name
Specify the name of the load case.
B. Self Weight
Set the factor for self-weight.
The Self Weight component does not generate an ID automatically. Therefore, you need to manually input the ID information as shown below.
a. Self Weight Factor
Set the factor for self-weight.
C. 2nd Load
Input the loads for pavement, barriers, and additional attachments that are not explicitly modeled.
The regions where the loads will be applied are automatically assigned based on the previously defined areas.
a. Load Value
Define additional loads, such as pavement or barriers.
D. Form Travelling Load
Consider the load from construction equipment. For the form traveler, account for both the weight of the equipment itself and the eccentric load based on its working position.
a. Load Value
Specify construction equipment loads.
b. Form Traveller Position
Set the eccentric position of the form traveler.
E. CS Time Load
To reflect the time-dependent material properties caused by age differences between adjacent members, additional age differences are applied to specific members.
The age differences are automatically assigned based on the durations set in 3-6 Construction Stage.
F. Wet Concrete Load
Input the loads for Wet concrete during each construction stage.
The load is calculated by retrieving the cross-sectional information from CIVIL NX and multiplying it by the concrete's density.
Subsequently, the center of gravity of the entire cross-section is computed to account for eccentric loads.
G. Load Group
a. Name prefix
Enter the prefix for each Load Group.
b. Name
Input the Load Group Name.
This is used when the Structure Group Name is not referenced.
3-5 Prestress Load
Apply Prestress Load to the bridge.
A. Tendon Property
Input the material properties of the tendon.
The method for applying relaxation can be configured within the component.
a. Tendon ID
Assign an ID to the tendon property.
b. Tendon Name
Assign Name the tendon property.
c. Wire
Input wire details for the tendon.
d. Duct
Define duct size.
e. Friction Factor
Set the friction coefficient value to account for prestress losses.
f. Anchorage Slip
Input the slip amount at the anchorage.
B. Tendon Profile
Configure the shape and placement of the tendon.
This template uses a method where tendon placement is first created in 3D using Rhino based on drawings, and then positioned appropriately in the model using Grasshopper.
If the tendon path is curved, creating it in 3D can be challenging. In such cases, the straight path is used as a reference and later adjusted to fit the curved path. Even if the total length of the tendon and the model differ, they are proportionally adjusted to align correctly.
Thus, as long as the position and length ratio of the tendon on the straight path match, the tendon will be generated correctly in the model.
a. Reference Line Position
Create a reference line based on the tendon’s length.
b. Import File
Import tendon placement data by layer.
c. Tendon Name
Automatically generate tendon names using prefixes and top/bottom settings.
C. Tendon Prestress
Input the Prestress Load for the tendon.
Refer to the diagram below for the direction of prestress application to the tendon.
To change the prestress application position, adjust the order of the values connected to the component.
a. Tendon Jaking Force
Input the prestress force to be applied to the tendon.
b. Grouting Stage
Define the timing for duct grouting after the tendon has been prestressed.
3-6 Construction Stage
Configure construction stages and assign actions for each step.
Construction Step
A. Construction Step
Configure construction stages.
a. Segment Construction Step
Define the total steps for segment construction.
This template automatically calculates and inputs the Max Segment Count.
Segments are constructed simultaneously in both directions from each pier, with one step assigned per segment.
b. After Segment Consturction Step
Set the number of remaining steps after the segment construction is completed.
B. Duration
Set the duration for each construction stage.
a. Stage Date
Specify the duration of each stage.
b. Additional Data
Set the period for existing component influence.
This is applied when changing the load application timing or incorporating additional loads within a single construction stage.
In this template, the time required for tasks prior to concrete casting is specified.
c. Connection Date
Configure the period to consider creep effects.
d. Permanent Date
Set the duration to account for the effects of creep.
C. Start CS Step
Define the construction stage to be applied to each member.
For FSM and KeySeg, the stages are set to be applied sequentially after the completion of the segment construction.
D. Deactive Step Interval
Define the duration (steps) during which the loads are applied.
4. Used Components
Component Summary Table
Chapter | Contents | Component |
---|---|---|
Common | Information Linking Between Components | Get Property |
2-1 Setting | Connection API | MIDAS Setting |
3-1 Modeling | Create Main Girder/Coping Element | Beam |
Set the Structure Group | Structure Group | |
3-2 Property | Create Material Property | Concrete Material |
User Material | ||
Create Time Dependent Material | Creep/Shrinkage | |
Comp.Strength | ||
Time Dependent Materail Link | ||
Create Section Property | Outer-Dimension of PSC Shape | |
Inner-Dimmension of PSC Shape | ||
Shear Check of PSC Shape | ||
Web Thick.for Shear of PSC Shape | ||
PSC Shape - 1,2 Cell | ||
Tapered Shape - PSC 1,2 Cell | ||
Shape User | ||
Change Offset | ||
Section | ||
Additional Option | ||
3-3 Boundary | Method for Transferring Loads on the Section to Each Point | Rigid Elastic Link |
Set constraints with support point | Supports | |
Searching for Node IDs in CIVIL NX Modeling |
Get Node | |
Searching for node IDs contained in CIVIL NX Element | Get Elem Node | |
Set Boundary Group | Boundary Group | |
3-4 Load | Create Load Case | Static Load Cases |
Assign Self Weight | Self Weight | |
Input distributed load (2nd Load) | Beam Loads | |
Input Nodal Load (Wet Concrete Load, Form Travelling Load) | Nodal Loads | |
Input Additional Loads for Age Differences | Time Load | |
3-5 Prestress Load | Create Tendon Property | Post-tension Tendon Property |
Create Tendon placement | 3D Spline Tendon Profile | |
Input Tendon Prestress | Tendon Prestress | |
3-6 Construction Stage | Input Elements Applied to Construction Stages | C.S Act. Structure Group |
Input Loads Applied to Construction Stages | C.S Act. Load Group | |
Input Loads Deactivated During Construction Stages | C.S Deact. Load Group | |
Input Boundary Applied to Construction Stages | C.S Act. Boundary Group | |
Create Construction Stage | Define C.S | |
3-7 Update Data | Combine Common APIs | Merge Data |
Batch API Transmission to CIVIL NX | Model Builder |
5. Caution
5-1 Not Working Component
When components fail to function while using the template, check the following:
- Ensure the API connection between Grasshopper and CIVIL NX is active.
- Recheck the Base URL and MAPI-Key settings. If disconnected, re-establish the connection and refresh the template.
- Verify the connections between components. Incorrect or missing links can cause the template to malfunction.
- Refer to the GrassHopper API Online Manual – MIDAS Support for detailed connection instructions.
- Review any warning messages displayed in CIVIL NX.
- These messages often indicate issues such as unsupported data formats or missing elements.
5-2 Modeling Error
If components fail to create a model correctly in CIVIL NX, follow these steps:
- Check that all necessary input data (e.g., geometry, material properties, boundary conditions) has been entered accurately.
- Press the Recalculate button in Grasshopper to refresh all components and regenerate the API data.
[MIDAS GH] 2024. V.2.0.3 – MIDAS Support
- Use a Panel component to review the JSON data sent to CIVIL NX. Ensure that all required fields are included and formatted correctly.
- Examine the CIVIL NX log for detailed error descriptions and resolve the issues indicated.
- Verify that you are using the required versions of MIDAS GH and CIVIL NX. Update if necessary.
- Restart both Grasshopper and CIVIL NX, then retry executing the template.
If issues persist, contact MIDAS technical support for further assistance.