کد مقاله کد نشریه سال انتشار مقاله انگلیسی نسخه تمام متن
502208 863688 2016 5 صفحه PDF دانلود رایگان
عنوان انگلیسی مقاله ISI
OpenMP Fortran and C programs for solving the time-dependent Gross–Pitaevskii equation in an anisotropic trap
ترجمه فارسی عنوان
برنامه OpenMP Fortran و C برای حل معادله Gross-Pitaevskii وابسته به زمان در یک تله ناهمسانگرد
موضوعات مرتبط
مهندسی و علوم پایه شیمی شیمی تئوریک و عملی
چکیده انگلیسی

We present new version of previously published Fortran and C programs for solving the Gross–Pitaevskii equation for a Bose–Einstein condensate with contact interaction in one, two and three spatial dimensions in imaginary and real time, yielding both stationary and non-stationary solutions. To reduce the execution time on multicore processors, new versions of parallelized programs are developed using Open Multi-Processing (OpenMP) interface. The input in the previous versions of programs was the mathematical quantity nonlinearity for dimensionless form of Gross–Pitaevskii equation, whereas in the present programs the inputs are quantities of experimental interest, such as, number of atoms, scattering length, oscillator length for the trap, etc. New output files for some integrated one- and two-dimensional densities of experimental interest are given. We also present speedup test results for the new programs.New version program summaryProgram title: BEC-GP-OMP package, consisting of: (i) imag1d, (ii) imag2d, (iii) imag3d, (iv) imagaxi, (v) imagcir, (vi) imagsph, (vii) real1d, (viii) real2d, (ix) real3d, (x) realaxi, (xi) realcir, (xii) realsph.Catalogue identifier: AEDU_v4_0.Program Summary URL:http://cpc.cs.qub.ac.uk/summaries/AEDU_v4_0.htmlProgram obtainable from: CPC Program Library, Queen’s University of Belfast, N. Ireland.Licensing provisions: Apache License 2.0No. of lines in distributed program, including test data, etc.: 130308.No. of bytes in distributed program, including test data, etc.: 929062.Distribution format: tar.gz.Programming language: OpenMP C; OpenMP Fortran.Computer: Any multi-core personal computer or workstation.Operating system: Linux and Windows.RAM: 1 GB.Number of processors used: All available CPU cores on the executing computer.Classification: 2.9, 4.3, 4.12.Catalogue identifier of previous version: AEDU_v1_0, AEDU_v2_0.Journal reference of previous version: Comput. Phys. Commun. 180 (2009) 1888; ibid. 183 (2012) 2021.Does the new version supersede the previous version?: No. It does supersedes versions AEDU_v1_0 and AEDU_v2_0, but not AEDU_v3_0, which is MPI-parallelized version.Nature of problem: The present OpenMP Fortran and C programs solve the time-dependent nonlinear partial differential Gross–Pitaevskii (GP) equation for a Bose–Einstein condensate in one (1D), two (2D), and three (3D) spatial dimensions in a harmonic trap with six different symmetries: axial- and radial-symmetry in 3D, circular-symmetry in 2D, and fully anisotropic in 2D and 3D.Solution method: The time-dependent GP equation is solved by the split-step Crank–Nicolson method by discretizing in space and time. The discretized equation is then solved by propagation, in either imaginary or real time, over small time steps. The method yields the solution of stationary and/or non-stationary problems.Reasons for the new version: Previously published Fortran and C programs  [1] and [2] for solving the GP equation are recently enjoying frequent usage  [3] and application to a more complex scenario of dipolar atoms  [4]. They are also further extended to make use of general purpose graphics processing units (GPGPU) with Nvidia CUDA  [5], as well as computer clusters using Message Passing Interface (MPI)  [6]. However, a vast majority of users use single-computer programs, with which the solution of a realistic dynamical 1D problem, not to mention the more complicated 2D and 3D problems, could be time consuming. Now practically all computers have multicore processors, ranging from 2 up to 18 and more CPU cores. Some computers include motherboards with more than one physical CPU, further increasing the possible number of available CPU cores on a single computer to several tens. The present programs are parallelized using OpenMP over all the CPU cores and can significantly reduce the execution time. Furthermore, in the old version of the programs  [1] and [2] the inputs were based on the mathematical quantity nonlinearity for the dimensionless form of the GP equation. The inputs for the present versions of programs are given in terms of phenomenological variables of experimental interest, as in Refs.  [4] and [5], i.e., number of atoms, scattering length, harmonic oscillator length of the confining trap, etc. Also, the output files are given names which make identification of their contents easier, as in Refs.  [4] and [5]. In addition, new output files for integrated densities of experimental interest are provided, and all programs were thoroughly revised to eliminate redundancies.Summary of revisions: Previous Fortran  [1] and C  [2] programs for the solution of time-dependent GP equation in 1D, 2D, and 3D with different trap symmetries have been modified to achieve two goals. First, they are parallelized using OpenMP interface to reduce the execution time in multicore processors. Previous C programs  [2] had OpenMP-parallelized versions of 2D and 3D programs, together with the serial versions, while here all programs are OpenMP-parallelized. Secondly, the programs now have input and output files with quantities of phenomenological interest. There are six trap symmetries and both in C and in Fortran there are twelve programs, six for imaginary-time propagation and six for real-time propagation, totaling to 24 programs. In 3D, we consider full radial symmetry, axial symmetry and full anisotropy. In 2D, we consider circular symmetry and full anisotropy. The structure of all programs is similar.For the Fortran programs the input data (number of atoms, scattering length, harmonic oscillator trap length, trap anisotropy, etc.) are conveniently placed at the beginning of each program. For the C programs the input data are placed in separate input files, examples of which can be found in a directory named input. The examples of output files for both Fortran and C programs are placed in the corresponding directories called output. The programs then calculate the dimensionless nonlinearities actually used in the calculation. The provided programs use physical input parameters that give identical nonlinearity values as the previously published programs  [1] and [2], so that the output files of the old and new programs can be directly compared. The output files are conveniently named so that their contents can be easily identified, following Refs.  [4] and [5]. For example, file named <>-out.txt, where <> is a name of the individual program, is the general output file containing input data, time and space steps, nonlinearity, energy and chemical potential, and was named fort.7 in the old Fortran version. The file <>-den.txt is the output file with the condensate density, which had the names fort.3 and fort.4 in the old Fortran version for imaginary- and real-time propagation, respectively. Other density outputs, such as the initial density, are commented out to have a simpler set of output files. The users can re-introduce those by taking out the comment symbols, if needed. Table 1. Wall-clock execution times (in seconds) for runs with 1, 6 and 20 CPU cores with different programs using the Intel Fortran ifort (F-1, F-6 and F-20, respectively) and Intel C icc (C-1, C-6 and C-20, respectively) compilers using a workstation with two Intel Xeon E5-2650 v3 CPUs, with a total of 20 CPU cores, and obtained speedups (speedup-F=F-1/F-20, -speedupC=C-1/C-20 ) for 20 CPU cores.F-1F-6F-20speedup-FC-1C-6C-20speedup-Cimag1d3226261.24528271.7imagcir1515151.02115151.4imagsph1212121.01912101.9real1d19484722.7304110983.1realcir13262572.318278642.8realsph11968671.819176613.1imag2d19066523.7394773311.9imagaxi24074564.3499113559.1real2d26970475.7483963513.8realaxi13237255.3237512210.8imag3d16824723664.6249054520212.3real3d15,479349420827.422,2284558143815.5Full-size tableTable optionsView in workspaceDownload as CSVFig. 1. (a) Speedup of the C and Fortran (F) imag3d programs as a function of the number of CPU cores, measured in a workstation with two Intel Xeon E5-2650 v3 CPUs. The speedup for the run with NN CPU cores was calculated as the ratio between wall-clock execution times with one and NN CPU cores. (b) Wall-clock time of the same runs as a function of the number of CPU cores.Figure optionsDownload as PowerPoint slideprs.rt("abs_1st_end");

ناشر
Database: Elsevier - ScienceDirect (ساینس دایرکت)
Journal: Computer Physics Communications - Volume 204, July 2016, Pages 209–213
نویسندگان
, , , , ,