Welcome to lsdo_function_spaces (v1.0.0)

lsdo_function_spaces is a high-performance, pure-Python library for continuous function representations, multivariate B-splines, scattered data interpolation, and CAD geometry processing tailored for Multidisciplinary Design Optimization (MDO).
It integrates directly with CSDL and CSDL Alpha, providing analytic derivative-compatible function spaces, JAX-accelerated evaluations, and inverse projection solvers for gradient-based design.
Key Capabilities
Pure-Python Multivariate B-Splines: Arbitrary dimension (\(d \ge 1\)), arbitrary degree tensor-product B-splines with 100% pure Python and JAX backends (zero C/Cython compiler dependencies).
Inverse Point & Surface Projection: Robust two-stage Newton-Raphson nonlinear solvers with adaptive refinement and exact adjoint sensitivity computation.
Multi-Patch Geometries & CAD Processing:
FunctionSetandFunctionSetSpacefor parsing and manipulating complex multi-surface assemblies from OpenVSP and CAD formats (STEP, IGES).Generalized Function Spaces: Inverse Distance Weighting (IDW), Radial Basis Functions (RBF), polynomial spaces, and linear triangulations.
Analytic Sensitivities & CSDL Alpha: First-class computational graph integration supporting forward and reverse Vector-Jacobian Products (VJPs) for seamless gradient propagation.
Cite us
@article{lsdo_function_spaces,
author = {Andrew Fletcher},
title = {lsdo_function_spaces: Continuous Function Spaces and Differentiable B-Spline Representations for MDO},
year = {2024}
}