4.9. Tsunami Debris Motion In a Scaled Port Setting - Digital Flume (WU TWB) - MPM
Problem files |
4.9.1. Overview

This example contributes to an international comparative analysis [Bonus2025] of 3D tsunami debris hazards by configuring a Waseda University Tsunami Wave Basin (WU TWB) digital flume in HydroUQ and running a baseline MPM case (ClaymoreUW, multi-GPU). We then contrast the MPM results with companion simulations produced using SPH (DualSPHysics, GPU) and Eulerian FVM CFD (Simcenter STAR-CCM+, multi-CPU/GPU)—focusing on wave generation, debris motion and spreading, stacking interactions, and impact loads on simplified port obstacles.

The physical benchmark (1:40 Froude scaling) follows Goseberg et al. (2016b): a vacuum-controlled long wave surges over a harbor apron and mobilizes 3-6 hollow shipping-container surrogates arranged in 1-2 vertical layers against friction. Obstacle arrays (0, 1, or 2 rows of 5 square columns) are placed upstream or downstream of the debris with width = 0.66x and gap = 2.2x the debris length.

Note
This HydroUQ example runs the MPM configuration natively. Companion SPH and FVM results can be imported (optional) for side-by-side plots in the Analysis section to mirror the comparative study. Acquire said data from: PRJ-5846.
4.9.2. Set-Up
4.9.2.1. Step 1: UQ
Configure Forward sampling to explore structural/material uncertainty under a fixed hydrodynamic signal.
Engine: Dakota
Forward Propagation: Sampling method (e.g., LHS) with
samples
(e.g.,20
) and a reproducibleseed
(e.g.,1
).

4.9.2.2. Step 2: GI
Set General Information and Units consistent with experiments (length, time, density, gravity). Record project metadata.
Structure name:
Wooden Column @ WU's Tsunami Wave Basin
Units: choose a consistent set (e.g., N-m-s or kips-in-s)

Note
Keep GI, SIM, EVT, and FEM units consistent. Match MPM’s length/time scales and OpenSees integration settings (e.g., time step). Verify any force/unit conversions used during load mapping.
4.9.2.3. Step 3: SIM
The structural model is as follows: a single-story Multi-Degree-of-Freedom system (MDOF, see Multiple Degrees of Freedom (MDOF)) replicating a stiff, wooden structural box in the experimental tests.

Fig. 4.9.2.3.1 Schematic of a single-story MDOF structure representing a stiff, wooden structural box undergoing deflection from MPM derived hydrodynamic loading.
Note
The structure will be represented initially as a rigid boundary in MPM to recover local hydrodynamic forces at grid nodes for direct comparison with load-cell data. Structural dynamic response is added later by mapping these loads onto an OpenSees model defined here in the SIM panel with analysis options set in the FEM panel.
Uncertain structural properties (treated as RVs; see Step 7):
w
: Weight. Mean144
, stdev12
Bind parameters via setting alphabetic characters in the variable input boxes (e.g., w
) so the RV panel recognizes and manages them automatically.

While not necessary to have, we show the template OpenSees model for your reference. The script generated in the backend by the MDOF module resembles the following, MDOF.tcl:
Click to expand the OpenSees input file used for this example
1model BasicBuilder -ndm 3 -ndf 6
2pset w 144.0
3node 2 0 0 576 -mass $w $w 0.0 0.0 0.0 0.0
4fix 2 0 0 1 1 1 0
5node 1 0 0 0
6fix 1 1 1 1 1 1 1
7uniaxialMaterial Steel01 1 1e+06 100 0.1
8uniaxialMaterial Steel01 2 1e+06 100 0.1
9uniaxialMaterial Elastic 3 1e+10
10element zeroLength 1 1 2 -mat 1 2 3 -dir 1 2 6 -doRayleigh
4.9.2.4. Step 4: EVT
In this walk-through we will give a detailed step-by-step configuration of the MPM EVT module.
Settings
Open Settings
. Here we set the simulation time, the time step, and the grid resolution, among other pre-simulation decisions.

Bodies
Geometry
Fluid geometry
Open Bodies
/ Fluid
/ Geometry
. Here we set the geometry of the flume’s fluid. Note that it is simply a rectangular prism filling the primary flume basin.

Click Create Geometry
. We will now add another fluid geometry to represent the fluid which begins initially in the vacuum chamber reservoir. Define a rectangular prism as shown below.

Debris geometry:
Open Bodies
/ Debris
/ Geometry
. Here we set the debris properties, such as the number of debris, the size of the debris, and the spacing between the debris. Rotation is another option, though not used in this example. We’ve elected to use an 1 x 2 x 3 grid of debris (longitudinal axis parallel to long-axis of the flume) located in the upstream position from Goseberg et al. 2016.

Material
Fluid material:
Open Bodies
/ Fluid
/ Material
. Here we set the material properties of the fluid. You may choose to use a realistic bulk modulus value of 2.1 GPa for the water, or you may soften it to 0.21 GPa to accelerate the simulation and reduce numerical stiffness with fairly minimal changes in our final results.

Debris material:
Moving onto the creation of an ordered debris array, we set the debris properties in the Bodies
/ Debris
/ Material
tab. We will assume debris are made of hollow HDPE plastic, reducing effective density from approximately 987 kg/m3 to 419 kg/m3, as in [Bonus2025].

Algorithm
Open Bodies
/ Fluid
/ Algorithm
. Here we set the algorithm parameters for the simulation. This is an advanced feature of the MPM module, it is best not to alter it too much. We choose to apply F-Bar antilocking to aid in the pressure field’s accuracy on the fluid. The associated toggle must be checked, and the antilocking ratio set to 0.9, loosely. For full bulk modulus water, you may need to increase this value to alleviate numerical stiffness.

In Bodies
/ Debris
/ Algorithm
we set debris for compatibility with the fluid as follows: ASFLIP is turned on and F-Bar antilocking is turned off. We keep ASFLIP tuning values at their default of zero as we do not need advanced behavior in this example. Turning on ASFLIP is what allows us to apply friction to the debris particles as they are mobilized across the harbor floor.

Partitions:
Open Bodies
/ Fluid
/ Partitions
. This is an advanced feature of the MPM module which allows us to partition material bodies across hardware devices to optimize simulations. These may be kept as their default values, which have already been set for compatibility on the remote HPC system.

