Python GUI Scripting Interface for Running Atomic Physics Applications
📝 Abstract
We create a Python GUI scripting interface working under Windows in addition to (UNIX/Linux). The GUI has been built around the Python open-source programming language. We use the Python’s GUI library that so called Python Mega Widgets (PMW) and based on Tkinter Python module (http://www.freenetpages.co.uk/hp/alan.gauld/tutgui.htm) . The new GUI was motivated primarily by the desire of more updated operations, more flexibility incorporating future and current improvements in producing atomic data. Furthermore it will be useful for a variety of applications of atomic physics, plasma physics and astrophysics and will help in calculating various atomic properties.
💡 Analysis
We create a Python GUI scripting interface working under Windows in addition to (UNIX/Linux). The GUI has been built around the Python open-source programming language. We use the Python’s GUI library that so called Python Mega Widgets (PMW) and based on Tkinter Python module (http://www.freenetpages.co.uk/hp/alan.gauld/tutgui.htm) . The new GUI was motivated primarily by the desire of more updated operations, more flexibility incorporating future and current improvements in producing atomic data. Furthermore it will be useful for a variety of applications of atomic physics, plasma physics and astrophysics and will help in calculating various atomic properties.
📄 Content
The Python Papers Source Codes 3: 2
Python GUI Scripting Interface for Running Atomic Physics Applications
Amani Tahat1, 2, 6, Mofleh Tahat3 , Wa’el Salah4, 5
1Department of Basic Science, Philadelphia University, Amman, Jordan
3Jordan University of Science and Technology, Irbid, Jordan
2,4Physics Department, The Hashemite University, Zarqa, 13133, Jordan
5Synchrotron-light for Experimental Science and Applications in the Middle East (SESAME),
Jordan
6Email: amanitahat@yahoo.com,
Keywords: Graphical user interface, Atomic Calculations
Abstract
We create a Python GUI scripting interface working under Windows in addition to (UNIX/
Linux). The GUI has been built around the Python open-source programming language. We use
the Python’s GUI library that so called Python Mega Widgets (PMW) and based on Tkinter
Python module (http://www.freenetpages.co.uk/hp/alan.gauld/tutgui.htm)
. The new GUI was
motivated primarily by the desire of more updated operations, more flexibility incorporating
future and current improvements in producing atomic data. Furthermore it will be useful for a
variety of applications of atomic physics, plasma physics and astrophysics and will help in
calculating various atomic properties.
Introduction
This GUI development has been particularly established for teaching purposes and has arisen as a result of demand within the Jordanian academic community. We plan to satisfy using an extensible Graphical User Interface (GUI) for atomic codes.
The goal of this work focuses on creating a simple and highly flexible GUI system that allows easy creation of dialogs for performing the calculations of large range of atomic data; based on some important production software that mainly written in Python, such as the open source atomic applications FAC (Flexible Atomic Code) (Gu, 2008). Currently this GUI is created for running the FAC functions exclusively, but it could be suitable to be wired into another application by changing its form. More descriptions about building this GUI are available in (Tahat et al., 2010).
This manuscript presents a Python source code of a flexible scripting user interface to work as a utility program for the atomic package FAC. Using this GUI will make it easy to determine the input and schedule the computations, in addition to allow typical calculations to be carried out with minimal understanding of theoretical atomic physics. Furthermore, it allows saving the output at any specified directory.
The layout of the paper is as follows: In the next section we summarize the main ideas of our approach along with a short demonstration of using the Flexible Atomic Code (FAC), followed by the way of running the scripting GUI. The paper ends with the source code file. The Python Papers Source Codes 3: 2
The FAC code is a powerful atomic code; it handles atomic calculations, collisional radiative spectral models, and is used to calculate line polarizations due to collisional excitation. It is a flexible atomic code and can work as an integrated software package for the calculation of a variety of atomic properties.
FAC provides two interfaces to run the code: SFAC and PFAC. Furthermore, when using the SFAC interface, users are typically unable to customize or modify features further than cosmetic aspects. Although in FAC calculations there are many important input parameters that a user should be aware of, and a mixture of computing models that are based on different physical assumptions that can be activated by using the PFAC interface. The current GUI has been designed to work as new FAC interface to be easy to run and to produce data files that can interface with other programs easily. Moreover, GUI scripting helps users to specify the problem, interact with the program dynamically and also help users analyze the output. For more information the reader should refer to the FAC manual (Gu, 2003) to understand FAC functions and input parameters.
Step-by-step instructions for setting up SFAC and PFAC interfaces can be found in the README file of the FAC package and can be used for comparing the installation process of the current GUI with those two interfaces of FAC. Moreover, much of the FAC package is written in ANSI C and Fortran 77. It should therefore work on any platform with a C and Fortran 77 compilers. On the other hand, this is only true to the rather simple command parser that comes with FAC, referred to as SFAC .Additionally, for using PFAC it is strongly recommended that Python be installed. In the case of Windows, the Unix API emulation by Cygwin is required, which is available at www.cygwin.com .
In particular to fully utilize the strength of the FAC code, this GUI allows running all parts of PFAC in a very simple way without installing any application or programming language, regardless of the operating system, whether it is being Windows or UNIX/Linux.
For using this GUI u
This content is AI-processed based on ArXiv data.