FELIX-1.0: A finite element solver for the time dependent generator coordinate method with the Gaussian overlap approximation
详细信息    查看全文
文摘
We describe the software package FELIX that solves the equations of the time-dependent generator coordinate method (TDGCM) in method=retrieve&_eid=1-s2.0-S001046551500435X&_mathId=si53.gif&_user=111111111&_pii=S001046551500435X&_rdoc=1&_issn=00104655&md5=063a7655c455b39a18c6302088bd223c" title="Click to view the MathML source">N-dimensions (method=retrieve&_eid=1-s2.0-S001046551500435X&_mathId=si54.gif&_user=111111111&_pii=S001046551500435X&_rdoc=1&_issn=00104655&md5=9eb844ebb7f7efc2d9f9c41828269632" title="Click to view the MathML source">N≥1) under the Gaussian overlap approximation. The numerical resolution is based on the Galerkin finite element discretization of the collective space and the Crank–Nicolson scheme for time integration. The TDGCM solver is implemented entirely in C++. Several additional tools written in C++, Python or bash scripting language are also included for convenience. In this paper, the solver is tested with a series of benchmarks calculations. We also demonstrate the ability of our code to handle a realistic calculation of fission dynamics.

Program summary

Program title: FELIX-1.0

Catalogue identifier: AEYZ_v1_0

Program summary URL:http://cpc.cs.qub.ac.uk/summaries/AEYZ_v1_0.html

Program obtainable from: CPC Program Library, Queen’s University, Belfast, N. Ireland

Licensing provisions: GNU General Public License, Version 2

No. of lines in distributed program, including test data, etc.: 1192325

No. of bytes in distributed program, including test data, etc.: 10214787

Distribution format: tar.gz

Programming language: C++.

Computer: Intel Xeon, Intel Core.

Operating system: LINUX.

RAM: Memory usage depends on the number of nodes in the calculation mesh as well as on the degree of the interpolation polynomials. For a 1D calculation with linear polynomials on a mesh with 600 nodes, memory usage is approximately 3.3 MB; in a realistic simulation of fission on a 2D mesh with quadratic polynomials and 1.3 105 nodes, it reaches 1.5 GiB.

Classification: 17.23.

External routines: The solver itself requires the BLAS and LAPACK libraries, and a Fortran compiler with OpenMP support. Building the documentation requires DoxyGen-1.8.6 or higher. Building the full set of tools also requires GSL, PETSc, SLEPc and Boost. In particular, environment variables PETSC_DIR, PETSC_ARCH, SLEPC_DIR and SLEPC_ARCH must be set.

Nature of problem:   Nuclear fission is a relatively slow process compared to the typical timescale of the intrinsic motion of the nucleons. In the adiabatic approximation, it can be described as a large amplitude collective motion driven by only a few collective degrees of freedom. In the time-dependent generator coordinate method (TDGCM), the nuclear wave-function is thus described as a time-dependent, linear superposition of basis functions in this collective space. Further assuming a Gaussian overlap approximation (GOA) for the basis functions, the time-dependent Schrödinger equation can be reduced into a local, time-dependent, Schrödinger-like equation in collective space. This is the TDGCM+GOA equation. Scission configurations are defined as a hyper-surface in the method=retrieve&_eid=1-s2.0-S001046551500435X&_mathId=si53.gif&_user=111111111&_pii=S001046551500435X&_rdoc=1&_issn=00104655&md5=063a7655c455b39a18c6302088bd223c" title="Click to view the MathML source">N-dimensional collective space. Fission fragment distributions are then computed by integrating over time the flux of the collective wave-packet across the scission hyper-surface. This microscopic approach to fission fragment distributions is fully quantum-mechanical.

Solution method:   FELIX solves the TDGCM+GOA equation by using the Galerkin finite element method to discretize the method=retrieve&_eid=1-s2.0-S001046551500435X&_mathId=si53.gif&_user=111111111&_pii=S001046551500435X&_rdoc=1&_issn=00104655&md5=063a7655c455b39a18c6302088bd223c" title="Click to view the MathML source">N-dimensional collective space, and the Crank–Nicolson scheme to solve for the time evolution. At each time step, this procedure requires solving a linear system of equation involving sparse, complex, symmetric matrices. FELIX employs an iterative QMR algorithm to perform matrix inversion.

Restrictions:   Although the program can operate in an arbitrary number of dimensions method=retrieve&_eid=1-s2.0-S001046551500435X&_mathId=si53.gif&_user=111111111&_pii=S001046551500435X&_rdoc=1&_issn=00104655&md5=063a7655c455b39a18c6302088bd223c" title="Click to view the MathML source">N, it has only been tested in practice on 1, 2 and 3 dimensional meshes.

Additional comments: The code has checkpointing capabilities: the collective wave-function, norm a and energy kernels are stored on disk every n iterations, ensuring that the program can resume where it stops.

Running time: Running time grows linearly with the number of time-steps requested by the user. It is also highly dependent on the number of nodes in the space mesh. Two periods of a 1D harmonic oscillator (600 nodes, 800 time steps) are typically computed in a few seconds on one thread of a Intel(R) Core(TM) i5 CPU. A 2-dimensional realistic case of fission (105 nodes, 105 time steps) requires roughly 10 h on 10 threads of an Intel Xeon EP X5660 processor.

© 2004-2018 中国地质图书馆版权所有 京ICP备05064691号 京公网安备11010802017129号

地址:北京市海淀区学院路29号 邮编:100083

电话:办公室:(+86 10)66554848;文献借阅、咨询服务、科技查新:66554700