首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 15 毫秒
1.
针对很多结构有限元程序需要使用数值方法进行系统方程组求解的共性特点,提出对数值求解部分进行构件化设计,形成求解器服务,用于面向对象有限元并行计算框架PANDA为不同应用类型的有限元程序开发提供数值算法.将美国Livermore国家实验室开发的数值求解器库HYPRE作为数值求解构件集成到PANDA框架中,利用其提供的数值...  相似文献   

2.
The design of the stacking sequence for a composite laminate involves a set of discrete variables (plymaterial and ply orientation), and is thus well-suited to genetic algorithms for design optimization. Such algorithms have typically been custom-designed in FORTRAN 77 to suit specific optimization problems. Fortran 90 is a modern, powerful language with features that support important programming concepts, including those used in object-oriented programming. The Fortran 90 genetic algorithm module is used to define genetic data types, the functions which use these data types, and to provide a general framework for solving composite laminate structure design problems. The language's support of abstract data types is used to build genetic structures such as populations, subpopulations, individuals, chromosomes, and genes, and these data types are combined and manipulated by module subroutines. The use of abstract data types and long variable names makes the code useful and easily understood, while dynamic memory allocation makes the module flexible enough to be used in design problems of varying size and specification.  相似文献   

3.
Finite element programming and C   总被引:4,自引:0,他引:4  
In finite element programming, data have to be dealt with which are of different types but belong together in a logical sense. It would be very effective, with respect to program readability and maintainability, to store these data as a single unit. Effcient software design requires that all parts of information, which belong together logically, are stored as a single data unit. This can be accomplished utilizing structured data types.

Dynamic memory allocation allows the definition of dynamic variables which can be created and destroyed during run-time. Dynamic memory management is handled in C by pointers. In other conventional languages, e.g. Fortran 77, the programmer has the responsibility to select adequate array sizes for the largest problem to be solved. This often leads in engineering practice to array oversizing and to memory wasting. By allocating memory dynamically during program execution according to actual problem size, wasting can be avoided.

The combination of structured data and pointers along with the dynamic memory allocation capabilities of C allows the creation of linked lists. Utilizing these concepts, an effective and easy-to-read C program has been written for finite element analysis. The C program presented demonstrates the use of these techniques for interactive finite mesh generation. The strengths of C are compared to that of Fortran 77 and Fortran 90. It has been found that for finite element programming C is in many aspects superior to Fortran 77. However, it has some disadvantages in comparison with Fortran 90 concerning array processing.  相似文献   


4.
Adaptive grid refinement in Fortran (AGRIF) is a Fortran90 package for the integration of adaptive mesh refinement (AMR) features within existing finite difference codes. The package first provides model-independent Fortran90 procedures containing the different operations in an AMR process: time integration of grid hierarchy, clustering, interpolations, updates, etc. The package then creates the Fortran90 model-dependent part of the code based on an entry file written by the user.The basic idea of AGRIF is to make use of Fortran90 pointers to successively address the variables of the different grids of an AMR process. As pointers can be used exactly like other (static) variables in Fortran, most of the original code will remain unchanged.  相似文献   

5.
We investigate the applicability of curvilinear grids in the context of astrophysical simulations and WENO schemes. With the non-smooth mapping functions from Calhoun et al. (2008), we can tackle many astrophysical problems which were out of scope with the standard grids in numerical astrophysics. We describe the difficulties occurring when implementing curvilinear coordinates into our WENO code, and how we overcome them. We illustrate the theoretical results with numerical data. The WENO finite difference scheme works only for high Mach number flows and smooth mapping functions, whereas the finite volume scheme gives accurate results even for low Mach number flows and on non-smooth grids.  相似文献   

6.
In this paper, an object-oriented framework for numerical analysis of multi-physics applications is presented. The framework is divided into several basic sets of classes that enable the code segments to be built according to the type of problem to be solved. Fortran 2003 was used in the development of this finite element program due to its advantages for scientific and engineering programming and its new object-oriented features. The program was developed with h-type adaptive mesh refinement, and it was tested for several classical cases involving heat transfer, fluid mechanics and structural mechanics. The test cases show that the adaptive mesh is refined only in the localization region where the feature gradient is relatively high. The overall mesh refinement and the h-adaptive mesh refinement were justified with respect to the computational accuracy and the CPU time cost. Both methods can improve the computational accuracy with the refinement of mesh. The overall mesh refinement causes the CPU time cost to greatly increase as the mesh is refined. However, the CPU time cost does not increase very much with the increase of the level of h-adaptive mesh refinement. The CPU time cost can be saved by up to 90%, especially for the simulated system with a large number of elements and nodes.  相似文献   

