EcosimPro

Last updated
EcosimPro
Stable release
5.6.0 / December 2016;7 years ago (2016-12)
Preview release
5.4.19 / October 2015;8 years ago (2015-10)
Operating system Microsoft Windows
Website www.ecosimpro.com

EcosimPro is a simulation tool developed by Empresarios Agrupados A.I.E for modelling simple and complex physical processes that can be expressed in terms of Differential algebraic equations or Ordinary differential equations and Discrete event simulation.

Contents

The application runs on the various Microsoft Windows platforms and uses its own graphic environment for model design.

The modelling of physical components is based on the EcosimPro language (EL) which is very similar to other conventional Object-oriented programming [1] languages but is powerful enough to model continuous and discrete processes.

This tool employs a set of libraries containing various types of components (mechanical, electrical, pneumatic, hydraulic, etc.) that can be reused to model any type of system.

It is used within ESA for propulsion systems analysis [2] and is the recommended ESA analysis tool for ECLS systems. [3] [4]

Origins

The EcosimPro Tool Project began in 1989 with funds from the European Space Agency (ESA) and with the goal of simulating environmental control and life support systems for crewed spacecraft, [4] such as the Hermes shuttle. The multidisciplinary nature of this modelling tool led to its use in many other disciplines, including fluid mechanics, chemical processing, control, energy, propulsion and flight dynamics. These complex applications have demonstrated that EcosimPro is very robust and ready for use in many other fields.

The modelling language

Code examples

Differential equation
To familiarize yourself with the use of EcosimPro, first create a simple component to solve a differential equation. Although EcosimPro is designed to simulate complex systems, it can also be used independently of a physical system as if it were a pure equation solver. The example in this section illustrates this type of use. It solves the following differential equation to introduce a delay to variable x:

which is equivalent to

where x and y have a time dependence that will be defined in the experiment. Tau is datum provided given by the user; we will use a value of 0.6 seconds. This equation introduces a delay in the x variable with respect to y with value tau. To simulate this equation we will create an EcosimPro component with the equation in it.

The component to be simulated in EL is like thus:

COMPONENT equation_test    DATA       REAL tau = 0.6      "delay time (seconds)"    DECLS       REAL x, y    CONTINUOUS       y' = (x - y) / tau END COMPONENT

Pendulum
One example of applied calculus could be the movement of a perfect pendulum (no friction taken into account). We would have the following data: the force of gravity ‘g’; the length of the pendulum ‘L’; and the pendulum's mass ‘M’. As variables to be calculated we would have: the Cartesian position at each moment in time of the pendulum ‘x’ and ‘y’ and the tension on the wire of the pendulum ‘T’. The equations that define the model would be:

- Projecting the length of the cable on the Cartesian axes and applying Pythagoras’ theorem we get:

By decomposing force in Cartesians we get

and

To obtain the differential equations we can convert:

and

(note: is the first derivative of the position and equals the speed. is the second derivative of the position and equals the acceleration)

This example can be found in the DEFAULT_LIB library as “pendulum.el”:

Modelling of a pendulum with EcosimPro EcosimPro example pendulum.png
Modelling of a pendulum with EcosimPro
COMPONENT pendulum   "Pendulum example"    DATA       REAL g = 9.806               "Gravity (m/s^2)"       REAL L = 1.                  "Pendulum longitude (m)"       REAL M = 1.                  "Pendulum mass (kg)"    DECLS       REAL x                       "Pendulum X position (m)"       REAL y                       "Pendulum Y position (m)"       REAL T                       "Pendulum wire tension force (N)"    CONTINUOUS       x**2 + y**2 = L**2       M * x'' = - T * (x / L)       M * y'' = - T * (y / L) - M * g END COMPONENT

The last two equations respectively express the accelerations, x’’ and y’’, on the X and Y axes

Maths capabilities

Applications

EcosimPro has been used in many fields and disciplines. The following paragraphs show several applications

See also

Related Research Articles

In mathematics, an equation is a mathematical formula that expresses the equality of two expressions, by connecting them with the equals sign =. The word equation and its cognates in other languages may have subtly different meanings; for example, in French an équation is defined as containing one or more variables, while in English, any well-formed formula consisting of two expressions related with an equals sign is an equation.

In classical mechanics, a harmonic oscillator is a system that, when displaced from its equilibrium position, experiences a restoring force F proportional to the displacement x:

<span class="mw-page-title-main">Polar coordinate system</span> Coordinates comprising a distance and an angle

In mathematics, the polar coordinate system is a two-dimensional coordinate system in which each point on a plane is determined by a distance from a reference point and an angle from a reference direction. The reference point is called the pole, and the ray from the pole in the reference direction is the polar axis. The distance from the pole is called the radial coordinate, radial distance or simply radius, and the angle is called the angular coordinate, polar angle, or azimuth. Angles in polar notation are generally expressed in either degrees or radians.

<span class="mw-page-title-main">Partial differential equation</span> Type of differential equation

In mathematics, a partial differential equation (PDE) is an equation which computes a function between various partial derivatives of a multivariable function.

