Core objects

The object model preserves the ownership and provenance relationships used in Studio. Identifiers are stable, opaque strings; revisions are immutable once used by a completed downstream resource.

Project collections

class gradientdynamics.ProjectCollection

Organisation-scoped access to engineering projects.

create(*, name: str, description: str | None = None) Project

Create a project and return its initial revision.

get(project_id: str) Project

Retrieve one project by opaque identifier.

list(*, limit: int = 50, cursor: str | None = None) Page[Project]

Return a cursor-paginated project page.

Project

class gradientdynamics.Project

Ownership and traceability boundary for one engineering study.

id: str

Opaque project identifier.

name: str

Human-readable project name.

geometry: GeometryCollection

Versioned CAD and surface assets owned by this project.

meshes: MeshCollection

Generated and imported meshes owned by this project.

simulations: SimulationCollection

Simulation definitions and their revision history.

solutions: SolutionCollection

Accepted results produced inside this project.

Geometry

class gradientdynamics.Geometry

A versioned CAD or surface asset prepared for meshing.

id: str
filename: str
revision: int
named_surfaces: tuple[str, ...]

Boundary names discovered or assigned during preparation.

mesh(config: meshing.PrismOctreeConfig | meshing.CHTMeshConfig, *, idempotency_key: str | None = None) jobs.Job[Mesh]

Validate the geometry and submit an asynchronous mesh operation.

Upload through the parent project:

geometry = project.geometry.upload(
    "vehicle.stl",
    named_surfaces="vehicle-surfaces.zip",
)

Mesh

class gradientdynamics.Mesh

A completed volume mesh with boundary patches, cell zones, quality metrics and provenance.

id: str
cell_count: int
boundaries: tuple[str, ...]
regions: tuple[str, ...]
manifest: meshing.MeshManifest
simulations: SimulationCollection

Factory for simulations tied to this exact mesh revision.

download(path: str | Path, *, format: str = 'cgns') Path

Download the interoperable mesh asset.

Simulation

class gradientdynamics.Simulation

A validated FluxCore physics, run-control and output definition associated with one immutable mesh revision.

id: str
mesh: Mesh
config: fluxcore.SimulationConfig
run(*, idempotency_key: str | None = None) jobs.Job[Solution]

Allocate managed FluxCore capacity and start the simulation.

Solution

class gradientdynamics.Solution

Accepted result of one simulation revision. A solution keeps its exact mesh, configuration, deployment version, histories and field assets together.

id: str
simulation: Simulation
outputs: outputs.OutputCollection
histories: outputs.HistoryCollection
fields: outputs.FieldCollection