Next, Bodies
/ Debris
/ Partitions
defines a partition where the debris may exist in our flume domain and defines the hardware device (i.e., GPU) that they will be simulated on. Keep this as the default unless you are an advanced user.

Structure:
Finally, open Bodies
/ Structures
. Uncheck the box that enables this body. We will not model the structure as a deformable MPM material body in this example, instead, we will approximate it as a rigid MPM boundary a few steps from now. After the MPM simulation we will map loads from the boundary to an OpenSees structure for structural analysis, see Steps 3 and 5 for configuration.

Fig. 4.9.2.4.1 HydroUQ Bodies Structures GUI
Boundaries
Wave Flume boundary:
Open Boundaries
/ Flume Facility
. We will set the flume boundary to be a rigid body, with a fixed separable velocity condition. Bathymetry joint points should be identical to the ones used in Bodies
/ Fluid
/ Geometry
. We also set friction coefficients of 0.4
to replicate the experiments, which concerned HDPE plastic debris on rough plywood flooring.

Wave Generator:
Open Boundaries
/ Wave Generator
. We will use this boundary to define the front-wall of the fluid reservoir vacuum chamber by defining a rectangular prism, as shown below.

Rigid Structure:
Open Boundaries
/ Rigid Structure
. This is where we will specify the structure as a boundary condition. By doing so, we can determine the exact loads on the rigid boundary grid-nodes, which automatically map to the model defined in the SIM and FEM tab in Steps 3 and 5 for potentially nonlinear UQ structural response analysis. Note that we elect to define a 2 x 5 array of structures to match one of the cases from Goseberg et al. 2016, but other arrangements are available. The front-row, central obstacle is the one which we will perform our structural analysis workflow on later.

Rigid Walls:
Open Boundaries
/ Rigid Walls
. Set to encompass the flume domain.

Sensors
Wave Gauges:
Open Sensors
/ Wave Gauges
. Set the Use these sensor?
box to True
so that the simulation will output results for the instruments we set on this page.
Four wave gauges will be defined in the far-field by the vacuum chamber (WG1), mid-field near the harbor quay wall (WG2), above the harbor near the upstream debris (WG3), and amidst the scaled port obstacles (WG4).
Set the origins and dimensions of each wave gauge to encompass at least one grid-cell in each direction as in the table below. To match experimental conditions, we also apply a 30 Hz sampling rate to the wave gauges.

These wave gauges will read all numerical bodies (i.e. particles) within their defined regions at every sampling step and will report the highest elevation value (Position Y) of a contained body as the free-surface elevation at that gauge. The results are written into our sensor results files which we will later analyze.
Load Cells:
Open Sensors
/ Load Cells
. Set the Use these sensor?
box to True
so that the simulation will output results for the instruments we set on this page. Two load cells are defined so that we may map loads onto two nodes of our OpenSees structural model which we defined in Steps 3 and 5. Output frequency is set to 120 Hz to improve upon experiments by capturing primary load phenomena. Note that the original experiments did not have structure mounted load cells, but rather 30 Hz accelerometers equipped on each debris which were used to infer partial structural loads.

Outputs
Open Outputs
. Here we set the non-physical output parameters for the simulation, e.g. attributes to save per frame and file extension types. The particle bodies’ output frequency is set to 2 Hz, meaning the simulation will output results every 0.5 seconds. This is to save disk space and reduce I/O load, but it may be increased if you wish to make animations (e.g., 10 - 30 Hz). Fill the rest of the data in the figure into your GUI to ensure all your outputs match this example. You may alter output attributes if you are an advanced user familiar with ClaymoreUW attributes and wish to perform more advanced analysis.

4.9.2.5. Step 5: FEM
This example insofar focused on hydrodynamic forces measured on rigid structures. To perform true structural response analysis, map recovered boundary loads to an OpenSees model in SIM and configure dynamic analysis here as in other HydroUQ tutorials.
Solver: OpenSees dynamic analysis. Check:
Integration step compatible with MPM sensor output interval.
Algorithm/convergence tolerances suitable for expected nonlinearity.
Damping model as needed (e.g., Rayleigh).

4.9.2.6. Step 6: EDP
Select Engineering Demand Parameters (EDPs) to summarize response:
Peak Floor Acceleration (PFA)
Root Mean Square Acceleration (RMSA)
Peak Floor Displacement (PFD)
Peak Interstory Drift (PID)

Note that other quantities of interest (QoI) are theoretically obtainable from HydroUQ, if the custom EDP module is configured. E.g.:
Wave: max free-surface elevation η(t) at gauges.
Debris motion: longitudinal displacement (forward/back), lateral spreading angle, stack interaction metrics (contact counts/overturns).
Loads: obstacle force time histories (impact peaks, impulses).
4.9.2.7. Step 7: RV
Define distributions for structural RV:
Structural
w
: Normal (mean144
, stdev12
)

For future UQ, consider:
Structure: stiffness variance, eccentricity, multi-story floor variance
Debris: mass variance, friction coefficients (debris-apron, debris-debris).
Wave: amplitude/period tolerance relative to vacuum-maker target.
Obstacles: small misalignment/placement tolerance.
4.9.3. Simulation
This case was executed on TACC Stampede3 using 2x NVIDIA H100 GPUs on a single node (queue: h100
).
Simulated physical time: 15 seconds. Wall time: 90 minutes (allow ample Max Run Time in job settings).
Important
Provide generous Max Run Time, on the order of 60 to 90 minutes, to complete the run and post-processing before scheduler limits are reached.
Warning
Keep sensor regions, counts, sampling rates, and output frequencies reasonable—excess I/O can dominate runtime.
Outputs
Sensor CSVs (gauges, debris CoM, loads) at your chosen rates.
Particle/field snapshots (e.g., BGEO/VTK) for visualization/diagnostics.
4.9.4. Analysis
Accessing Results and Simulation Files
When the simulation job has been completed, the results and simulation files will be available on the remote system for retrieval or remote post-processing.
Retrieving the results.zip
, templatedir.zip
, workdir.tar.gz
, and MPM
folders will allow you to analyze all of the simulation output (e.g., hydrodynamic, structural, uncertainty quantification).
results.zip
: Contains primary uncertainty quantification output and MPM sensor files. This will be the primary place for analysis.templatedir.zip
: Contains template and workflow files for the job. This is an important resource for debugging your workflows.workdir.tar.gz
: Contains the working directories in which each unique simulation was ran. This is where structural response uncertainty is expanded on typically.MPM
: Contains all the MPM simulation files. Includes the raw particle output frames which can be used to create animations or to perform more advanced post-processing.
The most straightforward way to retrieve the most important files, results.zip
and templatedir.zip
, is by clicking the GET From DesignSafe
button in HydroUQ
.

Fig. 4.9.4.1 HydroUQ GET From DesignSafe
button, which opens up a jobs table of all your remote simulations.
Then, right-click on your job (if it is finished) and select Retrieve Data
. This will download results.zip
and templatedir.zip
.

Fig. 4.9.4.2 Locating the Retrieve Data
button in the HydroUQ remote jobs table.
HydroUQ will then automatically unzip them into results
and templatedir
, which will be located in {your_path}/HydroUQ/RemoteWorkDir/tmp.SimCenter
. On most systems, this will be ~/Documents/HydroUQ/RemoteWorkDir/tmp.SimCenter
, but you can check by clicking on Files
/ Preferences
on the upper-left corner of HydroUQ.
To retrieve workdir.tar.gz
and MPM
, there are two approaches:
You can right-click on your job within HydroUQ and select
Open Job Folder
to be taken directly to the Design Safe web-page displaying all remote files.

Fig. 4.9.4.3 Locating the Open Job Folder
button in the HydroUQ remote jobs table.
You can manually navigate to the designsafe-ci.org website. For the latter, login and go to
Upper-right Drop-down
/Job Status
.

Fig. 4.9.4.4 Locating the job files on DesignSafe
Check if the job has finished in the central vertical drawer by refreshing the page. If it has, click View Details
.

Fig. 4.9.4.5 Job status is finished on DesignSafe
Once the job is finished, the output files should be available in the directory which the analysis results were sent to
Find the files by clicking View Output
.

Fig. 4.9.4.6 Viewing the job files on DesignSafe
After navigating to your job folder by one of two ways, it is time to move files for processing. Move important files to somewhere in My Data/
for easier processing. Use the extractor tool available on DesignSafe to unzip the results.zip
, workdir.tar.gz
, and templatedir.zip
folders natively on DesignSafe.

Fig. 4.9.4.7 Extracting the results.zip
folder on DesignSafe
Alternatively, you may directly download the zipped folders to your PC, which will require you to use the DesignSafe zip tool on the MPM
folder prior.

Fig. 4.9.4.8 Download button on DesignSafe shown in red
Locate the downloaded zip folders and extract them somewhere convenient. The HydroUQ local or remote work directory on your computer is a good option.
Warning
Files in the HydroUQ local and remote working directories may be erased if another simulation is set up in HydroUQ, so keep a backup if you wish to maintain the files.
Particle geometry files often have a BGEO
extension and are located in the MPM
folder. Open with Side FX Houdini Apprentice (free to use) to look at MPM results in high-detail, or use the PartIO library.
HydroUQ’s sensor/probe/instrument output is available in {your_path}/HydroUQ/RemoteWorkDir/tmp.SimCenter/results/
as CSV
files. You may process these files as you wish, most opt to use custom Python scripts or Excel due to their simplicity.
Note
For convenience, HydroUQ also includes basic plotting of all sensors files in the EVT
/ Results
tab. Click Post-Process Sensors
, configure the drop-down boxes for the sensor you wish to view, and then click Plot
.
Plotting the wave gauges shows the development of a tsunami-like wave as it propagates from the vacuum-chamber over the harbor bathymetry.

Fig. 4.9.4.9 Simulated free-surface elevations at three wave gauges in MPM.
Load-cell data shows an initially high peak force from debris impact, followed by some damming forces and eventually just hydrodynamic drag.

Fig. 4.9.4.10 Simulated load-cell forces in MPM. These are later mapped onto an OpenSees structure for dynamic response analysis.
While this example concerned a quick-to-run simulation with around a million particles at a grid-resolution of 0.1 meters, higher resolution cases with 100 million particles and 0.01 meter cells are possible on remote HPC systems, including Stampede3 and Lonestar6. Below we show simulation results at these specifications from [Bonus2025] compared against experiments to demonstrate the benefit of increased resolution. These simulations took 24 hours to complete.
Note
This HydroUQ example runs the MPM configuration natively. Companion SPH and FVM results can be imported (optional) for side-by-side plots in the Analysis section to mirror the comparative study. Acquire said data from: PRJ-5846.
Wave generation (η at gauges)

Debris kinematics


Obstacle loading

Structural Analysis
Returning to our primary HydroUQ workflow, which concerns uncertainty in structural response, we may now view the final results in the RES tab. Clicking Summary
on the top-bar, a statistical summary of results is shown below:

Clicking Data Values
on the top-bar shows detailed histograms, cumulative distribution functions, and scatter plots relating the dependent and independent variables:
Note
In the Data Values tab, left- and right-click column headers to change plot axes; selecting a single column with both clicks displays frequency and CDF plots.



