Open Design Optimization Platform (ODOP) - Coil spring design app; mechanical springs; compression spring, extension spring, torsion spring

View the Project on GitHub thegrumpys/odop

ODOP is:


As in Open Source Software. The program's source code is available to all at no cost. For additional information on open source concepts, see: Wikipedia: Open Source Software and MIT License



The ODOP software approaches "design" from an engineering perspective. Specifically, this notion of design is all about selecting appropriate values for those parameters that can be controlled in order to achieve the desired performance of an engineering system. A mathematical model of the system under investigation is required. While this is "computer-aided engineering design", computer graphics in the form of drafted drawings or 3D models are not central to this design process.

While certainly capable of analyzing the performance of an existing design, ODOP is at its best when used to develop solutions to difficult and highly constrained original design problems.



Once a real world system is expressed in terms of a mathematical model, that model may be manipulated by numerical search and mathematical optimization techniques. The process is sometimes referred to as "goal seeking". If a designer's goals are expressed in terms of one-sided constraints or two-sided "FIXes", the software can search for and find a "feasible" solution, if one exists. Once a feasible solution is established, the software can seek an "optimal" solution that provides the best solution available within the established constraints.



The ODOP software is based on a problem independent core ... the "platform" on which any number of mathematical models (a.k.a. "Design Types") can be built. The core solution techniques (Search, Seek and Trade) may then be applied to those mathematical models in order to evolve specific designs. Designs may be stored in a design library for later re-use. Specific design types may offer problem-specific reports that may be saved or printed. Specific design types may offer easy selection from tables of material properties or the ability to select from catalogs of standard component sizes or even catalogs of stock designs.


See ODOP Structure for a high level overview of the ODOP program's structure as a platform.

A high level overview of the ODOP Design Process Flow is available. See: ODOP Design Process Flow Diagram

A more detailed explanation of these concepts is available in the on-line documentation. See:


Design Types

Five Design Types are currently available.

Compression Spring Design Type icon Extension Spring Design Type icon Torsion Spring Design Type icon The Compression, Extension and Torsion Spring design types are full-featured apps enabling the engineering design of helical coil springs. While best saved for a time after your initial introduction to ODOP is complete, a comprehensive introduction to coil spring design with ODOP is available at Spring Design Topics.

Rectangular Solid Design Type icon The Rectangular Solid design type is intended as an easy to understand demonstration problem.

Piston-Cylinder Design Type icon The Piston-Cylinder design type is a simple demonstration problem that illustrates competing objectives.


Getting Started

The ODOP software provides Help facility pages to help you get started. To work with the Rectangular Solid design type go to: Getting Started

Also, ODOP provides a demo / tutorial feature. To use tutorial and demo sessions with the compression spring design type go to: Spring design tutorial and demo