Standard Evaluator
Standard Evaluator is an open-source Python library (published on PyPI as standard-evaluator) that provides a common API for defining, wrapping, and composing analysis codes and surrogate models. It was initially developed under NASA Contract 80GRC023CA045, and has been expanded since then.
Documentation: https://boeing.github.io/standard-evaluator/
The library has three main purposes:
-
Common Evaluator API — Expose analysis capabilities and surrogate models through a unified interface. End-users interact via Pandas DataFrames; developers can use a simplified NumPy-focused interface (
eval_np,eval_list). -
Integration Framework Bridge — Expose all evaluators to integration frameworks like OpenMDAO. The architecture is designed to support additional integration frameworks in the future.
-
Assembly Serialization — Capture the structure of assemblies of analyses in Pydantic classes or JSON files, and rebuild those assemblies from the stored information. Currently supports OpenMDAO; designed for future multi-framework support.
Note that user of the library are responsible for installing the third party open source components and for complying with the terms and conditions of the respective open source licenses governing the third party open source components.
Documentation
Full documentation with demos and API reference is available at: https://boeing.github.io/standard-evaluator/
Installation
pip install standard-evaluator
Optional extras:
pip install standard-evaluator[smt] # Surrogate Modeling Toolbox models
pip install standard-evaluator[aviary] # NASA Aviary integration
pip install standard-evaluator[test] # Testing dependencies
Optionally clone the repo and install locally for development:
git clone <repo-url>
cd standard-evaluator
pip install -e .[test,smt]
Project Structure
src/— Source code of the standard evaluator librarydocs/— Documentation source (Sphinx + Jupyter notebooks)tests/— Unit and property-based tests
Quick Start
import standard_evaluator as se
from standard_evaluator.evaluators import OpenMDAOEvaluator
# Capture an OpenMDAO assembly interface
info = se.get_interface(prob.model)
# Set variable bounds for surrogate training
se.set_variable_bounds(info, {'x': (0, 10), 'y': (-5, 5)})
# Build an optimization problem and evaluator
opt_problem = se.build_opt_problem(info, prob)
evaluator = OpenMDAOEvaluator(prob, opt_problem=opt_problem)
Metadata
Release files for standard-evaluator 0.3.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| standard_evaluator-0.3.6.tar.gz | 4.1 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| standard_evaluator-0.3.6-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 4.3 MB
Release files / standard_evaluator-0.3.6.tar.gz
| Download URL | standard_evaluator-0.3.6.tar.gz |
|---|---|
| Size | 4.1 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8d2204eb01953be1156904e3c1731edaac76d959e9c0878e4806c687f37bf656
|
|
BLAKE2b-256 checksum How to use checksums |
02440fbd7c928ffbf7a4cf2fb419ad3b8ee3c09aee9e0646fb5b6cf1fead633d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / standard_evaluator-0.3.6-py3-none-any.whl
| Download URL | standard_evaluator-0.3.6-py3-none-any.whl |
|---|---|
| Size | 217.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
54d5ab4a9b091a0b43bd4c2a91db788993d4ed2f21137fae220dd4031821c2f0
|
|
BLAKE2b-256 checksum How to use checksums |
7d82f257caaf17db86495e89d2ca2a489b04e7affe02d35db7e0267557e625da
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|