Note
Use consistent Froude similitude scaling when comparing numerical simulations, experiments, and full-scale scenarios. For cross-method comparisons, adopt identical debris footprints, friction models, probe placement, and other pertinent parameters to reduce bias.
For more advanced analysis, export results as a CSV file by clicking Save Table
on the upper-right of the application window. This will save the independent and dependent variable data. I.e., the Random Variables you defined and the Engineering Demand Parameters determined from the structural response per each simulation.
To save your simulation configuration with results included, click File
/ Save As
and specify a location for the HydroUQ JSON input file to be recorded to. You may then reload the file at a later time by clicking File
/ Open
. You may also send it to others by email or place it in an online repository for research reproducibility. This example’s input file is viewable at Reproducibility.
To directly share your simulation job and results in HydroUQ with other DesignSafe users, click GET from DesignSafe
. Then, navigate to the row with your job and right-click it. Select Share Job
. You may then enter the DesignSafe username or usernames (comma-separated) to share with.
Important
Sharing a job requires that the job was initially ran with an Archive System ID
(listed in the GET from DesignSafe
table’s columns) that is not designsafe.storage.default
. Any other Archive System ID
allows for sharing with DesignSafe members on the associated project. See Jobs for more details.
4.9.5. Conclusions
This WU TWB digital flume example shows how HydroUQ can stage a state-of-the-art MPM debris simulation and compare against SPH and FVM counterparts for a 1:40 scaled port setting. Across wave generation, debris motion/spreading, stacking, and obstacle impacts, each method exhibits distinct strengths. The shared benchmark and open-sourced digital twins enable transparent cross-interrogation and lay groundwork for statistical synthesis across methods and experiments.
4.9.6. References
Goseberg, N., Stolle, J., Nistor, I., & Shibayama, T. (2016). Experimental analysis of debris motion due the obstruction from fixed obstacles in tsunami-like flow conditions. Coastal Engineering, 118, 35-49. https://doi.org/https://doi.org/10.1016/j.coastaleng.2016.08.012
Goseberg Nils and Stolle, J. and N. I. and S. T. and S. F. and K. C. (2023). Experimental dataset describing the debris motion due to the obstruction from fixed obstacles in tsunami-like flow conditions. https://doi.org/10.24355/dbbs.084-202303091524-0
Bonus, Justin (2023). “Evaluation of Fluid-Driven Debris Impacts in a High-Performance Multi-GPU Material Point Method.” PhD thesis. University of Washington, Seattle.
Justin Bonus, Felix Spröer, Andrew Winter, Pedro Arduino, Clemens Krautwald, Michael Motley, Nils Goseberg (2025). “Tsunami Debris Motion and Loads in a Scaled Port Setting: Comparative Analysis of Three State-of-the-Art Methods Against Experiments.” Coastal Engineering. Volume 197. https://doi.org/10.1016/j.coastaleng.2024.104672.
Bonus, J., & Arduino, P. (2025). ClaymoreUW. Zenodo. https://doi.org/10.5281/zenodo.15128706
4.9.7. Reproducibility
Random seed(s):
1
(if using Forward samples)App version: HydroUQ v4.2.0 (or current)
Solvers: - MPM: ClaymoreUW (multi-GPU) - SPH: DualSPHysics (GPU) — imported for comparison - FVM: Simcenter STAR-CCM+ (multi-CPU/GPU) — imported for comparison
Hardware (example): TACC Stampede3, 2x H100 (single node)
Simulated time: 15 s; Wall time: 1 h 30 m
Sensors: gauges (η), debris CoM, obstacle load-cells; outputs at moderate rates
Input: The HydroUQ input file is as follows: input.json , is used:
Click to expand the HydroUQ input file used for this example
1{
2 "Applications": {
3 "EDP": {
4 "Application": "StandardEDP",
5 "ApplicationData": {
6 }
7 },
8 "Events": [
9 {
10 "Application": "MPM",
11 "ApplicationData": {
12 },
13 "EventClassification": "Hydro",
14 "defaultMaxRunTime": "1440",
15 "driverFile": "sc_driver",
16 "inputFile": "scInput.json",
17 "maxRunTime": "120",
18 "programFile": "osu_lwf",
19 "publicDirectory": "./"
20 }
21 ],
22 "Modeling": {
23 "Application": "MDOF_BuildingModel",
24 "ApplicationData": {
25 }
26 },
27 "Simulation": {
28 "Application": "OpenSees-Simulation",
29 "ApplicationData": {
30 }
31 },
32 "UQ": {
33 "Application": "Dakota-UQ",
34 "ApplicationData": {
35 }
36 }
37 },
38 "DefaultValues": {
39 "driverFile": "driver",
40 "edpFiles": [
41 "EDP.json"
42 ],
43 "filenameAIM": "AIM.json",
44 "filenameDL": "BIM.json",
45 "filenameEDP": "EDP.json",
46 "filenameEVENT": "EVENT.json",
47 "filenameSAM": "SAM.json",
48 "filenameSIM": "SIM.json",
49 "rvFiles": [
50 "AIM.json",
51 "SAM.json",
52 "EVENT.json",
53 "SIM.json"
54 ],
55 "workflowInput": "scInput.json",
56 "workflowOutput": "EDP.json"
57 },
58 "EDP": {
59 "type": "StandardEDP"
60 },
61 "Events": [
62 {
63 "Application": "MPM",
64 "EventClassification": "Hydro",
65 "example": "WU TWB",
66 "bodies": [
67 {
68 "algorithm": {
69 "ASFLIP_alpha": 0,
70 "ASFLIP_beta_max": 0,
71 "ASFLIP_beta_min": 0,
72 "FBAR_fused_kernel": true,
73 "FBAR_psi": 0.9,
74 "ppc": 8,
75 "type": "particles",
76 "use_ASFLIP": false,
77 "use_FBAR": true
78 },
79 "geometry": [
80 {
81 "apply_array": false,
82 "apply_rotation": false,
83 "body_preset": "Fluid",
84 "facility": "Waseda University's Tsunami Wave Basin (WU TWB)",
85 "facility_dimensions": [
86 9,
87 1,
88 4
89 ],
90 "fill_flume_upto_SWL": true,
91 "object": "Box",
92 "offset": [
93 0,
94 0,
95 0
96 ],
97 "operation": "add",
98 "span": [
99 4.45,
100 0.23,
101 4
102 ],
103 "standing_water_level": 0.23,
104 "track_particle_id": [
105 "0"
106 ],
107 "use_custom_bathymetry": false
108 },
109 {
110 "operation": "add",
111 "object": "Box",
112 "apply_array": false,
113 "apply_rotation": false,
114 "body_preset": "Fluid",
115 "facility": "Waseda University's Tsunami Wave Basin (WU TWB)",
116 "facility_dimensions": [
117 9,
118 1,
119 4
120 ],
121 "offset": [
122 0,
123 0.23,
124 0
125 ],
126 "span": [
127 0.5,
128 0.67,
129 4.0
130 ],
131 "spacing": [
132 0.0,
133 0.0,
134 0.0
135 ],
136 "array": [
137 1,
138 1,
139 1
140 ],
141 "rotate": [
142 0,
143 0,
144 0
145 ],
146 "fulcrum": [
147 0,
148 0,
149 0
150 ],
151 "track_particle_id": [
152 "0"
153 ],
154 "fill_flume_upto_SWL": false,
155 "use_custom_bathymetry": false,
156 "standing_water_level": 0.9
157 }
158 ],
159 "gpu": 0,
160 "material": {
161 "CFL": 0.5,
162 "bulk_modulus": 21000000,
163 "constitutive": "JFluid",
164 "gamma": 7.15,
165 "material_preset": "Water (Fresh)",
166 "rho": 1000,
167 "viscosity": 0.001
168 },
169 "model": 0,
170 "name": "fluid",
171 "output_attribs": [
172 "ID",
173 "Pressure"
174 ],
175 "partition": [
176 {
177 "gpu": 0,
178 "model": 0,
179 "partition_end": [
180 9,
181 0.23,
182 4
183 ],
184 "partition_start": [
185 0,
186 0,
187 0
188 ]
189 },
190 {
191 "gpu": 1,
192 "model": 0,
193 "partition_end": [
194 0.5,
195 0.9,
196 4
197 ],
198 "partition_start": [
199 0,
200 0.23,
201 0
202 ]
203 },
204 {
205 "gpu": 2,
206 "model": 0,
207 "partition_end": [
208 9,
209 0.23,
210 8
211 ],
212 "partition_start": [
213 0,
214 0,
215 4
216 ]
217 }
218 ],
219 "partition_end": [
220 9,
221 0.23,
222 4
223 ],
224 "partition_start": [
225 0,
226 0,
227 0
228 ],
229 "target_attribs": [
230 "Position_Y"
231 ],
232 "track_attribs": [
233 "Position_X",
234 "Position_Z",
235 "Pressure"
236 ],
237 "track_particle_id": [
238 0
239 ],
240 "type": "particles",
241 "velocity": [
242 0,
243 0,
244 0
245 ]
246 },
247 {
248 "algorithm": {
249 "ASFLIP_alpha": 0,
250 "ASFLIP_beta_max": 0,
251 "ASFLIP_beta_min": 0,
252 "FBAR_fused_kernel": true,
253 "FBAR_psi": 0,
254 "ppc": 8,
255 "type": "particles",
256 "use_ASFLIP": true,
257 "use_FBAR": false
258 },
259 "geometry": [
260 {
261 "apply_array": true,
262 "apply_rotation": false,
263 "array": [
264 1,
265 2,
266 3
267 ],
268 "body_preset": "Debris",
269 "facility": "Waseda University's Tsunami Wave Basin (WU TWB)",
270 "facility_dimensions": [
271 9,
272 1,
273 4
274 ],
275 "fulcrum": [
276 0,
277 0,
278 0
279 ],
280 "object": "Box",
281 "offset": [
282 4.65,
283 0.255,
284 1.715
285 ],
286 "operation": "add",
287 "rotate": [
288 0,
289 0,
290 0
291 ],
292 "spacing": [
293 0.12,
294 0.12,
295 0.21
296 ],
297 "span": [
298 0.06,
299 0.06,
300 0.15
301 ],
302 "track_particle_id": [
303 "0"
304 ]
305 }
306 ],
307 "gpu": 0,
308 "material": {
309 "CFL": 0.5,
310 "constitutive": "FixedCorotated",
311 "material_preset": "Plastic",
312 "poisson_ratio": 0.3,
313 "rho": 981,
314 "youngs_modulus": 10000000
315 },
316 "model": 1,
317 "name": "debris",
318 "output_attribs": [
319 "ID",
320 "Pressure",
321 "Velocity_X",
322 "Velocity_Y",
323 "Velocity_Z"
324 ],
325 "partition": [
326 {
327 "gpu": 0,
328 "model": 1,
329 "partition_end": [
330 9,
331 1,
332 4
333 ],
334 "partition_start": [
335 0,
336 0,
337 0
338 ]
339 }
340 ],
341 "partition_end": [
342 9,
343 1,
344 4
345 ],
346 "partition_start": [
347 0,
348 0,
349 0
350 ],
351 "target_attribs": [
352 "Position_Y"
353 ],
354 "track_attribs": [
355 "Position_X",
356 "Position_Z",
357 "Pressure"
358 ],
359 "track_particle_id": [
360 0
361 ],
362 "type": "particles",
363 "velocity": [
364 0,
365 0,
366 0
367 ]
368 },
369 {
370 "algorithm": {
371 "ASFLIP_alpha": 0,
372 "ASFLIP_beta_max": 0,
373 "ASFLIP_beta_min": 0,
374 "FBAR_fused_kernel": true,
375 "FBAR_psi": 0.9,
376 "ppc": 8,
377 "type": "particles",
378 "use_ASFLIP": false,
379 "use_FBAR": true
380 },
381 "geometry": [
382 {
383 "apply_array": false,
384 "apply_rotation": false,
385 "body_preset": "Fluid",
386 "facility": "Waseda University's Tsunami Wave Basin (WU TWB)",
387 "facility_dimensions": [
388 9,
389 1,
390 4
391 ],
392 "fill_flume_upto_SWL": true,
393 "object": "Box",
394 "offset": [
395 0,
396 0,
397 0
398 ],
399 "operation": "add",
400 "span": [
401 4.45,
402 0.23,
403 4
404 ],
405 "standing_water_level": 0.23,
406 "track_particle_id": [
407 "0"
408 ],
409 "use_custom_bathymetry": false
410 },
411 {
412 "operation": "add",
413 "object": "Box",
414 "apply_array": false,
415 "apply_rotation": false,
416 "body_preset": "Fluid",
417 "facility": "Waseda University's Tsunami Wave Basin (WU TWB)",
418 "facility_dimensions": [
419 9,
420 1,
421 4
422 ],
423 "offset": [
424 0,
425 0.23,
426 0
427 ],
428 "span": [
429 0.5,
430 0.67,
431 4.0
432 ],
433 "spacing": [
434 0.0,
435 0.0,
436 0.0
437 ],
438 "array": [
439 1,
440 1,
441 1
442 ],
443 "rotate": [
444 0,
445 0,
446 0
447 ],
448 "fulcrum": [
449 0,
450 0,
451 0
452 ],
453 "track_particle_id": [
454 "0"
455 ],
456 "fill_flume_upto_SWL": false,
457 "use_custom_bathymetry": false,
458 "standing_water_level": 0.9
459 }
460 ],
461 "gpu": 1,
462 "material": {
463 "CFL": 0.5,
464 "bulk_modulus": 21000000,
465 "constitutive": "JFluid",
466 "gamma": 7.15,
467 "material_preset": "Water (Fresh)",
468 "rho": 1000,
469 "viscosity": 0.001
470 },
471 "model": 0,
472 "name": "fluid",
473 "output_attribs": [
474 "ID",
475 "Pressure"
476 ],
477 "partition": [
478 {
479 "gpu": 0,
480 "model": 0,
481 "partition_end": [
482 9,
483 0.23,
484 4
485 ],
486 "partition_start": [
487 0,
488 0,
489 0
490 ]
491 },
492 {
493 "gpu": 1,
494 "model": 0,
495 "partition_end": [
496 0.5,
497 0.9,
498 4
499 ],
500 "partition_start": [
501 0,
502 0.23,
503 0
504 ]
505 },
506 {
507 "gpu": 2,
508 "model": 0,
509 "partition_end": [
510 9,
511 0.23,
512 8
513 ],
514 "partition_start": [
515 0,
516 0,
517 4
518 ]
519 }
520 ],
521 "partition_end": [
522 0.5,
523 0.9,
524 4.0
525 ],
526 "partition_start": [
527 0,
528 0,
529 0
530 ],
531 "target_attribs": [
532 "Position_Y"
533 ],
534 "track_attribs": [
535 "Position_X",
536 "Position_Z",
537 "Pressure"
538 ],
539 "track_particle_id": [
540 0
541 ],
542 "type": "particles",
543 "velocity": [
544 0,
545 0,
546 0
547 ]
548 },
549 {
550 "algorithm": {
551 "ASFLIP_alpha": 0,
552 "ASFLIP_beta_max": 0,
553 "ASFLIP_beta_min": 0,
554 "FBAR_fused_kernel": true,
555 "FBAR_psi": 0.9,
556 "ppc": 8,
557 "type": "particles",
558 "use_ASFLIP": false,
559 "use_FBAR": true
560 },
561 "geometry": [
562 {
563 "apply_array": false,
564 "apply_rotation": false,
565 "body_preset": "Fluid",
566 "facility": "Waseda University's Tsunami Wave Basin (WU TWB)",
567 "facility_dimensions": [
568 9,
569 1,
570 4
571 ],
572 "fill_flume_upto_SWL": true,
573 "object": "Box",
574 "offset": [
575 0,
576 0,
577 0
578 ],
579 "operation": "add",
580 "span": [
581 4.45,
582 0.23,
583 4
584 ],
585 "standing_water_level": 0.23,
586 "track_particle_id": [
587 "0"
588 ],
589 "use_custom_bathymetry": false
590 },
591 {
592 "operation": "add",
593 "object": "Box",
594 "apply_array": false,
595 "apply_rotation": false,
596 "body_preset": "Fluid",
597 "facility": "Waseda University's Tsunami Wave Basin (WU TWB)",
598 "facility_dimensions": [
599 9,
600 1,
601 4
602 ],
603 "offset": [
604 0,
605 0.23,
606 0
607 ],
608 "span": [
609 0.5,
610 0.67,
611 4.0
612 ],
613 "spacing": [
614 0.0,
615 0.0,
616 0.0
617 ],
618 "array": [
619 1,
620 1,
621 1
622 ],
623 "rotate": [
624 0,
625 0,
626 0
627 ],
628 "fulcrum": [
629 0,
630 0,
631 0
632 ],
633 "track_particle_id": [
634 "0"
635 ],
636 "fill_flume_upto_SWL": false,
637 "use_custom_bathymetry": false,
638 "standing_water_level": 0.9
639 }
640 ],
641 "gpu": 2,
642 "material": {
643 "CFL": 0.5,
644 "bulk_modulus": 21000000,
645 "constitutive": "JFluid",
646 "gamma": 7.15,
647 "material_preset": "Water (Fresh)",
648 "rho": 1000,
649 "viscosity": 0.001
650 },
651 "model": 0,
652 "name": "fluid",
653 "output_attribs": [
654 "ID",
655 "Pressure"
656 ],
657 "partition": [
658 {
659 "gpu": 0,
660 "model": 0,
661 "partition_end": [
662 9,
663 0.23,
664 4
665 ],
666 "partition_start": [
667 0,
668 0,
669 0
670 ]
671 },
672 {
673 "gpu": 1,
674 "model": 0,
675 "partition_end": [
676 0.5,
677 0.9,
678 4
679 ],
680 "partition_start": [
681 0,
682 0.23,
683 0
684 ]
685 },
686 {
687 "gpu": 2,
688 "model": 0,
689 "partition_end": [
690 9,
691 0.23,
692 8
693 ],
694 "partition_start": [
695 0,
696 0,
697 4
698 ]
699 }
700 ],
701 "partition_end": [
702 9.0,
703 0.23,
704 8
705 ],
706 "partition_start": [
707 0,
708 0,
709 4
710 ],
711 "target_attribs": [
712 "Position_Y"
713 ],
714 "track_attribs": [
715 "Position_X",
716 "Position_Z",
717 "Pressure"
718 ],
719 "track_particle_id": [
720 0
721 ],
722 "type": "particles",
723 "velocity": [
724 0,
725 0,
726 0
727 ]
728 }
729 ],
730 "boundaries": [
731 {
732 "contact": "Separable",
733 "domain_end": [
734 9,
735 1,
736 4
737 ],
738 "domain_start": [
739 0,
740 0,
741 0
742 ],
743 "friction_dynamic": 0.4,
744 "friction_static": 0.4,
745 "object": "TOKYO Harbor",
746 "use_custom_bathymetry": false
747 },
748 {
749 "contact": "Separable",
750 "domain_end": [
751 0.56,
752 1,
753 4
754 ],
755 "domain_start": [
756 0.5,
757 0.15,
758 0
759 ],
760 "friction_dynamic": 0,
761 "friction_static": 0,
762 "object": "Box"
763 },
764 {
765 "array": [
766 2,
767 1,
768 5
769 ],
770 "contact": "Separable",
771 "domain_end": [
772 5.21,
773 0.5549999999999999,
774 1.4000000000000001
775 ],
776 "domain_start": [
777 5.11,
778 0.255,
779 1.3
780 ],
781 "friction_dynamic": 0,
782 "friction_static": 0,
783 "object": "Box",
784 "spacing": [
785 0.45,
786 0.4,
787 0.325
788 ]
789 },
790 {
791 "contact": "Separable",
792 "domain_end": [
793 9,
794 1,
795 4
796 ],
797 "domain_start": [
798 0,
799 0,
800 0
801 ],
802 "friction_dynamic": 0,
803 "friction_static": 0,
804 "object": "Walls"
805 }
806 ],
807 "computer": {
808 "hpc": "TACC - UT Austin - Lonestar6",
809 "hpc_card_architecture": "Ampere",
810 "hpc_card_brand": "NVIDIA",
811 "hpc_card_compute_capability": 80,
812 "hpc_card_global_memory": 40,
813 "hpc_card_name": "A100",
814 "hpc_queue": "gpu-a100",
815 "models_per_gpu": 3,
816 "num_gpus": 3
817 },
818 "grid-sensors": [
819 {
820 "attribute": "Force",
821 "direction": "X+",
822 "domain_end": [
823 5.14,
824 0.405,
825 2.05
826 ],
827 "domain_start": [
828 5.11,
829 0.24,
830 1.95
831 ],
832 "name": "LoadCell1",
833 "operation": "Sum",
834 "output_frequency": 120,
835 "preset": "Load-Cells",
836 "summary": [
837 [
838 "LoadCell1",
839 5.11,
840 0.24,
841 1.95,
842 0.03,
843 0.165,
844 0.1
845 ],
846 [
847 "LoadCell2",
848 5.11,
849 0.405,
850 1.95,
851 0.03,
852 0.15,
853 0.1
854 ]
855 ],
856 "toggle": true,
857 "type": "grid"
858 },
859 {
860 "attribute": "Force",
861 "direction": "X+",
862 "domain_end": [
863 5.14,
864 0.555,
865 2.05
866 ],
867 "domain_start": [
868 5.11,
869 0.405,
870 1.95
871 ],
872 "name": "LoadCell2",
873 "operation": "Sum",
874 "output_frequency": 120,
875 "preset": "Load-Cells",
876 "summary": [
877 [
878 "LoadCell1",
879 5.11,
880 0.24,
881 1.95,
882 0.03,
883 0.165,
884 0.1
885 ],
886 [
887 "LoadCell2",
888 5.11,
889 0.405,
890 1.95,
891 0.03,
892 0.15,
893 0.1
894 ]
895 ],
896 "toggle": true,
897 "type": "grid"
898 }
899 ],
900 "outputs": {
901 "bodies_output_freq": 2,
902 "bodies_save_suffix": "BGEO",
903 "boundaries_output_freq": 30,
904 "boundaries_save_suffix": "OBJ",
905 "checkpoints_output_freq": 1,
906 "checkpoints_save_suffix": "BGEO",
907 "energies_output_freq": 30,
908 "energies_save_suffix": "CSV",
909 "output_attribs": [
910 [
911 "ID",
912 "Pressure"
913 ],
914 [
915 "ID",
916 "Pressure",
917 "Velocity_X",
918 "Velocity_Y",
919 "Velocity_Z"
920 ],
921 [
922 "ID",
923 "Pressure",
924 "VonMisesStress",
925 "DefGrad_Invariant2",
926 "DefGrad_Invariant3"
927 ]
928 ],
929 "particles_output_exterior_only": false,
930 "sensors_save_suffix": "CSV",
931 "useKineticEnergy": false,
932 "usePotentialEnergy": false,
933 "useStrainEnergy": false
934 },
935 "particle-sensors": [
936 {
937 "attribute": "Elevation",
938 "direction": "N/A",
939 "domain_end": [
940 2.025,
941 1,
942 0.25
943 ],
944 "domain_start": [
945 2,
946 0,
947 0.225
948 ],
949 "name": "WaveGauge1",
950 "operation": "Max",
951 "output_frequency": 30,
952 "preset": "Wave-Gauges",
953 "summary": [
954 [
955 "WaveGauge1",
956 2,
957 0,
958 0.225,
959 0.025,
960 1,
961 0.025
962 ],
963 [
964 "WaveGauge2",
965 4,
966 0,
967 0.225,
968 0.025,
969 1,
970 0.025
971 ],
972 [
973 "WaveGauge3",
974 4.5,
975 0,
976 0.225,
977 0.025,
978 1,
979 0.025
980 ],
981 [
982 "WaveGauge4",
983 5.5,
984 0,
985 0.225,
986 0.025,
987 1,
988 0.025
989 ]
990 ],
991 "toggle": true,
992 "type": "particles"
993 },
994 {
995 "attribute": "Elevation",
996 "direction": "N/A",
997 "domain_end": [
998 4.025,
999 1,
1000 0.25
1001 ],
1002 "domain_start": [
1003 4,
1004 0,
1005 0.225
1006 ],
1007 "name": "WaveGauge2",
1008 "operation": "Max",
1009 "output_frequency": 30,
1010 "preset": "Wave-Gauges",
1011 "summary": [
1012 [
1013 "WaveGauge1",
1014 2,
1015 0,
1016 0.225,
1017 0.025,
1018 1,
1019 0.025
1020 ],
1021 [
1022 "WaveGauge2",
1023 4,
1024 0,
1025 0.225,
1026 0.025,
1027 1,
1028 0.025
1029 ],
1030 [
1031 "WaveGauge3",
1032 4.5,
1033 0,
1034 0.225,
1035 0.025,
1036 1,
1037 0.025
1038 ],
1039 [
1040 "WaveGauge4",
1041 5.5,
1042 0,
1043 0.225,
1044 0.025,
1045 1,
1046 0.025
1047 ]
1048 ],
1049 "toggle": true,
1050 "type": "particles"
1051 },
1052 {
1053 "attribute": "Elevation",
1054 "direction": "N/A",
1055 "domain_end": [
1056 4.525,
1057 1,
1058 0.25
1059 ],
1060 "domain_start": [
1061 4.5,
1062 0,
1063 0.225
1064 ],
1065 "name": "WaveGauge3",
1066 "operation": "Max",
1067 "output_frequency": 30,
1068 "preset": "Wave-Gauges",
1069 "summary": [
1070 [
1071 "WaveGauge1",
1072 2,
1073 0,
1074 0.225,
1075 0.025,
1076 1,
1077 0.025
1078 ],
1079 [
1080 "WaveGauge2",
1081 4,
1082 0,
1083 0.225,
1084 0.025,
1085 1,
1086 0.025
1087 ],
1088 [
1089 "WaveGauge3",
1090 4.5,
1091 0,
1092 0.225,
1093 0.025,
1094 1,
1095 0.025
1096 ],
1097 [
1098 "WaveGauge4",
1099 5.5,
1100 0,
1101 0.225,
1102 0.025,
1103 1,
1104 0.025
1105 ]
1106 ],
1107 "toggle": true,
1108 "type": "particles"
1109 },
1110 {
1111 "attribute": "Elevation",
1112 "direction": "N/A",
1113 "domain_end": [
1114 5.525,
1115 1,
1116 0.25
1117 ],
1118 "domain_start": [
1119 5.5,
1120 0,
1121 0.225
1122 ],
1123 "name": "WaveGauge4",
1124 "operation": "Max",
1125 "output_frequency": 30,
1126 "preset": "Wave-Gauges",
1127 "summary": [
1128 [
1129 "WaveGauge1",
1130 2,
1131 0,
1132 0.225,
1133 0.025,
1134 1,
1135 0.025
1136 ],
1137 [
1138 "WaveGauge2",
1139 4,
1140 0,
1141 0.225,
1142 0.025,
1143 1,
1144 0.025
1145 ],
1146 [
1147 "WaveGauge3",
1148 4.5,
1149 0,
1150 0.225,
1151 0.025,
1152 1,
1153 0.025
1154 ],
1155 [
1156 "WaveGauge4",
1157 5.5,
1158 0,
1159 0.225,
1160 0.025,
1161 1,
1162 0.025
1163 ]
1164 ],
1165 "toggle": true,
1166 "type": "particles"
1167 }
1168 ],
1169 "scaling": {
1170 "cauchy_bulk_ratio": 1,
1171 "froude_length_ratio": 1,
1172 "froude_time_ratio": 1,
1173 "use_cauchy_scaling": false,
1174 "use_froude_scaling": false
1175 },
1176 "simulation": {
1177 "cauchy_bulk_ratio": 1,
1178 "cfl": 0.5,
1179 "default_dt": 0.001,
1180 "default_dx": 0.03,
1181 "domain": [
1182 9.0,
1183 1.0,
1184 4.0
1185 ],
1186 "duration": 15.0,
1187 "fps": 2,
1188 "frames": 30,
1189 "froude_scaling": 1,
1190 "froude_time_ratio": 1,
1191 "gravity": [
1192 0,
1193 -9.80665,
1194 0
1195 ],
1196 "initial_time": 0,
1197 "mirror_domain": [
1198 false,
1199 false,
1200 false
1201 ],
1202 "particles_output_exterior_only": false,
1203 "save_suffix": ".bgeo",
1204 "time": 0,
1205 "time_integration": "Explicit",
1206 "use_cauchy_scaling": false,
1207 "use_froude_scaling": false
1208 },
1209 "subtype": "MPM",
1210 "type": "MPM"
1211 }
1212 ],
1213 "GeneralInformation": {
1214 "NumberOfStories": 1,
1215 "PlanArea": 0.01,
1216 "StructureType": "S2",
1217 "YearBuilt": 2013,
1218 "depth": 0.1,
1219 "height": 0.3,
1220 "location": {
1221 "latitude": 35.7087,
1222 "longitude": 139.7196
1223 },
1224 "name": "Wooden Column @ WU's Tsunami Wave Basin",
1225 "planArea": 0.01,
1226 "stories": 1,
1227 "units": {
1228 "force": "N",
1229 "length": "m",
1230 "temperature": "C",
1231 "time": "sec"
1232 },
1233 "width": 0.1
1234 },
1235 "Modeling": {
1236 "Bx": 0.1,
1237 "By": 0.1,
1238 "Fyx": 1000000,
1239 "Fyy": 1000000,
1240 "Krz": 10000000000,
1241 "Kx": 100,
1242 "Ky": 100,
1243 "ModelData": [
1244 {
1245 "Fyx": 1000000,
1246 "Fyy": 1000000,
1247 "Ktheta": 10000000000,
1248 "bx": 0.1,
1249 "by": 0.1,
1250 "height": 144,
1251 "kx": 100,
1252 "ky": 100,
1253 "weight": "RV.w"
1254 }
1255 ],
1256 "dampingRatio": 0.02,
1257 "height": 0.615,
1258 "massX": 0,
1259 "massY": 0,
1260 "numStories": 1,
1261 "randomVar": [
1262 ],
1263 "responseX": 0,
1264 "responseY": 0,
1265 "type": "MDOF_BuildingModel",
1266 "weight": "RV.w"
1267 },
1268 "Simulation": {
1269 "Application": "OpenSees-Simulation",
1270 "algorithm": "Newton",
1271 "analysis": "Transient -numSubLevels 2 -numSubSteps 10",
1272 "convergenceTest": "NormUnbalance 1.0e-2 10",
1273 "dampingModel": "Rayleigh Damping",
1274 "firstMode": 1,
1275 "integration": "Newmark 0.5 0.25",
1276 "modalRayleighTangentRatio": 0,
1277 "numModesModal": -1,
1278 "rayleighTangent": "Initial",
1279 "secondMode": -1,
1280 "solver": "Umfpack"
1281 },
1282 "UQ": {
1283 "parallelExecution": true,
1284 "samplingMethodData": {
1285 "method": "LHS",
1286 "samples": 20,
1287 "seed": 1
1288 },
1289 "saveWorkDir": true,
1290 "uqType": "Forward Propagation"
1291 },
1292 "correlationMatrix": [
1293 1
1294 ],
1295 "localAppDir": "/home/justinbonus/SimCenter/HydroUQ/build",
1296 "randomVariables": [
1297 {
1298 "distribution": "Normal",
1299 "inputType": "Parameters",
1300 "mean": 144,
1301 "name": "w",
1302 "refCount": 1,
1303 "stdDev": 12,
1304 "value": "RV.w",
1305 "variableClass": "Uncertain"
1306 }
1307 ],
1308 "remoteAppDir": "/home/justinbonus/SimCenter/HydroUQ/build",
1309 "resultType": "SimCenterUQResultsSampling",
1310 "runType": "runningLocal",
1311 "summary": [
1312 ],
1313 "workingDir": "/home/justinbonus/Documents/HydroUQ/LocalWorkDir"
1314}