Bill2d — A software package for classical two-dimensional Hamiltonian systems
详细信息    查看全文
文摘
We present lass="smallcaps">Bill2d, a modern and efficient C++ package for classical simulations of two-dimensional Hamiltonian systems. lass="smallcaps">Bill2d can be used for various billiard and diffusion problems with one or more charged particles with interactions, different external potentials, an external magnetic field, periodic and open boundaries, etc. The software package can also calculate many key quantities in complex systems such as Poincaré sections, survival probabilities, and diffusion coefficients. While aiming at a large class of applicable systems, the code also strives for ease-of-use, efficiency, and modularity for the implementation of additional features. The package comes along with a user guide, a developer’s manual, and a documentation of the application program interface (API).

Program summary

m>Program title:m> Bill2d

m>Catalogue identifier:m> AEYL_v1_0

m>Program summary URL:m>r000010" class="interref" data-locatorType="url" data-locatorKey="http://cpc.cs.qub.ac.uk/summaries/AEYL_v1_0.html">http://cpc.cs.qub.ac.uk/summaries/AEYL_v1_0.html

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

m>Licensing provisions:m> GNU General Public License, version 3

m>No. of lines in distributed program, including test data, etc.:m> 37098

m>No. of bytes in distributed program, including test data, etc.:m> 1155037

m>Distribution format:m> tar.gz

m>Programming language:m> C++(14).

m>Computer:m> Tested on x86 and x86 64 architectures.

m>Operating systems:m> Tested on Linux, and OS X versions 10.9–10.11.

m>Has the code been vectorized or parallelized?:  m> Shared memory parallelization when simulating ensembles of systems. Vectorization of operations with mmlsi8" class="mathmlsrc">lass="formulatext stixSupport mathImg" data-mathURL="/science?_ob=MathURL&_method=retrieve&_eid=1-s2.0-S0010465515003744&_mathId=si8.gif&_user=111111111&_pii=S0010465515003744&_rdoc=1&_issn=00104655&md5=34e99977c00ce1268681464e694e532a" title="Click to view the MathML source">R2lass="mathContainer hidden">lass="mathCode"><math altimg="si8.gif" overflow="scroll"><msup><mrow><mi>Rmi>mrow><mrow><mn>2mn>mrow>msup>math> vectors.

m>RAM:m> Simulation dependent: kilobytes to gigabytes

m>Classification:m> 4.3, 7.8, 7.9, 7.10, 16.9.

m>External routines:m> Boost, CMake, GSL, HDF5; and optionally Google-Mock, GoogleTest, and Doxygen

m>Nature of problem:m> Numerical propagation of classical two-dimensional single and many-body systems, possibly in a magnetic field, and calculation of relevant quantities such as Poincaré sections, survival probabilities, diffusion co-efficients, etc.

m>Solution method:m> Symplectic numerical integration of Hamilton&rsquo;s equations of motion in Cartesian coordinates, or solution of Newton&rsquo;s equations of motion if in a magnetic field. The program implements several well-established algorithms.

m>Restrictions:m> Pointlike particles with equal masses and charges, although the latter restrictions are easy to lift.

m>Unusual features:m> Program is efficient, extremely modular and easy to extend, and allows arbitrary particle–particle interactions.

m>Additional comments:m> The source code is also available at r000015" class="interref" data-locatorType="https" data-locatorKey="//bitbucket.org/solanpaa/bill2d">https://bitbucket.org/solanpaa/bill2d. See README for locations of user guide, developer manual, and API docs.

m>Running time:m> From milliseconds to days, depends on type of simulation.

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

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

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