7.
20世纪50年代,第一个程序编译器诞生了,这对于程序设计技术是崭新的。随着时间的推移,程序设计方法经历了结构化程序设计,模块化程序设计和面向对象程序设计。直到今天,逐步兴起了面向组件程序设计,对象技术和组件技术就成为了当今最主流的编程技术。首先介绍了基于组件的编程思想,同时联系与数据库的应用,介绍当前最流行的几种数据库数据交互组件及其对应的数据存取技术和框架。接着,讨论了几种基于组件的数据存取方式,并写出了在其应用中的一些经验。  相似文献   

8.
叶晓彤 《微机发展》2005,15(7):81-83
现有的利用JSP,Servlet和EJB开发基于J2EE企业应用系统存在着重用业务逻辑困难、开发维护效率低等缺陷。因此文中介绍了基于Struts和JDO的J2EE企业应用系统架构,此架构结合了Struts和JDO的优点,提高了开发效率,同时提高了系统的可维护性和可扩充性。Struts提供了一个优秀的MVC框架,分解商业逻辑、控制逻辑和表现逻辑的代码,提高了代码的可重用性和灵活性,便于组件式开发;JDO提供了面向对象的持久数据存储,弥补了EJB对面向对象编程的不足,提供了完全的面向对象支持。  相似文献   

9.
A majority of scientific and engineering applications in aerodynamics and solid mechanics are written in Fortran. To reduce the high cost of software development, NASA researchers reuse most of the legacy Fortran codes instead of developing them from scratch in the numerical propulsion system simulation project. In this paper, we present an efficient methodology for integrating legacy applications written in Fortran into a distributed object framework. Issues and strategies regarding the conversion and wrapping of Fortran codes into common object request broker architecture objects are discussed. Fortran codes are modified as little as possible when they are decomposed into modules and wrapped as objects. We implement a wrapper generator which takes the Fortran application as input and generates the C++ wrapper files and interface definition language file. Tedious programming tasks for wrapping the codes can therefore be reduced.  相似文献   

10.
11.
Multigrid methods are distinguished by their optimal (sequential) efficiency and by the fact that all their algorithmical components are fully parallelizable. For this reason, this class of numerical methods is especially attractive for use on parallel (MIMD, local memory) computers. In this paper, we describe a parallel multigrid solver for steady-state incompressible Navier-Stokes equations on general domains which is currently being developed at the GMD. Due to the geometrical generality of the problem, our approach is based on a non-staggered (nodal-point) finite volume scheme on multi-block boundary fitted grids. The typical instability of non-staggered schemes is overcome by suitably modifying the discrete continuity equation without affecting the overall order of consistency.

Starting from the most simple Cartesian case, we discuss several possible multigrid approaches to the general 2D-problem. This motivates the basic design decisions of our multigrid solver in regard to both the discretization and the choice of multigrid components (smoothing schemes). Furthermore, the principal technique of parallelization (grid partitioning) is described as well as some fundamental aspects of the implementation (communication library).  相似文献   


12.
A numerical method based on compact fourth order finite difference approximations is used for the solution of the incompressible Navier–Stokes equations. Our method is implemented for two dimensional, curvilinear coordinates on orthogonal, staggered grids. Two numerical experiments confirm the theoretically expected order of accuracy.  相似文献   

13.
A significant effort in recent computer-integrated manufacturing (CIM) development was carried out by SEMATECH who had laid out and created an open framework for the integration of manufacturing execution system applications running in semiconductor industries at the factory operation level. This paper presents the feasibility to incorporate basic manufacturing applications at the factory engineering level, which include product design, process planning, and material requirement planning, into the SEMATECH CIM framework to form a generic framework across both factory operation level and factory engineering level. The CIM framework established in this paper was aimed to provide a reusable integrated system framework that clearly specifies the functional interface boundaries and standard information model of the required components, in general, manufacturing systems at both factory operation and factory engineering levels. Standard unified modeling language (UML) diagrams and Petri nets have been utilized to model and analyze the specifications and dynamic behaviors of this generic CIM framework. The goal is to build a framework by creating a common, modular, flexible, and integrated object model that unifies an advanced object-oriented architecture concept and heterogeneous manufacturing application development in an open and multisupplier CIM system environment.  相似文献   

