Spelling suggestions: "subject:"equationsbased"" "subject:"equationbased""
1 |
Declarative modeling of coupled advection and diffusion as applied to fuel cellsDavies, Kevin L. 22 May 2014 (has links)
The goal of this research is to realize the advantages of declarative modeling for complex physical systems that involve both advection and diffusion to varying degrees in multiple domains. This occurs, for example, in chemical devices such as fuel cells. The declarative or equation-based modeling approach can provide computational advantages and is compatible with physics-based, object-oriented representations. However, there is no generally accepted method of representing coupled advection and diffusion in a declarative modeling framework.
This work develops, justifies, and implements a new upstream discretization scheme for mixed advective and diffusive flows that is well-suited for declarative models. The discretization scheme yields a gradual transition from pure diffusion to pure advection without switching events or nonlinear systems of equations. Transport equations are established in a manner that ensures the conservation of material, momentum, and energy at each interface and in each control volume. The approach is multi-dimensional and resolved down to the species level, with conservation equations for each species in each phase. The framework is applicable to solids, liquids, gases, and charged particles. Interactions among species are described as exchange processes which are diffusive if the interaction is inert or advective if it involves chemical reactions or phase change.
The equations are implemented in a highly modular and reconfigurable manner using the Modelica language. A wide range of examples are demonstrated—from basic models of electrical conduction and evaporation to a comprehensive model of a proton exchange membrane fuel cell (PEMFC). Several versions of the PEMFC model are simulated under various conditions including polarization tests and a cyclical electrical load. The model is shown to describe processes such as electro-osmotic drag and liquid pore saturation. It can be scaled in complexity from 4000 to 32,000 equations, resulting in a simulation times from 0.2 to 19 s depending on the level of detail. The most complex example is a seven-layer cell with six segments along the length of the channel. The model library is thoroughly documented and made available as a free, open-source software package.
|
2 |
Debugging Equation-Based Languages in OpenModelica EnvironmentSjöholm, Klas January 2009 (has links)
<p>The need for debugging tools for declarative programming languages has increased due to the rapid development of modeling and simulation tools/programs. Declarative equation-based programming languages have the problem of equation systems being over-, or under-constrained. This means that the system of equations has more equations than variables or more variables than equations respectively, making the system of equations unsolvable. In this study a static debugger is implemented in OpenModelica compiler for the equation-based programming language Modelica to make it easier for the programmer or modeler to locate the equation/s causing the unconstrained system of equations. The debugging techniques used by the debugger are developed by Peter Bunus. Those techniques are able to detect unconstrained systems of equations and give solutions by identifying the minimal set ofequation/s that should be removed or which variable/s should be added to an equation/s to make the system solvable. In this study the debugging techniques for detecting and giving a solution for over-constrained system of equations are shown suitable to be used for the programming language Modelica in the OpenModelica compiler.</p>
|
3 |
Integrated Model-Driven Development Environments for Equation-Based Object-Oriented LanguagesPop, Adrian January 2008 (has links)
Integrated development environments are essential for efficient realization of complex industrial products, typically consisting of both software and hardware components. Powerful equation-based object-oriented (EOO) languages such as Modelica are successfully used for modeling and virtual prototyping increasingly complex physical systems and components, whereas software modeling approaches like UML, especially in the form of domain specific language subsets, are increasingly used for software systems modeling. A research hypothesis investigated to some extent in this thesis is if EOO languages can be successfully generalized also to support software modeling, thus addressing whole product modeling, and if integrated environments for such a generalized EOO language tool support can be created and effectively used on real-sized applications. However, creating advanced development environments is still a resource-consuming error-prone process that is largely manual. One rather successful approach is to have a general framework kernel, and use meta-modeling and meta-programming techniques to provide tool support for specific languages. Thus, the main goal of this research is the development of a meta-modeling approach and its associated meta-programming methods for the synthesis of model-driven product development environments that includes support for modeling and simulation. Such environments include components like model editors, compilers, debuggers and simulators. This thesis presents several contributions towards this vision in the context of EOO languages, primarily the Modelica language. Existing state-of-the art tools supporting EOO languages typically do not satisfy all user requirements with regards to analysis, management, querying, transformation, and configuration of models. Moreover, tools such as model-compilers tend to become large and monolithic. If instead it would be possible to model desired tool extensions with meta-modeling and meta-programming, within the application models themselves, the kernel tool could be made smaller, and better extensibility, modularity and flexibility could be achieved. We argue that such user requirements could be satisfied if the equation-based object-oriented languages are extended with meta-modeling and meta-programming. This thesis presents a new language that unifies EOO languages with term pattern matching and transformation typically found in functional and logic programming languages. The development, implementation, and performance of the unified language are also presented. The increased ease of use, the high abstraction, and the expressivity of the unified language are very attractive properties. However, these properties come with the drawback that programming and modeling errors are often hard to find. To overcome these issues, several methods and integrated frameworks for run-time debugging of the unified language have been designed, analyzed, implemented, and evaluated on non-trivial industrial applications. To fully support development using the unified language, an integrated model-driven development environment based on the Eclipse platform is proposed, designed, implemented, and used extensively. The development environment integrates advanced textual modeling, code browsing, debugging, etc. Graphical modeling is also supported by the development environment based on a proposed ModelicaML Modelica/UML/SysML profile. Finally, serialization, composition, and transformation operations on models are investigated.
|
4 |
Automatic Parallelization using Pipelining for Equation-Based Simulation LanguagesLundvall, Håkan January 2008 (has links)
<p>During the most recent decades modern equation-based object-oriented modeling and simulation languages, such as Modelica, have become available. This has made it easier to build complex and more detailed models for use in simulation. To be able to simulate such large and complex systems it is sometimes not enough to rely on the ability of a compiler to optimize the simulation code and reduce the size of the underlying set of equations to speed up the simulation on a single processor. Instead we must look for ways to utilize the increasing number of processing units available in modern computers. However to gain any increased performance from a parallel computer the simulation program must be expressed in a way that exposes the potential parallelism to the computer. Doing this manually is not a simple task and most modelers are not experts in parallel computing. Therefore it is very appealing to let the compiler parallelize the simulation code automatically. This thesis investigates techniques of using automatic translation of models in typical equation based languages, such as Modelica, into parallel simulation code that enable high utilization of available processors in a parallel computer. The two main ideas investigated here are the following: first, to apply parallelization simultaneously to both the system equations and the numerical solver, and secondly. to use software pipelining to further reduce the time processors are kept waiting for the results of other processors. Prototype implementations of the investigated techniques have been developed as a part of the OpenModelica open source compiler for Modelica. The prototype has been used to evaluate the parallelization techniques by measuring the execution time of test models on a few parallel archtectures and to compare the results to sequential code as well as to the results achieved in earlier work. A measured speedup of 6.1 on eight processors on a shared memory machine has been reached. It still remains to evaluate the methods for a wider range of test models and parallel architectures.</p>
|
5 |
Debugging Equation-Based Languages in OpenModelica EnvironmentSjöholm, Klas January 2009 (has links)
The need for debugging tools for declarative programming languages has increased due to the rapid development of modeling and simulation tools/programs. Declarative equation-based programming languages have the problem of equation systems being over-, or under-constrained. This means that the system of equations has more equations than variables or more variables than equations respectively, making the system of equations unsolvable. In this study a static debugger is implemented in OpenModelica compiler for the equation-based programming language Modelica to make it easier for the programmer or modeler to locate the equation/s causing the unconstrained system of equations. The debugging techniques used by the debugger are developed by Peter Bunus. Those techniques are able to detect unconstrained systems of equations and give solutions by identifying the minimal set ofequation/s that should be removed or which variable/s should be added to an equation/s to make the system solvable. In this study the debugging techniques for detecting and giving a solution for over-constrained system of equations are shown suitable to be used for the programming language Modelica in the OpenModelica compiler.
|
6 |
Concise Modeling of Humanoid Dynamics / Kortfattad Modellering av HumanoiddynamikJoachimbauer, Florian January 2017 (has links)
Simulation of mechanical systems like walking robots, is an essential part in developingnew and more applicable solutions in robotics. The increasing complexity of methodsand technologies is a key challenge for common languages. That problem creates a needfor flexible and scalable languages. The thesis concludes that an equation-based toolusing the Euler-Lagrange can simplify the process cycle of modeling and simulation. Itcan minimize the development effort, if the tool supports derivatives. Regretfully, it isnot common to use equation-based tools with this ability for simulation of humanoidrobots.The research in this thesis illustrates the comparison of equation-based tools to commonused tools. The implementation uses the Euler-Lagrange method to model andsimulate nonlinear mechanical systems. The focus of this work is the comparison ofdifferent tools, respectively the development of a humanoid robot in a stepwise mannerbased on the principle of passive walking. Additionally, each developed model has givenan informal argument to its stability. To prove the correctness of the thesis statementthe equation-based tool called Acumen is evaluated in contrast to a common used tool,MATLAB.Based on the achieved results, it can be concluded that the use of equation-based toolsusing Euler-Lagrange formalism is convenient and scalable for humanoid robots. Additionally,the development process is significantly simplified by the advantages of suchtools. Due to the experimental nature of Acumen further research could investigatethe possibilities for different mechanical systems as well as other techniques.
|
7 |
Dynamic Classification Using the Adaptive Competitive AlgorithmDeldadehasl, maryam 01 December 2023 (has links) (PDF)
The Vector Quantization (VQ) model proposes a powerful solution for data clustering. Its design indicates a specific combination of concepts from machine learning and dynamical systems theory to classify input data into distinct groups. The model evolves over time to better match the distribution of the input data. This adaptive feature is a strength of the model, as it allows the cluster centers to shift according to the input patterns, effectively quantizing the data distribution. It is a gradient dynamical system, using the energy function V as its Lyapunov function, and thus possesses properties of convergence and stability. These characteristics make the VQ model a promising tool for complex data analysis tasks, including those encountered in machine learning, data mining, and pattern recognition.In this study, we have applied the dynamic model to the "Breast Cancer Wisconsin Diagnostic" dataset, a comprehensive collection of features derived from digitized images of fine needle aspirate (FNA) of breast masses. This dataset, comprising various diagnostic measurements related to breast cancer, poses a unique challenge for clustering due to its high dimensionality and the critical nature of its application in medical diagnostics. By employing the model, we aim to demonstrate its efficacy in handling complex, multidimensional data, especially in the realm of medical pattern recognition and data mining. This integration not only highlights the model's versatility in different domains but also showcases its potential in contributing significantly to medical diagnostics, particularly in breast cancer identification and classification.
|
8 |
Automatic Parallelization using Pipelining for Equation-Based Simulation LanguagesLundvall, Håkan January 2008 (has links)
During the most recent decades modern equation-based object-oriented modeling and simulation languages, such as Modelica, have become available. This has made it easier to build complex and more detailed models for use in simulation. To be able to simulate such large and complex systems it is sometimes not enough to rely on the ability of a compiler to optimize the simulation code and reduce the size of the underlying set of equations to speed up the simulation on a single processor. Instead we must look for ways to utilize the increasing number of processing units available in modern computers. However to gain any increased performance from a parallel computer the simulation program must be expressed in a way that exposes the potential parallelism to the computer. Doing this manually is not a simple task and most modelers are not experts in parallel computing. Therefore it is very appealing to let the compiler parallelize the simulation code automatically. This thesis investigates techniques of using automatic translation of models in typical equation based languages, such as Modelica, into parallel simulation code that enable high utilization of available processors in a parallel computer. The two main ideas investigated here are the following: first, to apply parallelization simultaneously to both the system equations and the numerical solver, and secondly. to use software pipelining to further reduce the time processors are kept waiting for the results of other processors. Prototype implementations of the investigated techniques have been developed as a part of the OpenModelica open source compiler for Modelica. The prototype has been used to evaluate the parallelization techniques by measuring the execution time of test models on a few parallel archtectures and to compare the results to sequential code as well as to the results achieved in earlier work. A measured speedup of 6.1 on eight processors on a shared memory machine has been reached. It still remains to evaluate the methods for a wider range of test models and parallel architectures.
|
9 |
Safety, Security, and Semantic Aspects of Equation-Based Object-Oriented Languages and EnvironmentsBroman, David January 2007 (has links)
<p>During the last two decades, the interest for computer aided modeling and simulation of complex physical systems has witnessed a significant growth. The recent possibility to create acausal models, using components from different domains (e.g., electrical, mechanical, and hydraulic) enables new opportunities. Modelica is one of the most prominent equation-based object-oriented (EOO) languages that support such capabilities, including the ability to simulate both continuous- and discrete-time models, as well as mixed hybrid models. However, there are still many remaining challenges when it comes to language safety and simulation security. The problem area concerns detecting modeling errors at an early stage, so that faults can be isolated and resolved. Furthermore, to give guarantees for the absence of faults in models, the need for precise language specifications is vital, both regarding type systems and dynamic semantics.</p><p>This thesis includes five papers related to these topics. The first paper describes the informal concept of types in the Modelica language, and proposes a new concrete syntax for more precise type definitions. The second paper provides a new approach for detecting over- and under-constrained systems of equations in EOO languages, based on a concept called structural constraint delta. That approach makes use of type checking and a type inference algorithm. The third paper outlines a strategy for using abstract syntax as a middle-way between a formal and informal language specification. The fourth paper suggests and evaluates an approach for secure distributed co-simulation over wide area networks. The final paper outlines a new formal operational semantics for describing physical connections, which is based on the untyped lambda calculus. A kernel language is defined, in which real physical models are constructed and simulated.</p> / Report code: LIU-TEK-LIC-2007:46. On the day of the defence date the status of article IV was: In Progress; The status of article V was: Manuscript.
|
10 |
Safety, Security, and Semantic Aspects of Equation-Based Object-Oriented Languages and EnvironmentsBroman, David January 2007 (has links)
During the last two decades, the interest for computer aided modeling and simulation of complex physical systems has witnessed a significant growth. The recent possibility to create acausal models, using components from different domains (e.g., electrical, mechanical, and hydraulic) enables new opportunities. Modelica is one of the most prominent equation-based object-oriented (EOO) languages that support such capabilities, including the ability to simulate both continuous- and discrete-time models, as well as mixed hybrid models. However, there are still many remaining challenges when it comes to language safety and simulation security. The problem area concerns detecting modeling errors at an early stage, so that faults can be isolated and resolved. Furthermore, to give guarantees for the absence of faults in models, the need for precise language specifications is vital, both regarding type systems and dynamic semantics. This thesis includes five papers related to these topics. The first paper describes the informal concept of types in the Modelica language, and proposes a new concrete syntax for more precise type definitions. The second paper provides a new approach for detecting over- and under-constrained systems of equations in EOO languages, based on a concept called structural constraint delta. That approach makes use of type checking and a type inference algorithm. The third paper outlines a strategy for using abstract syntax as a middle-way between a formal and informal language specification. The fourth paper suggests and evaluates an approach for secure distributed co-simulation over wide area networks. The final paper outlines a new formal operational semantics for describing physical connections, which is based on the untyped lambda calculus. A kernel language is defined, in which real physical models are constructed and simulated. / <p>Report code: LIU-TEK-LIC-2007:46. On the day of the defence date the status of article IV was: In Progress; The status of article V was: Manuscript.</p>
|
Page generated in 0.0845 seconds