Iris is an extensible application that provides astronomers with a user-friendly interface capable of ingesting broad-band data from many different sources in order to build, explore, and model spectral energy distrib...
详细信息
Iris is an extensible application that provides astronomers with a user-friendly interface capable of ingesting broad-band data from many different sources in order to build, explore, and model spectral energy distributions (SEDs). Iris takes advantage of the standards defined by the International Virtual Observatory Alliance, but hides the technicalities of such standards by implementing different layers of abstraction on top of them. Such intermediate layers provide hooks that users and developers can exploit in order to extend the capabilities provided by Iris. For instance, custom Python models can be combined in arbitrary ways with the Iris built-in models or with other custom functions. As such, Iris offers a platform for the development and integration of SED data, services, and applications, either from the user's system or from the web. In this paper we describe the built-in features provided by Iris for building and analyzing SEDs. We also explore in some detail the Iris framework and software development kit, showing how astronomers and software developers can plug their code into an integrated SED analysis environment. (C) 2014 Elsevier B.V. All rights reserved.
The formalisation of object-oriented languages is essential for describing the implementation details of specific programming languages or for developing program verification techniques. However there has been relativ...
详细信息
The formalisation of object-oriented languages is essential for describing the implementation details of specific programming languages or for developing program verification techniques. However there has been relatively little formalisation work aimed at abstractly describing the fundamental concepts of object-oriented programming, separate from specific language considerations or suitability for a particular verification style. In this paper we address this issue by formalising a language that includes the core object-oriented programming language concepts of field tests and updates, methods, constructors, subclassing, multithreading, and synchronisation, built on top of standard sequential programming constructs. The abstract syntax is relatively close to the core of typical object-oriented programming languages such as Java. A novel aspect of the syntax is that objects and classes are encapsulated within a single syntactic term, including their fields and methods. Furthermore, class terms are structured according to the class hierarchy, and objects appear as subterms of their class (and method instances as subterms of the relevant object). This helps to narrow the gap between how a programmer thinks about their code and the underlying mathematical objects in the semantics. The semantics is defined operationally, so that all actions a program may take, such as testing or setting local variables and fields, or invoking methods on other objects, appear on the labels of the transitions. A process-algebraic style of interprocess communication is used for object and class interactions. A benefit of this label-based approach to the semantics is that a separation of concerns can be made when defining the rules of the different constructs, and the rules tend to be more concise. The basic rules for individual commands may be composed into more powerful rules that operate at the level of classes and objects. The traces generated by the operational semantics are used as the
It is necessary to manage the fatigue crack growth (FCG) once those cracks are detected during in-service inspections. This is particular critical as high strength steels are being used increasingly in ship and offsho...
详细信息
It is necessary to manage the fatigue crack growth (FCG) once those cracks are detected during in-service inspections. This is particular critical as high strength steels are being used increasingly in ship and offshore structures. In this paper, a simulation program (FCG-System) is developed utilizing the commercial software ABAQUS with its object-oriented programming interface to simulate the fatigue crack path and to compute the corresponding fatigue life. In order to apply FCG-System in large-scale marine structures, the substructure modeling technique is integrated in the system under the consideration of structural details and load shedding during crack growth. Based on the nodal forces and nodal displacements obtained from finite element analysis, a formula for shell elements to compute stress intensity factors is proposed in the view of virtual crack closure technique. Neither special singular elements nor the collapsed element technique is used at the crack tip. The established FCG-System cannot only treat problems with a single crack, but also handle problems with multiple cracks in case of simultaneous but uneven growth. The accuracy and the robustness of FCG-System are demonstrated by two illustrative examples. No stability and convergence difficulties have been encountered in these cases and meanwhile, insensitivity to the mesh size is confirmed. Therefore, the FCG-System developed by authors could be an efficient tool to perform fatigue crack growth analysis on marine structures. (C) 2013 Elsevier Ltd. All rights reserved.
This paper presents a comprehensive semiconductor optical device (SOD) simulation tool produced by object-oriented programming (OOP). First, the SOD is assumed to be composed of the elementary cell which is abstracted...
详细信息
ISBN:
(纸本)9780769536347
This paper presents a comprehensive semiconductor optical device (SOD) simulation tool produced by object-oriented programming (OOP). First, the SOD is assumed to be composed of the elementary cell which is abstracted from semiconductor optical amplifiers. Meanwhile, some auxiliary classes and inheritance hierarchies are defined. Besides, the numerical and transaction algorithms with high performance are developed. Thus, the OOP model with high efficiency has been established to analyze the static and dynamic device behaviors. The practice shows that the simulator which can be easily maintained is flexible and extensible.
Purpose - This paper develops C++ and Fortran-90 solvers to establish parallel solution procedures in a finite element or meshless analysis program using shared memory computers. The paper aims to discuss these issues...
详细信息
Purpose - This paper develops C++ and Fortran-90 solvers to establish parallel solution procedures in a finite element or meshless analysis program using shared memory computers. The paper aims to discuss these issues. Design/methodology/approach - The stiffness matrix can be symmetrical or unsymmetrical, and the solution schemes include sky-line Cholesky and parallel preconditioned conjugate gradient-like methods. Findings - By using the features of C++ or Fortran-90, the stiffness matrix and its auxiliary arrays can be encapsulated into a class or module as private arrays. This class or module will handle how to allocate, renumber, assemble, parallelize and solve these complicated arrays automatically. Practical implications - The source codes can be obtained online at http//***/similar to juju. The major advantage of the scheme is that it is simple and systematic, so an efficient parallel finite element or meshless program can be established easily. Originality/value - With the minimum requirement of computer memory, an object-oriented C++ class and a Fortran-90 module were established to allocate, renumber, assemble, parallel, and solve the global stiffness matrix, so that the programmer does not need to handle them directly.
Popularity of domain-specific languages brings the problem of language components reuse. It should be possible to use parts of different languages in development of new one to lower costs and also allow incremental de...
详细信息
Popularity of domain-specific languages brings the problem of language components reuse. It should be possible to use parts of different languages in development of new one to lower costs and also allow incremental development. This problem could be solved using the composition of languages. In this paper we discuss the view of language composition from the perspective of concepts composition, where the role of concrete syntax is lowered. We present examples of language composition based on the principles of object composition implemented using YAJCo parser generator, that allows to specify the language based on its abstract syntax.
Because objects need to be stored and reloaded on different environments, serializing object graphs is a very important activity. There is a plethora of serialization frameworks with different requirements and design ...
详细信息
Because objects need to be stored and reloaded on different environments, serializing object graphs is a very important activity. There is a plethora of serialization frameworks with different requirements and design trade-offs. Most of them are based on recursive parsing of the object graphs, an approach which often is too slow. In addition, most of them prioritize a language-agnostic format instead of speed and language-specific object serialization. For the same reason, such serializers usually do not support features such as class-shape changes, global references or executing pre and post load actions. Looking for speed, some frameworks are partially implemented at Virtual Machine (VM) level, hampering code portability and making them difficult to understand, maintain and extend. In this paper, we present Fuel, a general-purpose object serializer based on these principles: (1) speed, through a compact binary format and a pickling algorithm which invests time in serialization for obtaining the best performance on materialization;(2) good object-oriented design, without special help at VM;and (3) serialize any object, thus have a full-featured language-specific format. We implement and validate this approach in Pharo, where we demonstrate that Fuel is faster than other serializers, even those with special VM support. The extensibility of Fuel made possible to successfully serialize various objects: classes in Newspeak, debugger stacks, and full content management system object graphs. Copyright (c) 2012 John Wiley & Sons, Ltd.
Development of a logical inference tool on ontologies for Microsoft. NET is considered. The tool stands out since it allows using the classes and objects of the object-oriented programming environment as concepts and ...
详细信息
Development of a logical inference tool on ontologies for Microsoft. NET is considered. The tool stands out since it allows using the classes and objects of the object-oriented programming environment as concepts and individuals, respectively. This helps to construct the reasoning directly over program objects and provides typesafe tools to construct ontological descriptions of information. Restrictions associated with the potential of the C# and F# type systems for providing logical constructions are considered.
Smartphones provide applications that are increasingly similar to those of interactive desktop programs, providing rich graphics and animations. To simplify the creation of these interactive applications, mobile opera...
详细信息
ISBN:
(纸本)9783981537024
Smartphones provide applications that are increasingly similar to those of interactive desktop programs, providing rich graphics and animations. To simplify the creation of these interactive applications, mobile operating systems employ high-level object-oriented programming languages and shared libraries to manipulate the device's peripherals and provide common user-interface frameworks. The presence of dynamic dispatch and polymorphism allows for robust and extensible application coding. Unfortunately, the presence of dynamic dispatch also introduces significant overheads during method calls, which directly impact execution time. Furthermore, since these applications rely heavily on shared libraries and helper routines, the quantity of these method calls is higher than those found in typical desktop-based programs. Optimizing these method calls centrally before consumers download the application onto a given phone is exacerbated due to the large diversity of hardware and operating system versions that the application could run on. This paper proposes a methodology to tailor a given objective-C application and its associated device-specific shared library codebase using on-device post-compilation code optimization and transformation. In doing so, many polymorphic sites can be resolved statically, improving the overall application performance.
This article analyzes specific creation features of automated design the hydro-technical sluice system. An engineer frequently designs the hydro-technical structures. This work is done faster if special programming pr...
详细信息
ISBN:
(纸本)9786094576409
This article analyzes specific creation features of automated design the hydro-technical sluice system. An engineer frequently designs the hydro-technical structures. This work is done faster if special programming procedures for calculating and visualizing graphical objects are used. The creation tasks of the hydro-technical sluice automated design system are solved with Unified Modeling Language. Modeling separates four types of models: use case, behavior, class and implementation. Every model is visualized by one or more types of diagrams. Graphical system can select pipes depending on the type of water flow, form the roadbed by the sluice parameters, calculate panels according to the option type and design two hydro-technical structures views. It discerns objects-classes: pipe, roadbed, panel, which have some properties and methods that ease programmer's work. The hydro-technical structures altitudes and water flow parameters are known. First, program selects diameter of pipe from standard pipes database by using ActiveX Data objects technology, which by programming method connects drawing and database. Drawing's graphical objects have additional data from which exchange of data between graphical system and database is executed. Second, roadbed geometry is calculated using programmingobject's properties and methods. Third, the program knowing pipes' and roadbed' geometry designs panels. Integrated CAD environment (AutoCAD) with Visual Basic Application programming language enlarges possibilities in engineering design. Design system and example of the hydrotechnical sluice project with specifications is presented. Specific creation features of automated design system are discussed and conclusions are made.
暂无评论