14.
. An object-oriented (OO) framework for Partial Differential Equations (PDEs) provides software abstractions for numerical simulation of PDEs. The design of such frameworks is not trivial, and the outcome of the design is highly dependent on which mathematical abstractions one chooses to support. In this paper, coordinate free abstractions for PDEs are advocated. The coordinate free formulation of a PDE hides the underlying coordinate system. Therefore, software based on these concepts has the prospect of being more modular, since the PDE formulation is separated from the representation of the coordinates. Use of coordinate free methods in two independent OO frameworks are presented, in order to exemplify the viability of the concepts. The described applications simulate seismic waves for various classes of rock models and the incompressible Navier-Stokes equations on curvi-linear grids, respectively. In both cases, the possibility to express the equations in a domain independent fashion is crucial. Similarities and differences between the two coordinate free frameworks are discussed. A number of places where such frameworks should be designed for modification is identified. This identification is of interest both for framework developers and for tentative framework users. ID="A1"Correspondance and offprint requests to: K Ahlander, Dept of Information Technology, University of Uppsala, Box 337, SE-75105 Uppsala, Sweden. E-mail: krister@tdb.uu.se  相似文献   

15.
16.
SENG-CHO TIMOTHY CHOU 《Software》1996,26(12):1373-1384
Appropriate aids on top of the primitive object-oriented model will help promote better understanding of the semantics of applications and allow us to focus better on the various aspects of given problems. This study focuses on the exploration of a design model and the corresponding programming framework for the modelling and implementation of applications involving active autonomous objects based on the object technology. The proposed design model is an artificial life model based on the colony phenomenon in nature. This model can naturally be mapped onto an object-oriented implementation. The colony model favours a predicate-based object communication/coordination pattern as opposed to the navigational message-passing paradigm seen in programming languages such as C+ +. The proposed model is particularly appealing to us, for it presents a unifying conceptual design model and programming framework for a wide class of applications including neural networks, genetic algorithms and fuzzy expert systems. The ideas presented are illustrated through a genetic algorithm problem.  相似文献   

17.
We present an accurate and efficient explicit hybrid solver for Maxwell's equations in time domain. The hybrid solver combines FD-TD with an unstructured finite volume solver. The finite volume solver is a generalization of FD-TD to unstructured grids and it uses a third-order staggered Adams–Bashforth scheme for time discretization. A spatial filter of Laplace type is used by the finite volume solver to enable long simulations without suffering from late time instability problems. The numerical examples demonstrate that the hybrid solver is superior to stand-alone FD-TD in terms of accuracy and efficiency.  相似文献   

18.
A framework is presented for partitioning arrays with irregular workload. Within the framework structured and unstructured methods are combined in a new approach to partition data, based on blocks and block operations. A new variant of the recursive spectral bisection method suitable in this context is suggested. The use of the framework is demonstrated for a real life application, ocean modeling of the Baltic Sea. In this case study, the new approach gives very good results while standard partitioning methods cannot fulfill all the listed requirements. The operations have been implemented in a Fortran 90 software package with an object-oriented design.  相似文献   

19.
In this work, we introduce new finite-difference shock-capturing central schemes on staggered grids. Staggered schemes may have better resolution of the corresponding unstaggered schemes of the same order. They are based on high-order nonoscillatory reconstruction (ENO or WENO), and a suitable ODE solver for the computation of the integral of the flux. Although they suffer from a more severe stability restriction, they do not require a numerical flux function. A comparison of the new schemes with high-order finite volume (on staggered and unstaggered grids) and high order unstaggered finite difference methods is reported.  相似文献   

20.
Fundamental concepts of object-oriented programming (OOP) are considered, including abstract data types, encapsulation, inheritance, and static and dynamic polymorphism. Constructs of Fortran 90/95 that support the greater part of those concepts are discussed.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号