Key Concepts of our application

To really understand the framework we first try to break down the problem that it is intended to solve and assist developers with. Let’s examine how physicists typically breakdown this problem.

Problem Statement – To solve a physical problem that can be numerically simulated.

 Physics Modeling Of The Dam-Break Problem

We give an example how to program a physics simulator using our programming environment or framework (Simulation System). The sample application is setup to simulate wave propagation (nonlinear flow with shocks) in the so-called dam break problem in a horizontal channel without friction under Newton’s Law of Gravity.

The Cookbook Recipes

The following steps outline how to develop a physics simulator using the Framework.

  1. Create a Physical Simulator by sub-classing the appropriate system object
  2. Provide an implementation for IPhysicalConfiguration
  3. Provide an implementation for IPhysicalAlgorithm
  4. Provide an implementation for IPhysicalMeasurement
  5. A Data Source to store physical measurement information
  6. If specified, a Final Report for statistic, visualizing the solution, etc…

 This is expressed by the following diagram below:




If you notice, the x, y and z components are not defined like the manning and other components have been? The reason is because the CartesionObject parent class provides them. This illustrates the power of a property known as inheritance in Object Oriented languages. Since SectionFlow extends CartesianObject, it can access the instance variables and methods defined in CartesianObject. This also illustrates the power of the Framework in that many of these types of capabilities are provided by it so you don’t have to code it.The first class that needs to be developed is an implementation of the PhysicalObject that extends CartesianObject. The SectionFlow class does this in the sample application.



Code Snippets

DamBreak Simulator Run Method


  • C++ scientific code snippet

    Tips and Tricks

    An example of how STL (Standard Template Library) can be used to write scientific code. In our programming environment we make an extensive use of this kind of technique. From our experience, it helps to write better code that is easier to understand and less error prone.
  • IKEA Virtual Reality Extract


    I’m currently working on updating of an interior designer application, used by multinational furniture giant, to a 2nd generation version powered with state-of-the-art technology provided with Virtual Reality (VR) headset.

clients and partners