In mathematics and science, a nonlinear system is a system in which the change of the output is not proportional to the change of the input. Nonlinear problems are of interest to engineers, biologists, physicists, mathematicians, and many other scientists since most systems are inherently nonlinear in nature. Nonlinear dynamical systems, describing changes in variables over time, may appear chaotic, unpredictable, or counterintuitive, contrasting with much simpler linear systems.

<span class="mw-page-title-main">Inverted pendulum</span> Pendulum with center of mass above pivot

An inverted pendulum is a pendulum that has its center of mass above its pivot point. It is unstable and falls over without additional help. It can be suspended stably in this inverted position by using a control system to monitor the angle of the pole and move the pivot point horizontally back under the center of mass when it starts to fall over, keeping it balanced. The inverted pendulum is a classic problem in dynamics and control theory and is used as a benchmark for testing control strategies. It is often implemented with the pivot point mounted on a cart that can move horizontally under control of an electronic servo system as shown in the photo; this is called a cart and pole apparatus. Most applications limit the pendulum to 1 degree of freedom by affixing the pole to an axis of rotation. Whereas a normal pendulum is stable when hanging downward, an inverted pendulum is inherently unstable, and must be actively balanced in order to remain upright; this can be done either by applying a torque at the pivot point, by moving the pivot point horizontally as part of a feedback system, changing the rate of rotation of a mass mounted on the pendulum on an axis parallel to the pivot axis and thereby generating a net torque on the pendulum, or by oscillating the pivot point vertically. A simple demonstration of moving the pivot point in a feedback system is achieved by balancing an upturned broomstick on the end of one's finger.

Linear elasticity is a mathematical model of how solid objects deform and become internally stressed due to prescribed loading conditions. It is a simplification of the more general nonlinear theory of elasticity and a branch of continuum mechanics.

Dynamical simulation, in computational physics, is the simulation of systems of objects that are free to move, usually in three dimensions according to Newton's laws of dynamics, or approximations thereof. Dynamical simulation is used in computer animation to assist animators to produce realistic motion, in industrial design, and in video games. Body movement is calculated using time integration methods.

A stochastic differential equation (SDE) is a differential equation in which one or more of the terms is a stochastic process, resulting in a solution which is also a stochastic process. SDEs have many applications throughout pure mathematics and are used to model various behaviours of stochastic models such as stock prices, random growth models or physical systems that are subjected to thermal fluctuations.

<span class="mw-page-title-main">Differential equation</span> Type of functional equation (mathematics)

In mathematics, a differential equation is an equation that relates one or more unknown functions and their derivatives. In applications, the functions generally represent physical quantities, the derivatives represent their rates of change, and the differential equation defines a relationship between the two. Such relations are common; therefore, differential equations play a prominent role in many disciplines including engineering, physics, economics, and biology.

<span class="mw-page-title-main">Modelica</span> Computer Language for System Modeling

Modelica is an object-oriented, declarative, multi-domain modeling language for component-oriented modeling of complex systems, e.g., systems containing mechanical, electrical, electronic, hydraulic, thermal, control, electric power or process-oriented subcomponents. The free Modelica language is developed by the non-profit Modelica Association. The Modelica Association also develops the free Modelica Standard Library that contains about 1400 generic model components and 1200 functions in various domains, as of version 4.0.0.

In mathematics, a differential-algebraic system of equations (DAE) is a system of equations that either contains differential equations and algebraic equations, or is equivalent to such a system.

In physics, the Fermi–Pasta–Ulam–Tsingou (FPUT) problem or formerly the Fermi–Pasta–Ulam problem was the apparent paradox in chaos theory that many complicated enough physical systems exhibited almost exactly periodic behavior – called Fermi–Pasta–Ulam–Tsingou recurrence – instead of the expected ergodic behavior. This came as a surprise, as Enrico Fermi, certainly, expected the system to thermalize in a fairly short time. That is, it was expected for all vibrational modes to eventually appear with equal strength, as per the equipartition theorem, or, more generally, the ergodic hypothesis. Yet here was a system that appeared to evade the ergodic hypothesis. Although the recurrence is easily observed, it eventually became apparent that over much, much longer time periods, the system does eventually thermalize. Multiple competing theories have been proposed to explain the behavior of the system, and it remains a topic of active research.

<span class="mw-page-title-main">Parabolic cylindrical coordinates</span>

In mathematics, parabolic cylindrical coordinates are a three-dimensional orthogonal coordinate system that results from projecting the two-dimensional parabolic coordinate system in the perpendicular -direction. Hence, the coordinate surfaces are confocal parabolic cylinders. Parabolic cylindrical coordinates have found many applications, e.g., the potential theory of edges.

<span class="mw-page-title-main">Lattice Boltzmann methods</span> Class of computational fluid dynamics methods

