48,660 research outputs found

    3D Visualization Modules for Chemical Engineering – A Web-Based Approach Using Java and OpenGL

    Get PDF
    The main objective of this work is to implement web-based educational modules for chemical engineering students. Phase behavior is a topic with which the students seem to struggle with, particularly for mixtures, where a 2-D representation of the phase diagram falls far short of the understanding a 3-D model can provide. Using the platform-independence of Java and the graphics capability of OpenGL, three phase diagram Java applets have been developed. Users can view these web-based 3D applets by installing a plug-in. These modules provide users with an ability to rotate the 3D models, slice through them, zoom into them and view their various 2D projections. Also, a molecular simulation applet for measuring chemical potential of binary mixtures has been developed, using a Java-based molecular simulation application-programming interface (API). First, the thesis presents a brief overview of phase diagrams and explains why modeling them using computer graphics is useful. While visualization involves the merging of data with the display of geometric objects through computer graphics, it is important to study the software issues involved in web-based visualization. The paper explains the visualization framework by describing the visualization pipeline and then using it as a guideline for the development of the modules. Next, the paper describes the development of the molecular simulation applet using a molecular simulation API - Etomica. The Java applet provides for dynamic modification and interrogation of the simulation, while it is in progress, which enables students to see directly the effect of changing state conditions or molecular interactions on the behavior of the molecules and on the outcome of the simulation. It is hoped that by using these web-based 3D phase diagrams the chemical engineering students would gain a better understanding of the complicated 3D models, making this package a useful instructional aid. It is also hoped that the molecular simulation applet would be an effective tool to help students understand molecular simulations

    Environment for the simulation of different ACP and error recovery in Distributed Data Bases

    Get PDF
    This paper presents an evolution of a simulation environment where situations in which a DDB should maintain data integrity are modeled and implemented. These situations include failures taking place during transactions, and the focus is mainly on the utilization and later comparison of different atomic commit protocols (ACP). The implementation was made on Java due to different aspects such as ease of work, portability, etc. The environment is mainly based on failure recovery of transactions in a distributed data environment, and it allows to choose for the simulation development between two-phase, three-phase, optimistic and pessimistic protocols. The task scheduler defined and implemented to carry out each simulation, based on an execution design establishing each specific problem to be solved, is also specified.Facultad de Informátic

    Emulating and evaluating hybrid memory for managed languages on NUMA hardware

    Get PDF
    Non-volatile memory (NVM) has the potential to become a mainstream memory technology and challenge DRAM. Researchers evaluating the speed, endurance, and abstractions of hybrid memories with DRAM and NVM typically use simulation, making it easy to evaluate the impact of different hardware technologies and parameters. Simulation is, however, extremely slow, limiting the applications and datasets in the evaluation. Simulation also precludes critical workloads, especially those written in managed languages such as Java and C#. Good methodology embraces a variety of techniques for evaluating new ideas, expanding the experimental scope, and uncovering new insights. This paper introduces a platform to emulate hybrid memory for managed languages using commodity NUMA servers. Emulation complements simulation but offers richer software experimentation. We use a thread-local socket to emulate DRAM and a remote socket to emulate NVM. We use standard C library routines to allocate heap memory on the DRAM and NVM sockets for use with explicit memory management or garbage collection. We evaluate the emulator using various configurations of write-rationing garbage collectors that improve NVM lifetimes by limiting writes to NVM, using 15 applications and various datasets and workload configurations. We show emulation and simulation confirm each other's trends in terms of writes to NVM for different software configurations, increasing our confidence in predicting future system effects. Emulation brings novel insights, such as the non-linear effects of multi-programmed workloads on NVM writes, and that Java applications write significantly more than their C++ equivalents. We make our software infrastructure publicly available to advance the evaluation of novel memory management schemes on hybrid memories

    Towards a Tool-based Development Methodology for Pervasive Computing Applications

    Get PDF
    Despite much progress, developing a pervasive computing application remains a challenge because of a lack of conceptual frameworks and supporting tools. This challenge involves coping with heterogeneous devices, overcoming the intricacies of distributed systems technologies, working out an architecture for the application, encoding it in a program, writing specific code to test the application, and finally deploying it. This paper presents a design language and a tool suite covering the development life-cycle of a pervasive computing application. The design language allows to define a taxonomy of area-specific building-blocks, abstracting over their heterogeneity. This language also includes a layer to define the architecture of an application, following an architectural pattern commonly used in the pervasive computing domain. Our underlying methodology assigns roles to the stakeholders, providing separation of concerns. Our tool suite includes a compiler that takes design artifacts written in our language as input and generates a programming framework that supports the subsequent development stages, namely implementation, testing, and deployment. Our methodology has been applied on a wide spectrum of areas. Based on these experiments, we assess our approach through three criteria: expressiveness, usability, and productivity

    Simulation modelling and visualisation: toolkits for building artificial worlds

    Get PDF
    Simulations users at all levels make heavy use of compute resources to drive computational simulations for greatly varying applications areas of research using different simulation paradigms. Simulations are implemented in many software forms, ranging from highly standardised and general models that run in proprietary software packages to ad hoc hand-crafted simulations codes for very specific applications. Visualisation of the workings or results of a simulation is another highly valuable capability for simulation developers and practitioners. There are many different software libraries and methods available for creating a visualisation layer for simulations, and it is often a difficult and time-consuming process to assemble a toolkit of these libraries and other resources that best suits a particular simulation model. We present here a break-down of the main simulation paradigms, and discuss differing toolkits and approaches that different researchers have taken to tackle coupled simulation and visualisation in each paradigm

    MultiVeStA: Statistical Model Checking for Discrete Event Simulators

    Get PDF
    The modeling, analysis and performance evaluation of large-scale systems are difficult tasks. Due to the size and complexity of the considered systems, an approach typically followed by engineers consists in performing simulations of systems models to obtain statistical estimations of quantitative properties. Similarly, a technique used by computer scientists working on quantitative analysis is Statistical Model Checking (SMC), where rigorous mathematical languages (typically logics) are used to express systems properties of interest. Such properties can then be automatically estimated by tools performing simulations of the model at hand. These property specifications languages, often not popular among engineers, provide a formal, compact and elegant way to express systems properties without needing to hard-code them in the model definition. This paper presents MultiVeStA, a statistical analysis tool which can be easily integrated with existing discrete event simulators, enriching them with efficient distributed statistical analysis and SMC capabilities

    r-Java 2.0: the nuclear physics

    Full text link
    [Aims:] We present r-Java 2.0, a nucleosynthesis code for open use that performs r-process calculations as well as a suite of other analysis tools. [Methods:] Equipped with a straightforward graphical user interface, r-Java 2.0 is capable of; simulating nuclear statistical equilibrium (NSE), calculating r-process abundances for a wide range of input parameters and astrophysical environments, computing the mass fragmentation from neutron-induced fission as well as the study of individual nucleosynthesis processes. [Results:] In this paper we discuss enhancements made to this version of r-Java, paramount of which is the ability to solve the full reaction network. The sophisticated fission methodology incorporated into r-Java 2.0 which includes three fission channels (beta-delayed, neutron-induced and spontaneous fission) as well as computation of the mass fragmentation is compared to the upper limit on mass fission approximation. The effects of including beta-delayed neutron emission on r-process yield is studied. The role of coulomb interactions in NSE abundances is shown to be significant, supporting previous findings. A comparative analysis was undertaken during the development of r-Java 2.0 whereby we reproduced the results found in literature from three other r-process codes. This code is capable of simulating the physical environment of; the high-entropy wind around a proto-neutron star, the ejecta from a neutron star merger or the relativistic ejecta from a quark nova. As well the users of r-Java 2.0 are given the freedom to define a custom environment. This software provides an even platform for comparison of different proposed r-process sites and is available for download from the website of the Quark-Nova Project: http://quarknova.ucalgary.ca/Comment: 26 pages, 18 figures, 1 tabl

    A Java based simulation for basic control

    Get PDF
    7th IFAC Symposium on Advances in Control Education 21/06/2006 MadridIn this paper we present a java based simulator for control education in basiccourses. The application has been developed using the well known tool Easy JavaSimulation.The objective of the application is to help the student to learn the design of classiccontrollers such as P,PI, PID, etc testing the tuning procedures to control the position ofan antenna controlled by a DC motor. Thus the application allows the student to choosethe parameters of the antenna and the DC motor, to choose the controller to be used andits parameters and finally to simulate the closed loop system observing the evolution ofthe signals as well as a 3-D view. Furthermore, in order to show the real behavior of thesystem, dead zone, saturation, disturbances and non-linearities can be added to the model.This application has been used by the authors to teach a basic control course at EscuelaSuperior de Ingenieros (University of Seville) as virtual laboratory.Moreover, since the application is java based, this can be used by the students from theauthors’ web pages and this can also be installed in the student’s laptop (whichever theplatform is) by downloading it from the authors web page (Limon and Salas, 2003Ministerio de Ciencia y Tecnología DPI2004-07444Ministerio de Ciencia y Tecnología DPI2003-0042
    • …
    corecore