Overview
Optyx provides a symbolic optimization interface with automatic differentiation. This reference documents all public classes, functions, and modules.
Quick Links
Core Classes
| Variable |
Scalar decision variable |
optyx |
| Constant |
Fixed numerical value |
optyx |
| Expression |
Base class for symbolic expressions |
optyx |
| Constraint |
Equality/inequality constraint |
optyx |
| Problem |
Optimization problem container |
optyx |
| Solution |
Solve result with optimal values |
optyx |
Vector & Matrix Variables
Mathematical Functions
sin, cos, tan |
Trigonometric functions |
exp, log, log2, log10 |
Exponential and logarithmic |
sqrt, abs_ |
Power and absolute value |
sinh, cosh, tanh |
Hyperbolic functions |
asin, acos, atan |
Inverse trigonometric |
asinh, acosh, atanh |
Inverse hyperbolic |
Solvers
SolverStatus |
Enum for solve outcome (optimal, infeasible, etc.) |
Usage Pattern
from optyx import Variable, Problem, sin, exp
# Create variables
x = Variable("x", lb=-10, ub=10)
y = Variable("y", lb=0)
# Build objective
objective = (x - 3)**2 + (y - 2)**2
# Create and solve problem
problem = Problem()
problem.minimize(objective)
problem.subject_to(x + y >= 1)
problem.subject_to(sin(x) + exp(-y) <= 2)
solution = problem.solve()
print(f"x = {solution['x']:.4f}")
print(f"y = {solution['y']:.4f}")
Detailed Documentation
Guides (with examples)
- Expressions - Variables, constants, and building expressions
- Constraints - Equality and inequality constraints
- Problem - Creating and solving optimization problems
- Solution - Accessing results and diagnostics
- Autodiff - How automatic differentiation works
Auto-Generated Reference
For complete API documentation generated directly from source code docstrings:
→ Full API Reference
Importing
# Import everything you need
from optyx import (
# Core classes
Variable, Constant, Expression,
Constraint, Problem, Solution,
# Mathematical functions
sin, cos, tan,
exp, log, log2, log10,
sqrt, abs_,
sinh, cosh, tanh,
asin, acos, atan,
asinh, acosh, atanh,
# Solver status
SolverStatus,
)
# Check version
import optyx
print(optyx.__version__)