The lattice Boltzmann methods (LBM), originated from the lattice gas automata (LGA) method (Hardy-Pomeau-Pazzis and Frisch-Hasslacher-Pomeau models), is a class of computational fluid dynamics (CFD) methods for fluid simulation. Instead of solving the Navier–Stokes equations directly, a fluid density on a lattice is simulated with streaming and collision (relaxation) processes. The method is versatile as the model fluid can straightforwardly be made to mimic common fluid behaviour like vapour/liquid coexistence, and so fluid systems such as liquid droplets can be simulated. Also, fluids in complex environments such as porous media can be straightforwardly simulated, whereas with complex boundaries other CFD methods can be hard to work with.

Advanced process monitor (APMonitor) is a modeling language for differential algebraic (DAE) equations. It is a free web-service or local server for solving representations of physical systems in the form of implicit DAE models. APMonitor is suited for large-scale problems and solves linear programming, integer programming, nonlinear programming, nonlinear mixed integer programming, dynamic simulation, moving horizon estimation, and nonlinear model predictive control. APMonitor does not solve the problems directly, but calls nonlinear programming solvers such as APOPT, BPOPT, IPOPT, MINOS, and SNOPT. The APMonitor API provides exact first and second derivatives of continuous functions to the solvers through automatic differentiation and in sparse matrix form.

<span class="mw-page-title-main">Elastic pendulum</span>

In physics and mathematics, in the area of dynamical systems, an elastic pendulum is a physical system where a piece of mass is connected to a spring so that the resulting motion contains elements of both a simple pendulum and a one-dimensional spring-mass system. For specific energy values, the system demonstrates all the hallmarks of chaotic behavior and is sensitive to initial conditions.At very low and very high energy, there also appears to be regular motion. The motion of an elastic pendulum is governed by a set of coupled ordinary differential equations.This behavior suggests a complex interplay between energy states and system dynamics.

<span class="mw-page-title-main">Finite element method</span> Numerical method for solving physical or engineering problems

The finite element method (FEM) is a popular method for numerically solving differential equations arising in engineering and mathematical modeling. Typical problem areas of interest include the traditional fields of structural analysis, heat transfer, fluid flow, mass transport, and electromagnetic potential.

<span class="mw-page-title-main">Ordinary differential equation</span> Differential equation containing derivatives with respect to only one variable

In mathematics, an ordinary differential equation (ODE) is a differential equation (DE) dependent on only a single independent variable. As with other DE, its unknown(s) consists of one function(s) and involves the derivatives of those functions. The term "ordinary" is used in contrast with partial differential equations (PDEs) which may be with respect to more than one independent variable, and, less commonly, in contrast with stochastic differential equations (SDEs) where the progression is random.

Aspen Plus, Aspen HYSYS, ChemCad and MATLAB, PRO are the commonly used process simulators for modeling, simulation and optimization of a distillation process in the chemical industries. Distillation is the technique of preferential separation of the more volatile components from the less volatile ones in a feed followed by condensation. The vapor produced is richer in the more volatile components. The distribution of the component in the two phase is governed by the vapour-liquid equilibrium relationship. In practice, distillation may be carried out by either two principal methods. The first method is based on the production of vapor boiling the liquid mixture to be separated and condensing the vapors without allowing any liquid to return to the still. There is no reflux. The second method is based on the return of part of the condensate to still under such conditions that this returning liquid is brought into intimate contact with the vapors on their way to condenser.

References

  1. Bertrand Meyer (1997). Object Oriented Software Construction (2nd ed.). Prentice Hall. ISBN   0-13-629155-4.
  2. 1 2 Armin Isselhorst (July 2010). HM7B Simulation with ESPSS Tool on Ariane 5 ESC-A Upper Stage (PDF). 46th AIAA/ASME/SAE/ASEE Joint Propulsion Conference & Exhibit. AIAA. Retrieved May 6, 2011.[ permanent dead link ]
  3. "ESA: Thermal analysis software - EcosimPro". European Space Agency.
  4. 1 2 3 Daniele Laurini; Alan Thirkettle; Klaus Bockstahler (May 1999). "ESA: Supporting Life" (PDF). European Space Agency.
  5. Linda R. Petzold (1982). A Description of DASSL: A Differential/Algebraic System Solver SAND82-8637.
  6. P. Deuflhard (2004). Newton Methods for Nonlinear Problems. Affine Invariance and Adaptive Algorithms. Berlin: Springer. ISBN   3-540-21099-7.
  7. W. H. Press; B. P. Flannery; S. A. Teukolsky; W. T. Vetterling (1992). Numerical Recipes in C: The Art of Scientific Computing . Cambridge University Press. pp. and 9.6 [http://www.nrbook.com/a/bookcpdf/c9-6.pdf. ISBN   0-521-43108-5.]
  8. C Pantelides (March 1988). "The Consistent Initialization of Differential-Algebraic Systems". SIAM J. Sci. Stat. Comput. 9 (2): 213–231. doi:10.1137/0909014.
  9. B. Bradu; P. Gayet; S.I. Niculescu (2007). "A dynamic simulator for large scale cryogenic systems." (PDF). 6th EUROSIM Congress on Modelling and Simulation. Ljubljana, Slovenia. Archived from the original (PDF) on July 7, 2011. Retrieved May 6, 2011.