Skip to content

Introduction

The Allsolve Python SDK lets you automate multiphysics simulations from code — define geometry, materials, physics, and boundary conditions in Python, then solve in the cloud. It covers most of the same workflows available in the Allsolve GUI, though some specialized GUI features may not yet have SDK equivalents. Use it to automate workflows, run parameter sweeps, perform optimizations, and integrate Allsolve into your existing computational pipelines.

The SDK requires Python 3.10 or newer and is available on PyPI:

Terminal window
pip install allsolve

If you used an earlier beta distribution (wheel archive), see Migrating from earlier beta versions for breaking changes in the public release.

The SDK supports a wide range of workflows, from one-off automation to large-scale design exploration.

  • Automate simulation workflows and batch processing
  • Integrate Allsolve simulations into existing computational pipelines
  • Create custom tools and applications on top of Allsolve
  • Run large-scale parameter sweeps and sensitivity analyses
  • Implement custom optimization algorithms
  • Perform design space exploration with hundreds of parallel simulations
  • Create and manage projects programmatically
  • Import geometries and set up simulations via code
  • Define projects declaratively using YAML/JSON configuration files
  • Control simulation setup: meshes, physics, materials, and boundary conditions
  • Run simulations with custom Python scripts when you need low-level control
  • Monitor simulation progress and retrieve results programmatically

The Python SDK provides high-level classes and methods to:

  • Client API: Authenticate and manage projects through allsolve.Client
  • Project management: Create, copy, list, and delete projects
  • Geometry: Import STEP, IGES, GDS2, and mesh files, or build geometry programmatically
  • Regions and materials: Define geometric regions and assign material properties
  • Physics and interactions: Add physics types and boundary conditions (solid mechanics, electromagnetics, heat transfer, and more)
  • Mesh control: Configure mesh settings, refinements, and quality parameters
  • Simulation setup: Configure solver settings, runtime parameters, and hardware
  • Results processing: Retrieve simulation outputs, fields, and post-processing data
  • Job monitoring: Track simulation progress and stream logs
  • Import and export: Serialize entire projects to YAML/JSON for version control and sharing
  • The OpenAPI definition for the public HTTP API is not published yet; use the SDK or contact support for direct API access.
  • Some GUI features may not yet have SDK equivalents. When you need full low-level control, use the Script API or a script-based workflow.
  • Report issues and request features on GitHub Issues.
  • Expressions reference — mathematical expressions and functions, usable in several SDK function arguments
  • Script API reference — low-level simulation core scripting capabilities
  • FAQ — common questions and troubleshooting
  • SDK examples — catalog of example scripts on GitHub