Inverse modeling is a powerful tool for extracting information about the subsurface from geophysical data. Geophysical inverse problems are inherently multidisciplinary, requiring elements from the relevant physics, n...
详细信息
Inverse modeling is a powerful tool for extracting information about the subsurface from geophysical data. Geophysical inverse problems are inherently multidisciplinary, requiring elements from the relevant physics, numerical simulation, and optimization, as well as knowledge of the geologic setting, and a comprehension of the interplay between all of these elements. The development and advancement of inversion methodologies can be enabled by a framework that supports experimentation, is flexible and extensible, and allows the knowledge generated to be captured and shared. The goal of this paper is to propose a framework that supports many different types of geophysical forward simulations and deterministic inverse problems. Additionally, we provide an open source implementation of this framework in Python called SIMPEG (Simulation and Parameter Estimation in Geophysics, http://***). Included in SIMPEG are staggered grid, mimetic finite volume discretizations on a number of structured and semi-structured meshes, convex optimization programs, inversion routines, model parameterizations, useful utility codes, and interfaces to standard numerical solver packages. The framework and implementation are modular, allowing the user to explore, experiment with, and iterate over a variety of approaches to the inverse problem. SIMPEG provides an extensible, documented, and well-tested framework for inverting many types of geophysical data and thereby helping to answer questions in geoscience applications. Throughout the paper we use a generic direct current resistivity problem to illustrate the framework and functionality of SIMPEG. (C) 2015 The Authors. Published by Elsevier Ltd.
SWAT(Soil and Water Assessment Tool)and APEX(Agricultural Policy/Environmental eXtender)are respectively large and small watershed simulation models derived from EPIC(Environmental Policy Integrated Climate),a field-s...
详细信息
SWAT(Soil and Water Assessment Tool)and APEX(Agricultural Policy/Environmental eXtender)are respectively large and small watershed simulation models derived from EPIC(Environmental Policy Integrated Climate),a field-scale agroecology simulation *** three models are coded in Fortran and have evolved over several *** are widely used to analyze anthropogenic influences on soil and water quality and *** of the original Fortran code has been retained even though Fortran has been through several cycles of *** now provides functionality originally restricted to languages like C,designed to communicate directly with the operating system and *** can now use an object-oriented style of programming in Fortran,including inheritance,run-time polymorphism and *** order to enhance their utility in research and policy-making,the models are undergoing a major revision to use some of the new Fortran *** these new programming paradigms the developers of SWAT,APEX,and EPIC are working to make communication between the two models *** paper describes the ongoing revision of these models that will make them easier to use,maintain,modify and *** is intended that they will converge as they continue to evolution,while maintaining their distinctive features,capabilities and identities.
The state of knowledge in how to specify sequential programs in object-oriented languages such as Java and C# and the state of the art in automated verification tools for such programs have made measurable progress in...
详细信息
The state of knowledge in how to specify sequential programs in object-oriented languages such as Java and C# and the state of the art in automated verification tools for such programs have made measurable progress in the last several years. This paper describes several remaining challenges and approaches to their solution.
The authors present a navel method for developing reconfigurable systems targeted at embedded system applications. The paper shows how an existing objectoriented design method (MOOSE) has been adapted to include reco...
详细信息
The authors present a navel method for developing reconfigurable systems targeted at embedded system applications. The paper shows how an existing objectoriented design method (MOOSE) has been adapted to include reconfigurable hardware (FPGAs). Previous research an reconfigurable computing has concentrated on the efficient mapping of algorithms to FPGAs. It must be realised that reconfigurable hardware usually forms part of much larger embedded systems, which include other hardware components, memories, and processors executing significant software tasks. The work represents a significant advance over current embedded system design methods in that it integrates the use of reconfigurable hardware components with a systematic design method for complete systems including both hardware and software. The development techniques are illustrated by a practical example. Although the enhanced methodology is applicable to some reconfigurable computing systems, further work is planned to extend our design technique to exploit the potential benefits of embedded systems which can be dynamically reconfigured at system fun-time, The final objective is to produce an abject oriented design methodology where system objects can be seamlessly implemented in either software or reconfigurable hardware.
SoundWorks, an object-oriented distributed system that lets users interactively manipulate sound through a graphical interface, is discussed. The system handles digitally sampled sounds as well as those generated by s...
详细信息
SoundWorks, an object-oriented distributed system that lets users interactively manipulate sound through a graphical interface, is discussed. The system handles digitally sampled sounds as well as those generated by software and digital signal processing hardware. An overview of the different types of sounds and window interfaces provided by SoundWorks and of the operations that modify these sounds is presented. The high-level architecture and the design of the SoundWorks system the protocol defined between the user interface code and client application, and the sound kernel specification that manages sounds and lines, performs operations on sounds, and interfaces to the digital hardware are described. The NEWS application programming environment, which provided the necessary primitive graphic items for a graphical window-based interface and offered an object-oriented approach for development of the SoundWorks system, is also discussed
Modern object-oriented systems have to cope with an increasing number of exceptional conditions and incorporate fault tolerance into systems' activities in order to meet dependability-related requirements. An exce...
详细信息
Modern object-oriented systems have to cope with an increasing number of exceptional conditions and incorporate fault tolerance into systems' activities in order to meet dependability-related requirements. An exception handling mechanism is one of the most important schemes for detecting and recovering errors, and for structuring fault-tolerant activities in a system. The mechanisms that were ill designed can make an application unreliable and difficult to understand, maintain and reuse in the presence of faults. This paper surveys various exception mechanisms implemented in different object-oriented languages, evaluates and compares different designs. A taxonomy is developed to help address 10 basic technical aspects for a given exception handling proposal, including exception representation, external exceptions in signatures, separation between internal and external exceptions, attachment of handlers, handier binding, propagation of exceptions, continuation of the control flow, clean-up actions, reliability checks, and concurrent exception handling. Practical issues and difficulties are summarized., major trends in actual languages are identified, and directions for future work are suggested. (C) 2001 Elsevier Science Inc. All rights reserved.
A total of 295 junior, intermediate, and senior professional Java consultants ( 99 individuals and 98 pairs) from 29 international consultancy companies in Norway, Sweden, and the UK were hired for one day to particip...
详细信息
A total of 295 junior, intermediate, and senior professional Java consultants ( 99 individuals and 98 pairs) from 29 international consultancy companies in Norway, Sweden, and the UK were hired for one day to participate in a controlled experiment on pair programming. The subjects used professional Java tools to perform several change tasks on two alternative Java systems with different degrees of complexity. The results of this experiment do not support the hypotheses that pair programming in general reduces the time required to solve the tasks correctly or increases the proportion of correct solutions. On the other hand, there is a significant 84 percent increase in effort to perform the tasks correctly. However, on the more complex system, the pair programmers had a 48 percent increase in the proportion of correct solutions but no significant differences in the time taken to solve the tasks correctly. For the simpler system, there was a 20 percent decrease in time taken but no significant differences in correctness. However, the moderating effect of system complexity depends on the programmer expertise of the subjects. The observed benefits of pair programming in terms of correctness on the complex system apply mainly to juniors, whereas the reductions in duration to perform the tasks correctly on the simple system apply mainly to intermediates and seniors. It is possible that the benefits of pair programming will exceed the results obtained in this experiment for larger, more complex tasks and if the pair programmers have a chance to work together over a longer period of time.
techniques are indispensable for the specification and veri. cation of the functional behaviour of programs. In object-oriented specification languages like Java Modeling Language, a powerful abstraction technique is ...
详细信息
techniques are indispensable for the specification and veri. cation of the functional behaviour of programs. In object-oriented specification languages like Java Modeling Language, a powerful abstraction technique is the use of model classes, that is, classes that are only used for specification purposes and that provide object-oriented interfaces for essential mathematical concepts such as sets or relations. Although the use of model classes in specifications is natural and powerful, they pose problems for veri. cation. Program verifiers map model classes to their underlying logics. Flaws in a model class or the mapping can easily lead to unsoundness and incompleteness. This article proposes an approach for the faithful mapping of model classes to mathematical structures provided by the theorem prover of the program veri. er at hand. Faithfulness means that a given model class semantically corresponds to the mathematical structure it is mapped to. This approach enables reasoning about programs specified in terms of model classes. It also helps in writing consistent and complete model-class specifications as well as in identifying and checking redundant specifications.
A project to develop a new system, Core Master 2, was undertaken in Sweden in 1990. This is a relatively large system, for nuclear power plant core engineering. Main project goals were to increase end-user productivit...
详细信息
A project to develop a new system, Core Master 2, was undertaken in Sweden in 1990. This is a relatively large system, for nuclear power plant core engineering. Main project goals were to increase end-user productivity while reducing user-induced errors and software life-cycle costs. To meet them and improve software quality, object-oriented technology was adopted. The software process became much slower than expected. Learning aspects related to the new technology and changing specifications account for most of the delay. The first version is now ready and is being shipped to customers. Lessons learned from the process, education and training are discussed.
Test data are an invaluable resource for structural engineering research. In this paper, a numerical database system is built for material properties of steels, steel columns, steel beams and unstiffened steel plates,...
详细信息
Test data are an invaluable resource for structural engineering research. In this paper, a numerical database system is built for material properties of steels, steel columns, steel beams and unstiffened steel plates, etc. The database is used to clarify the strength variations of material properties and to obtain the mean value and the coefficient of variation of each member strength. In addition, these values are compared with existing design formulas. The database is further developed in the shape of a structural test information-based system. This system includes database functions, test data evaluation functions, reference retrieval functions and technical terms explanation functions. The usefulness of the knowledge base approach for representing the test data is proved and the potential and problems of the system are clarified. Copyright (C) 1996 Elsevier Science Ltd.
暂无评论