First Project

Your first Op^3 session walks from install to a working analysis of a reference wind turbine foundation. This chapter uses the NREL 5 MW sample project because it requires no proprietary data.

Launch the application

python -m op3_viz.dash_app.app

Open http://127.0.0.1:8050/ in any browser. You should see six tabs: 3D Viewer, Bayesian Scour, Mode D, PCE Surrogate, DLC 1.1 Time-series, and Compliance & Actions.

Open the NREL 5 MW sample project

from op3_viz.project import load
p = load("sample_projects/nrel_5mw_oc3_monopile.op3proj")
print(p)

Run a headless eigenvalue analysis

from op3 import build_foundation, compose_tower_model

foundation = build_foundation(mode="stiffness_6x6")
model = compose_tower_model(
    rotor="nrel_5mw_baseline",
    tower="nrel_5mw_tower",
    foundation=foundation,
    damping_ratio=0.01,
)
freqs = model.eigen(n_modes=6)
print(freqs)

The first fore-aft bending frequency is approximately 0.32 Hz, matching the published OC3 reference within 0.4 %.

Cross-compare foundation modes

from op3 import cross_compare

results = cross_compare(
    rotor="nrel_5mw_baseline",
    tower="nrel_5mw_tower",
    scour_levels=[0.0, 0.5, 1.0, 1.5, 2.0],
)

Save your own project

from op3_viz.project import Project, save
p = Project.new(name="My OWT study")
p.turbine.reference = "nrel_5mw_baseline"
p.foundation.mode = "distributed_bnwf"
p.foundation.scour_m = 1.5
save(p, "my_first_project.op3proj")

Generate a report

from op3_viz.project import load
from op3_viz.report import build_report

proj = load("my_first_project.op3proj")
produced = build_report(proj, output_dir="reports/")