^{1}

^{*}

^{2}

^{*}

^{3}

^{*}

The modeling of physical processes is an integral part of scientific and technical research. In this area, the Extendible C++ Application in Quantum Technologies (ECAQT) package provides the numerical simulations and modeling of complex quantum systems in the presence of decoherence with wide applications in photonics. It allows creating models of interacting complex systems and simulates their time evolution with a number of available time-evolution drivers. Physical simulations require massive amounts of calculations are often executed on distributed computing infrastructures. It is often difficult for non expert users to use such computational infrastructures or even to use advanced libraries over the infrastructures, because they often require being familiar with middleware and tools, parallel programming techniques and packages. The Parallel Grid Run-time and Application Development Environment (P-RADE) Grid Portal is a Grid portal solution that allows users to manage the whole life-cycle for executing a parallel application on the computing Grid infrastructures. The article describes the functionality and the structure of the web portal based on ECAQT package.

Recent years the greatly evolved area of physics is modeling of physical processes, which is a result of progress in computer science and its effectiveness in the means of technologies. Theoretical results obtained within framework of computer modeling allow to have full view of systems and processes as more complicated systems do not have analytical solutions and require approximations.

In this paper, a Web portal for photonic and quantum technologies, using computational Grid infrastructures, is introduced that makes possible to solve various problems for quantum open systems. Such systems are mainly constructed from photons, including laser fields, atom-photon interactions and nonlinear optical interactions in crystals and describe photonic devices in the presence of imperfection effects: quantum noise, decoherence and etc. Up to now, the modeling of photonic devices on the level of their practical applications is not yet well standardized. On the other hand, progress in this area open up exciting possibilities for exploring fundamental physics as well as applications in telecommunications, signal processing and quantum information technology. The work is the logical continuation of previous works [1,2], with a target to provide a research platform, which will use transparency large amount of computational resources of Grid infrastructure without being aware of where input, output data and computational resources are located. This is very important, because distributed computing infrastructures, particularly Grids are complicated and therefore these are difficult for scientists and researchers to use without advanced knowledge and experience.

