Skip to content

jonaslindemann/objectiveframe

Repository files navigation

ObjectiveFrame

Interactive real-time finite element analysis for structural mechanics education and experimentation.

ObjectiveFrame lets you build beam and frame structures, apply loads and boundary conditions, and explore deformation, internal forces, and eigenmodes with immediate visual feedback. It is designed for structural mechanics teaching, finite element experimentation, and lightweight open-source FEA workflows.

Download | Documentation | Quick start | Examples | Videos | Cite

ObjectiveFrame real-time structural feedback

Placeholder: replace this still image with a 5-10 second GIF or WebP showing feedback mode, load movement, deformation updates, or eigenmode animation.

Why ObjectiveFrame?

  • Real-time structural feedback while exploring loads and deformation.
  • Interactive beam and frame modelling for structural mechanics education.
  • Eigenmode visualization for understanding unstable or under-constrained models.
  • Lightweight C++ and OpenGL desktop application.
  • Open-source codebase with a long research lineage.
  • Scriptable workflows using ChaiScript plugins.
  • CALFEM-oriented export path for teaching and Python-based analysis workflows.

Quick Start

  1. Download the latest release from GitHub Releases.
  2. Open one of the included example models from bin/examples.
  3. Add or modify loads and boundary conditions.
  4. Run the analysis and inspect deformation, normal force, moment, or eigenmode behavior.
  5. Enable feedback mode to move a force and see the structure update interactively.

See the full Quick Start guide for a screenshot-based walkthrough.

Example Projects

ObjectiveFrame ships with example .df3 models for bridges, buildings, domes, masts, space frames, and multiple load cases. These are useful for demos, classroom exercises, regression checks, and learning finite element modelling step by step.

See the examples gallery.

What Makes It Different?

Capability ObjectiveFrame Typical commercial FEA
Open source Yes Usually no
Real-time interaction Core workflow Often limited
Educational FEM focus Strong Varies
Lightweight desktop use Yes Often heavier
Beam/frame exploration Primary use case One feature among many
Scriptable examples Yes Varies
Research lineage Explicit Usually product-focused

ObjectiveFrame is not trying to replace large industrial FEA suites. Its strength is interactive structural understanding: fast modelling, visual intuition, and immediate feedback for beam and frame behavior.

Students and Educators

ObjectiveFrame is well suited for teaching topics such as:

  • Beam and frame deformation.
  • Load paths and support reactions.
  • Boundary condition modelling.
  • Section forces and moments.
  • Eigenmodes and unstable structures.
  • The relationship between finite element models and structural intuition.

Start with Learning FEM with ObjectiveFrame.

Implementation

ObjectiveFrame is implemented in C++ using OpenGL for hardware-accelerated rendering. The current user interface uses Dear ImGui with GLFW. Structural analysis uses Eigen, and beam/truss structures can be generated from points using TetGen.

The project also builds on the Interactive Visualisation Framework - Ivf++.

Research Lineage

ObjectiveFrame was originally developed at Structural Mechanics at Lund University by Jonas Lindemann as part of PhD work on real-time explorable finite element analysis and direct feedback methods.

Pierre Olsson developed routines and user interfaces for computing section properties. Daniel Akesson implemented 3D gesture controls using a Leap Motion controller for interacting with finite element models.

Roadmap

The short-term roadmap focuses on onboarding, examples, educational workflows, scripting, CALFEM integration, solver improvements, and broader platform support. See the project roadmap.

Contributing

Issues, examples, documentation improvements, and educational exercises are welcome. See CONTRIBUTING.md for the current contribution guide.

Cite

If ObjectiveFrame supports teaching, research, or published work, please cite the project. See CITATION.cff and the citation guide.

License

ObjectiveFrame is distributed under the MIT License. See LICENSE.