186 research outputs found

    A comparison of metacompilation approaches to implementing Modelica

    Get PDF

    The OpenModelica integrated environment for modeling, simulation, and model-based development

    Get PDF
    OpenModelica is a unique large-scale integrated open-source Modelica- and FMI-based modeling, simulation, optimization, model-based analysis and development environment. Moreover, the OpenModelica environment provides a number of facilities such as debugging; optimization; visualization and 3D animation; web-based model editing and simulation; scripting from Modelica, Python, Julia, and Matlab; efficient simulation and co-simulation of FMI-based models; compilation for embedded systems; Modelica- UML integration; requirement verification; and generation of parallel code for multi-core architectures. The environment is based on the equation-based object-oriented Modelica language and currently uses the MetaModelica extended version of Modelica for its model compiler implementation. This overview paper gives an up-to-date description of the capabilities of the system, short overviews of used open source symbolic and numeric algorithms with pointers to published literature, tool integration aspects, some lessons learned, and the main vision behind its development.Fil: Fritzson, Peter. Linköping University; SueciaFil: Pop, Adrian. Linköping University; SueciaFil: Abdelhak, Karim. Fachhochschule Bielefeld; AlemaniaFil: Asghar, Adeel. Linköping University; SueciaFil: Bachmann, Bernhard. Fachhochschule Bielefeld; AlemaniaFil: Braun, Willi. Fachhochschule Bielefeld; AlemaniaFil: Bouskela, Daniel. Electricité de France; FranciaFil: Braun, Robert. Linköping University; SueciaFil: Buffoni, Lena. Linköping University; SueciaFil: Casella, Francesco. Politecnico di Milano; ItaliaFil: Castro, Rodrigo Daniel. Consejo Nacional de Investigaciones Científicas y Técnicas. Oficina de Coordinación Administrativa Ciudad Universitaria. Instituto de Investigación en Ciencias de la Computación. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales. Instituto de Investigación en Ciencias de la Computación; ArgentinaFil: Franke, Rüdiger. Abb Group; AlemaniaFil: Fritzson, Dag. Linköping University; SueciaFil: Gebremedhin, Mahder. Linköping University; SueciaFil: Heuermann, Andreas. Linköping University; SueciaFil: Lie, Bernt. University of South-Eastern Norway; NoruegaFil: Mengist, Alachew. Linköping University; SueciaFil: Mikelsons, Lars. Linköping University; SueciaFil: Moudgalya, Kannan. Indian Institute Of Technology Bombay; IndiaFil: Ochel, Lennart. Linköping University; SueciaFil: Palanisamy, Arunkumar. Linköping University; SueciaFil: Ruge, Vitalij. Fachhochschule Bielefeld; AlemaniaFil: Schamai, Wladimir. Danfoss Power Solutions GmbH & Co; AlemaniaFil: Sjolund, Martin. Linköping University; SueciaFil: Thiele, Bernhard. Linköping University; SueciaFil: Tinnerholm, John. Linköping University; SueciaFil: Ostlund, Per. Linköping University; Sueci

    EOOLT 2007 – Proceedings of the 1st International Workshop on Equation-Based Object-Oriented Languages and Tools

    Get PDF
    Computer aided modeling and simulation of complex systems, using components from multiple application domains, such as electrical, mechanical, hydraulic, control, etc., have in recent years witness0065d a significant growth of interest. In the last decade, novel equation-based object-oriented (EOO) modeling languages, (e.g. Mode- lica, gPROMS, and VHDL-AMS) based on acausal modeling using equations have appeared. Using such languages, it has become possible to model complex systems covering multiple application domains at a high level of abstraction through reusable model components. The interest in EOO languages and tools is rapidly growing in the industry because of their increasing importance in modeling, simulation, and specification of complex systems. There exist several different EOO language communities today that grew out of different application areas (multi-body system dynamics, electronic circuit simula- tion, chemical process engineering). The members of these disparate communities rarely talk to each other in spite of the similarities of their modeling and simulation needs. The EOOLT workshop series aims at bringing these different communities together to discuss their common needs and goals as well as the algorithms and tools that best support them. Despite the short deadlines and the fact that this is a new not very established workshop series, there was a good response to the call-for-papers. Thirteen papers and one presentation were accepted to the workshop program. All papers were subject to reviews by the program committee, and are present in these electronic proceedings. The workshop program started with a welcome and introduction to the area of equa- tion-based object-oriented languages, followed by paper presentations and discussion sessions after presentations of each set of related papers. On behalf of the program committee, the Program Chairmen would like to thank all those who submitted papers to EOOLT'2007. Special thanks go to David Broman who created the web page and helped with organization of the workshop. Many thanks to the program committee for reviewing the papers. EOOLT'2007 was hosted by the Technical University of Berlin, in conjunction with the ECOOP'2007 conference

    Nonlinear Model Predictive Control for Combined Cycle Power Plants

    Get PDF
    This master thesis project serves to investigate the possibilities of Nonlinear Model Predictive Control (NMPC) using the example of enthalpy control of the BENSON HRSG (heat recovery steam generator) of a combined cycle power plant (CCPP). The general idea of NMPC is to solve an optimization problem, to nd the next control action, and this optimization problem is based on a model of the system. The models used in the controller implementation are Modelica-based, and the system is described by algebraic dierential equations (DAEs). The controller was implemented in the Python interface of JModelica.org (Modelica-based modeling tool, supporting the Modelica extension Optimica for optimization), together with an extended Kalman lter (EKF) for state estimation. The control algorithm was only evaluated for a setup where the controller model is very similar to the model representing the real process; both models are simplied representations of the real process

    Generation of Sparse Jacobians for the Function Mock-Up Interface 2.0

    Get PDF
    Derivatives, or Jacobians, are commonly required by numerical algorithms. Access to accurate Jacobians often improves the performance and robustness of algorithms, and in addition, efficient implementation of Jacobian computations can reduce the over-all execution time. In this paper, we present methods for computing Jacobians in the context of the Functional Mock-up Interface (FMI), and Modelica. Two prototype implementations, in JModelica.org and OpenModelica are presented and compared in industrial benchmarks

    An XML Representation of DAE Systems Obtained from Modelica Models

    Get PDF
    This contribution presents an XML format for representation of flat Modelica models. The purpose is to offer a standardized model exchange format which is based on the DAE formalism and wich is neutral with respect to model usage. Many usages of models goes beyond what can be obtained from an execution interface offering evaluation of the model equations. Several such usages arises in the area of control engineering, where LFT transformations, derivation of robotic controllers, optimization, and real time code generation are some examples. The choice of XML is motivated by its defacto standard status and the availability of free and efficient tools. Also, the XSLT language enables specification of transformation of the XML model representation into other formats

    A CasADi Based Toolchain For JModelica.org

    Get PDF
    Computer-aided modeling for simulation, optimization and analysis is increasingly used for product development in industry today, resulting in high demands on the tools used. A tool chain for transferring interpreted code of the modeling languages Modelica and Optimica from the simulation and optimization tool JModelica.org to CasADi has been implemented. CasADi provides several desirable features, most importantly an integrated and ecient automatic dierentiation engine and the ability to interactively work with the systems expressed using it. The biggest problems solved to enable this were the creation of a representation of the mathematical systems described by Modelica and Optimica code that is integrated with CasADi, and the construction of a transfer scheme for moving information from the Java-based JModelica.org compiler to C++ in which CasADi resides. This was successfully achieved for a continuous subset of Modelica and Optimica that may contain functions

    Collocation Methods for Optimization in a Modelica Environment

    Get PDF
    The solution of generic dynamic optimization problems described by Modelica, and its extension Optimica, code using direct collocation methods is discussed. We start by providing a description of dynamic optimization problems in general and how to solve them by means of direct collocation. Next, an existing implementation of a collocation algorithm in JModelica.org, using CasADi and IPOPT, is presented. The extensions made to this implementation are reported. The new implementation is compared to an old C-based collocation algorithm in JModelica.org in two benchmarks. The presented benchmarks are based on a continuously stirred tank reactor and a combined cycle power plant. The new algorithm and its surrounding framework is more flexible and shown to be several times more efficient than its predecessor

    Moving Horizon Estimation for JModelica.org

    Get PDF
    In this thesis a Moving Horizon Estimator (MHE) has been implemented for the JModelica.org platform. JModelica.org is an open-source software platform for simulation and optimization of systems described in the modeling language Modelica. MHE is an optimization-based strategy for state estimation where, at each time step, a finite horizon optimization problem is solved to generate an estimate of the current state values. The goal has been to implement an MHE that works with many already existing Modelica models and that has an intuitive user interface. The performance of the implemented MHE is evaluated using both linear and nonlinear systems in a series of simulation examples. The results indicate that the MHE performs well
    corecore