The application has been constructed on the base of the numerical simulation method of quantum trajectories or Quantum State Diffusion (QSD) method [

The application handles systems, which satisfy bosonic quantum statistics. In the current implementation the bosonic operators cover only part of the possible mater-light interactions and elaboration of the package involving fermion operators is now in the progress. It should be mentioned the other papers in the field of numerical simulation of open quantum systems based on the library of QSD approach [24-26].

Behavior of physical objects can be explained and predicted with system of differential equations. In recent years quantum physics has taken on special significance and wide applications in which it is no longer possible to neglect the environment interaction: dissipation and decoherence. In this way, the corresponding quantum systems are usually treated as open systems and their time-evolution is described by a density matrix in the framework of the master equation but not on the base of a Hilbert-space vector and the Schrodinger equation. In general, for the most physical systems the master equation cannot be solved analytically for arbitrary evaluation times and need to use numerical methods. But even a numerical solution of the master equation can be very hard. If a state vector requires basis vectors in Hilbert space to represent it, the corresponding density operator will require real numbers. This basis can often be too large even for the most powerful machines to handle, particularly, in the case if the system involves more than one degree of freedom. This problem can be overcome by unraveling the density operator evolution into quantum trajectories [

One of widely used approximations for open quantum systems is the Markovian dynamics described in terms of the Lindblad master equation for the reduced density matrix. The time-evolution in this approach is governed by the Hamiltonian operator and the Lindblad operators of the system. Thus, in the current implementation QSD method is used based on the stochastic equation that involves both Hamiltonian and the Lindblad operators for the state. The density operator using an expansion of the state vector in a truncated basis of Fock’s number states of a harmonic oscillator (photonic states) is calculated. In this way, the ECAQT library corresponding to QSD method has been applied for various physical problems [4-18].

In this paper, our previous results by developing a user-friendly gridified platform based on Grid portals are expanded that are very popular for designing user interfaces to Grids. The Grid portal build upon the familiar Web portal model offer to virtual communities of users a single point of access to computational or data resources. The P-GRADE [

This Grid aware portal (

Mainly the authorization, authentication, job management and information services of the P-Grade Portal have been used by the portlet. The single sign-on feature of the portlet allows users to access Grid resources by automatically retrieves proxy credentials for users. The Web Portal consists of a few layers (

Hamiltonian (creation and annihilation operators, environment operators, values of the external laser field, nonlinearity of media and etc.), system’s freedom numbers, system’s time evolution range, output time intervals, number of trajectories, number of nodes for parallel calculation and etc. Note that in this case the other remained algorithms are getting automatically. In the case of choosing the other remained algorithms without choosing Density Matrix algorithm, on the next step, user needs additionally to introduce the input files-density matrices.

In the last step (job submission space) user should choose the output files formats, location of these files and the time interval for getting output runtime if a run time is available for this calculation. On the last step all this parameters are given with default values. The job submission module is the main module interacts between user and infrastructure. The module consists of the following services:

• Myproxy, which allows a grid user to delegate her/his proxy certificate;

• Job matchmaker, that finds a suitable resource within the VO that matches the job requirements;

• Converter that converts all given information into the language for submission, (job description language service (JDL));

• Job management service that stores all information into the mysql database, submit the job and check the status.

Balancing the calculations over a heterogeneous computing infrastructure such as the ArmGrid is quite challenging. The job matchmaker service makes a decision based experimental results [

After submitting the job with the help of the specific mediator object which is written in Java, job submitted requested Grid site indicated previously. This mediator object is used to establish the connection between Web Portal and calculation algorithms.

The calculation algorithms are based on ECAQT library [1,2], which is given in the first step on Web Portal. The ECAQT library software package is relied on generic programming and template meta-programming. In particular, the principal concept of the design of library is that all information which gets from Web Portal available at compile time should be processed as such, with the help of Mediator layer. Its design keeps abstraction and multiple code usage. ECAQT consists of three layers, GUI written in Qt, Mediator layer, Engines. The Mediator layer is created to make engines independent from GUI. This allows switching GUI implantations without changing Engines. Mediator is the interface between GUI and Engines. The Engines layer consists of four cores: QSD, Poincare section calculation, quasi distributions, fidelity calculations. The details can be found in [1,2]. The ECAQT is called extendible as it allows changing and adding the application behavior for C++ programmers from GUI. The user can specify own format to read the input file for some engines. Particularly Fidelity engine is fully open for extensions. It has a library for pure states that can be extended by user. To extend the pure states library user should inherit from states: state class and overload generate norm() and generate state in fock basis() virtual functions. The only restriction in the current implementation is that the state should be represented in Fock basis.

After job submission the input parameters are parsed and source code is compiled on the specified Grid site. After parsing and compilation process the existing errors are available in an error file. If there are no error messages in submission page in the Web Portal appears a message: “job is submitted”. All output information is stored in a database. Information about current job status (running, aborted or finished) and also user ID, dates of submitting, input parameters value, output files are available on the monitoring page of Web Portal. This monitoring page is grouped all information history about user’s jobs and makes it visible graphically.

As a rule, numerical simulations for the systems which contain more than one dimensions, or the numbers of freedom, take long time. For example, in area of photonics state vectors of such systems contain about 50,000 complex numbers corresponding of each QSD trajectory that takes minutes. Since at least 1000 - 5000 trajectories are required to get smooth results a full simulation takes days depending on the system freedom degree. The suggested QSD parallel algorithm simulates the same equation many times with the same initial state and exactly with the same parameters in order to reduce execution time. The algorithm has been realized using Massage Passing Interface (MPI) and has no limitation on specified processors number. We used Boost library MPI interface. This allows to use complex types in MPI. In order to use the complex types in Boost MPI interface, these types should be serialized according to Boost serialization library.

The algorithm is scalable and efficient by avoiding some problems like synchronization and time delay in massage passing processes in inter-processors communication.

In the first stage the main.cpp module calling the run() function in order to takes the input parameters including the number of trajectories (n = 5000) and the number of computational nodes (N). The MPI Comm_rank() function returns the number of rank, which get run() function as a parameter. While working in parallel mode the equal number of trajectories is being simulated on different nodes (1-N) of the Grid site. After simulation the results from different processes are merged. In this way a runtime of the simulation can be reduced on many times, that explicitly depends on number of available nodes in the indicated Grid site. It is more significant that parallelization in this approach provides linear effectiveness to solve the master equation.

The procedure of parallelization has been performed as for the density matrix as well as for the arbitrary quantities of interest including the Wigner function that is a complex two-dimensional function visualizing quantum states in a phase-space. As we are interested in time-evolution of the system our aim is to calculate the Wigner functions for different time points during a given time interval. Thus, the corresponding calculation layer in our package is also parallelized in the same way. We run the program with input files for different times using different nodes.

The full implementation of the suggested environment for numerical simulation of photonic technologies over the Grid will allow users, who are not familiar with the parallel programming technologies and software tools (Grid and Cluster middle wares, MPI, JAVA, Unix OS, Open PBS, Condor, etc.), to create and submit their requests over the portal that hides all details of the underlying distributed computing infrastructure. The portal uses open source technologies and software tools and can be easily integrated with any Grid infrastructure and a VO that supports corresponding libraries.

We would like to acknowledge G. Yu. Kryuchkyan for productive discussions while developing users’ interface. We also would like to acknowledge Boost, Open MPI developers.