Quandary
Loading...
Searching...
No Matches
Public Member Functions | List of all members
FromFile Class Reference

Gate loaded from external file. More...

#include <gate.hpp>

Inheritance diagram for FromFile:
Inheritance graph
[legend]
Collaboration diagram for FromFile:
Collaboration graph
[legend]

Public Member Functions

 FromFile (const std::vector< size_t > &nlevels_, const std::vector< size_t > &nessential_, double time, const std::vector< double > &rotation_frequencies_, DecoherenceType decoherence_type_, const std::string &filename, bool quietmode=false)
 Constructor for gate loaded from file.
 
 ~FromFile ()
 
- Public Member Functions inherited from Gate
 Gate ()
 
 Gate (const std::vector< size_t > &nlevels_, const std::vector< size_t > &nessential_, double time_, const std::vector< double > &gate_rot_freq, DecoherenceType decoherence_type_, bool quietmode=false)
 Constructor for quantum gates.
 
virtual ~Gate ()
 
PetscInt getDimRho ()
 Retrieves the dimension of the density matrix.
 
void assembleGate ()
 Assembles the vectorized gate matrix.
 
void applyGate (const Vec state, Vec VrhoV)
 Applies the gate transformation to a quantum state.
 

Additional Inherited Members

- Protected Attributes inherited from Gate
Mat V_re
 
Mat V_im
 Real and imaginary parts of V_target, non-vectorized, essential levels only.
 
std::vector< size_t > nessential
 Number of essential levels per oscillator.
 
std::vector< size_t > nlevels
 Total number of levels per oscillator.
 
int mpirank_petsc
 MPI rank in PETSc communicator.
 
int mpisize_petsc
 MPI size in PETSc communicator.
 
int mpirank_world
 MPI rank in world communicator.
 
bool quietmode
 Flag to suppress output messages.
 
PetscInt dim_ess
 Dimension of target gate matrix (non-vectorized), essential levels only.
 
PetscInt dim_rho
 Dimension of system matrix rho (non-vectorized), all levels, N.
 
double final_time
 Final time T. Time of gate rotation.
 
std::vector< double > gate_rot_freq
 Frequencies of gate rotation (rad/time). Default: 0.0.
 
DecoherenceType decoherence_type
 Type of Lindblad operators for open system dynamics.
 

Detailed Description

Gate loaded from external file.

Implements a custom gate by loading the gate matrix from an external file.

Constructor & Destructor Documentation

◆ FromFile()

FromFile::FromFile ( const std::vector< size_t > &  nlevels_,
const std::vector< size_t > &  nessential_,
double  time,
const std::vector< double > &  rotation_frequencies_,
DecoherenceType  decoherence_type_,
const std::string &  filename,
bool  quietmode = false 
)

Constructor for gate loaded from file.

Parameters
nlevels_Number of levels per oscillator.
nessential_Number of essential levels per oscillator.
timeFinal time for gate rotation.
rotation_frequencies_Frequencies of gate rotation.
decoherence_type_Type of Lindblad operators.
filenamePath to file containing gate matrix data.
quietmodeFlag to suppress output messages (default: false).

◆ ~FromFile()

FromFile::~FromFile ( )

The documentation for this class was generated from the following files: