otko/examples/portal_frame.osmodel
smillmorel d01a5957b7
Some checks failed
CI / lint (push) Has been cancelled
CI / test (macos-latest, 3.10) (push) Has been cancelled
CI / test (macos-latest, 3.11) (push) Has been cancelled
CI / test (macos-latest, 3.12) (push) Has been cancelled
CI / test (ubuntu-latest, 3.10) (push) Has been cancelled
CI / test (ubuntu-latest, 3.11) (push) Has been cancelled
CI / test (ubuntu-latest, 3.12) (push) Has been cancelled
CI / test (windows-latest, 3.10) (push) Has been cancelled
CI / test (windows-latest, 3.11) (push) Has been cancelled
CI / test (windows-latest, 3.12) (push) Has been cancelled
feat: consolidate units to Metric/Imperial with unit-aware dialogs
- core/units: two dominant systems (Metric m/kN, Imperial ft/kip) with
  display conversion helpers, legacy 4-system migration in ProjectMeta
- dialogs/docks: unit-aware material, section, case, load, grid and
  results labels; diagram renderer unit labels; render controls update
- docs: add consistent_units.md; regen examples/*.osmodel artifacts
- tests: update persistence/phase8/project/unit-labels for new systems
2026-09-08 16:33:30 -04:00

529 lines
No EOL
8.7 KiB
Text

{
"schema_version": 1,
"meta": {
"name": "Portal Frame",
"description": "",
"author": "Ozan",
"units": "Metric (m, N, kg, s, Pa)"
},
"ndm": 3,
"ndf": 6,
"coord_systems": [
{
"name": "Global",
"coord": {
"origin": [
0.0,
0.0,
0.0
],
"rotation_deg": [
0.0,
0.0,
0.0
]
},
"grid": {
"x_grid_lines": [],
"y_grid_lines": [],
"z_grid_lines": [],
"visible": true,
"is_general": false,
"hide_all": false,
"glue_to_grid": false,
"bubble_size": 20
}
}
],
"nodes": [
{
"id": 1,
"name": "Base-L",
"coords": [
0.0,
0.0,
0.0
],
"mass": [
0.0,
0.0,
0.0,
0.0,
0.0,
0.0
],
"restraint": [
true,
true,
true,
true,
true,
true
]
},
{
"id": 2,
"name": "Base-R",
"coords": [
6.0,
0.0,
0.0
],
"mass": [
0.0,
0.0,
0.0,
0.0,
0.0,
0.0
],
"restraint": [
true,
true,
true,
true,
true,
true
]
},
{
"id": 3,
"name": "Top-L",
"coords": [
0.0,
0.0,
3.0
],
"mass": [
5000.0,
5000.0,
5000.0,
0.0,
0.0,
0.0
],
"restraint": [
false,
false,
false,
false,
false,
false
]
},
{
"id": 4,
"name": "Top-R",
"coords": [
6.0,
0.0,
3.0
],
"mass": [
5000.0,
5000.0,
5000.0,
0.0,
0.0,
0.0
],
"restraint": [
false,
false,
false,
false,
false,
false
]
}
],
"materials": [
{
"id": 1,
"name": "S420",
"type": "Steel01",
"Fy": 420000000.0,
"E0": 200000000000.0,
"b": 0.01,
"a1": null,
"a2": null,
"a3": null,
"a4": null
}
],
"sections": [
{
"id": 1,
"name": "W14x90",
"type": "ElasticSection",
"E": 200000000000.0,
"A": 0.017,
"Iz": 0.000416,
"Iy": 0.000129,
"G": 80000000000.0,
"J": 2.04e-06,
"shape": null
}
],
"elements": [
{
"id": 1,
"name": "Col-L",
"type": "ElasticBeamColumn",
"nodes": [
1,
3
],
"section_id": 1,
"geom_transf": "Linear",
"rho": 0.0,
"consistent_mass": false
},
{
"id": 2,
"name": "Col-R",
"type": "ElasticBeamColumn",
"nodes": [
2,
4
],
"section_id": 1,
"geom_transf": "Linear",
"rho": 0.0,
"consistent_mass": false
},
{
"id": 3,
"name": "Beam",
"type": "ElasticBeamColumn",
"nodes": [
3,
4
],
"section_id": 1,
"geom_transf": "Linear",
"rho": 0.0,
"consistent_mass": false
}
],
"mp_constraints": [],
"time_series": [
{
"id": 1,
"name": "Ramp",
"type": "Linear",
"factor": 1.0
},
{
"id": 2,
"name": "SineGust",
"type": "Path",
"factor": 1.0,
"dt": 0.01,
"times": null,
"values": [
0.0,
0.06279051952931337,
0.12533323356430426,
0.1873813145857246,
0.2486898871648548,
0.3090169943749474,
0.3681245526846779,
0.42577929156507266,
0.4817536741017153,
0.5358267949789967,
0.5877852522924731,
0.6374239897486896,
0.6845471059286886,
0.7289686274214116,
0.7705132427757893,
0.8090169943749473,
0.8443279255020151,
0.8763066800438637,
0.9048270524660196,
0.9297764858882513,
0.9510565162951535,
0.9685831611286311,
0.9822872507286886,
0.9921147013144778,
0.9980267284282716,
1.0,
0.9980267284282716,
0.9921147013144779,
0.9822872507286887,
0.9685831611286311,
0.9510565162951536,
0.9297764858882515,
0.9048270524660195,
0.8763066800438635,
0.844327925502015,
0.8090169943749475,
0.7705132427757893,
0.7289686274214114,
0.6845471059286888,
0.6374239897486899,
0.5877852522924732,
0.535826794978997,
0.4817536741017152,
0.4257792915650729,
0.36812455268467814,
0.3090169943749475,
0.24868988716485524,
0.18738131458572457,
0.12533323356430454,
0.06279051952931358,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0,
0.0
],
"file_path": null,
"use_last": false
}
],
"load_patterns": [
{
"id": 1,
"name": "Lateral",
"type": "Plain",
"time_series_id": 1,
"nodal_loads": [
{
"node_id": 3,
"forces": [
50000.0,
0.0,
0.0,
0.0,
0.0,
0.0
]
}
],
"element_loads": []
},
{
"id": 2,
"name": "SineGustPattern",
"type": "Plain",
"time_series_id": 2,
"nodal_loads": [
{
"node_id": 3,
"forces": [
100000.0,
0.0,
0.0,
0.0,
0.0,
0.0
]
}
],
"element_loads": []
}
],
"spectra": [],
"analyses": [
{
"id": 1,
"name": "Linear-Static",
"type": "Static",
"pattern_ids": [
1
],
"pattern_factors": {},
"n_steps": 1,
"load_factor_increment": 1.0,
"system": "BandGeneral",
"constraints": "Plain",
"integrator": "LoadControl",
"algorithm": "Linear",
"test": "NormDispIncr",
"tolerance": 1e-08,
"max_iter": 25
},
{
"id": 2,
"name": "Modal-3",
"type": "Modal",
"n_modes": 3,
"solver": "genBandArpack"
},
{
"id": 3,
"name": "Sine-Gust-2s",
"type": "Transient",
"pattern_ids": [
2
],
"pattern_factors": {},
"dt": 0.01,
"n_steps": 200,
"system": "BandGeneral",
"constraints": "Plain",
"integrator": "Newmark",
"integrator_params": [
0.5,
0.25
],
"algorithm": "Newton",
"test": "NormDispIncr",
"tolerance": 1e-06,
"max_iter": 25,
"rayleigh_alpha_m": 0.0,
"rayleigh_beta_k": 0.0,
"rayleigh_beta_k_init": 0.0,
"rayleigh_beta_k_comm": 0.0,
"rayleigh_mode1_damping": null,
"preload_case_ids": [],
"remove_patterns": []
}
]
}