Wolfram Language Paclet Repository

Community-contributed installable additions to the Wolfram Language

Primary Navigation

    • Cloud & Deployment
    • Core Language & Structure
    • Data Manipulation & Analysis
    • Engineering Data & Computation
    • External Interfaces & Connections
    • Financial Data & Computation
    • Geographic Data & Computation
    • Geometry
    • Graphs & Networks
    • Higher Mathematical Computation
    • Images
    • Knowledge Representation & Natural Language
    • Machine Learning
    • Notebook Documents & Presentation
    • Scientific and Medical Data & Computation
    • Social, Cultural & Linguistic Data
    • Strings & Text
    • Symbolic & Numeric Computation
    • System Operation & Setup
    • Time-Related Computation
    • User Interface Construction
    • Visualization & Graphics
    • Random Paclet
    • Alphabetical List
  • Using Paclets
    • Get Started
    • Download Definition Notebook
  • Learn More about Wolfram Language

QuantumPlaybook

Guides

  • QuantumPlaybook

Tech Notes

  • Addition of Numbers
  • Baker-Hausdorff Lemma
  • Chiral Fermion Random Circuit
  • Clifford Operators: How to Test
  • Commutation Relations for Qubits
  • Entanglement Distillation
  • Generalized Pauli Operators: Implementation
  • Hatano-Nelson-Kitaev Model: Monte Carlo Simulation
  • Hatano-Nelson Model: Monte Carlo Simulation
  • Kitaev Chain
  • Kitaev Random Circuit
  • Λ-Matter in a Cavity
  • Measurement of Total Pauli Z
  • Non-Unitary Dynamics of Quantum States
  • Partial Trace: Physical Meaning
  • Quantum Dot Systems
  • A Quantum Playbook
  • Magnetic Exchange Coupling
  • Solovay-Kitaev Algorithm
  • Spin Code
  • Symmetry Effects On Quantum Master Equations
  • Transmon: Quantum Phase Model
  • Transposition as a Supermap
  • Variational Quantum Classifier: Iris
  • Variational Quantum Classifier: Parity
  • Variational Quantum Eigensolver: Transverse-Field Ising Model

Symbols

  • BlochEnergy
  • BlochFunction
  • QuantumPlaybookCheckUpdate
  • QuantumPlaybookEdition
  • QuantumPlaybookUpdate
  • TransmonEnergy
  • TransmonExponent
  • TransmonFunction
  • TransmonHamiltonian
Hatano-Nelson-Kitaev Model: Monte Carlo Simulation
The Model
Simulation of the Projective Model
Simulation of the Dissipative Model
​
The Hatano-Nelson-Kitaev model is a generalization of the
Hatano-Nelson model
to include non-Hermitian anisotropic pairing potential.
WickState
Represents a fermionic Gaussian state.
WickNonunitary
Represents a non-unitary evolution operator associated with local quadratic non-Hermitian Hamiltonian
WickJump
Represents a set of quantum jump operators
WickSimulate
Simulates the quantum master equation for a dissipative fermionic system
Q3 functions for the Monte Carlo simulation of open quantum systems of non-interacting fermions.
Make sure to load the Q3 framework.
In[72]:=
Needs["QuantumMob`Q3`"]
The Model
Consider a system of fermion modes.
In[73]:=
$L=4;
In[74]:=
Let[Fermion,f]​​ff=f[Range@$L]​​fff=Join[ff,Dagger@ff]
Out[75]=
{
f
1
,
f
2
,
f
3
,
f
4
}
Out[76]=

f
1
,
f
2
,
f
3
,
f
4
,
†
f
1
,
†
f
2
,
†
f
3
,
†
f
4

Here is the Hamiltonian for the Kitaev chain of Majorana modes.
In[6]:=
Let[Real,μ,J,Δ,γ]
In[7]:=
hamOp=μ*Q[ff]-(J/2)PlusDagger[Hop[ff]]+(Δ/2)PlusDagger[Pair[ff]]
Out[7]=

Dissipative Model

Consider some auxiliary fermion modes to describe the quantum jump operators.
In[8]:=
Let[Fermion,a,b]​​aa=a[Range[$L-1]]​​bb=b[Range[$L-1]]
Out[9]=
{
a
1
,
a
2
,
a
3
}
Out[10]=
{
b
1
,
b
2
,
b
3
}
Here are the quantum jump operators that are linear combinations of the fermion creation and annihilation operators.
In[11]:=
a[k_]:=(f[k]+I*Dagger[f[k+1]])/Sqrt[2]​​b[k_]:=(f[k]-I*Dagger[f[k+1]])/Sqrt[2]​​ab=Join[aa,Dagger@bb];​​ab//TableForm
Out[14]//TableForm=

†
f
2
+
f
1
2

†
f
3
+
f
2
2

†
f
4
+
f
3
2
†
f
1
+
f
2
2
†
f
2
+
f
3
2
†
f
3
+
f
4
2
In the fermionic quantum computation, these quantum jump operators are efficiently described by the coefficients matrix.
In[15]:=
jmp=NambuCoefficients[ab,ff];​​jmp//MatrixForm
Out[16]//MatrixForm=
1
2
0
0
0
0

2
0
0
0
1
2
0
0
0
0

2
0
0
0
1
2
0
0
0
0

2
0

2
0
0
1
2
0
0
0
0
0

2
0
0
1
2
0
0
0
0
0

2
0
0
1
2
0
Construct the effective non-Hermitian Hamiltonian, which results in the so-called Hatano-Nelson model.
In[17]:=
dmpOp=γ*Total[Dagger[ab]**ab]/2//Garner
Out[17]=
3γ
2
+
1
2
γ
†
f
1
†
f
2
+
1
2
γ
†
f
2
†
f
3
+
1
2
γ
†
f
3
†
f
4
-
1
2
γ
f
2
f
1
-
1
2
γ
f
3
f
2
-
1
2
γ
f
4
f
3
In[18]:=
gmm=dmpOp/.Thread[ff0]
Out[18]=
3γ
2
In[19]:=
dmp=NambuHermitian[2*CoefficientTensor[dmpOp,Dagger@fff,fff]]
Out[19]=
NambuHermitian
Target: All
Modes: 4

In[20]:=
nonOp=hamOp-I*dmpOp//Garner
Out[20]=
-
3γ
2
+
1
2
(γ-Δ)
†
f
1
†
f
2
+μ
†
f
1
f
1
-
1
2
J
†
f
1
f
2
+
1
2
(γ-Δ)
†
f
2
†
f
3
-
1
2
J
†
f
2
f
1
+μ
†
f
2
f
2
-
1
2
J
†
f
2
f
3
+
1
2
(γ-Δ)
†
f
3
†
f
4
-
1
2
J
†
f
3
f
2
+μ
†
f
3
f
3
-
1
2
J
†
f
3
f
4
-
1
2
J
†
f
4
f
3
+μ
†
f
4
f
4
+
1
2
(-γ-Δ)
f
2
f
1
+
1
2
(-γ-Δ)
f
3
f
2
+
1
2
(-γ-Δ)
f
4
f
3
In[21]:=
non=2*CoefficientTensor[nonOp,Dagger@fff,fff]//SimplifyThrough;​​ArrayShort[-2non,"Size"8]
Out[22]//MatrixForm=
-2μ
J
0
0
0
-γ+Δ
0
0
J
-2μ
J
0
γ-Δ
0
-γ+Δ
0
0
J
-2μ
J
0
γ-Δ
0
-γ+Δ
0
0
J
-2μ
0
0
γ-Δ
0
0
-γ-Δ
0
0
2μ
-J
0
0
γ+Δ
0
-γ-Δ
0
-J
2μ
-J
0
0
γ+Δ
0
-γ-Δ
0
-J
2μ
-J
0
0
γ+Δ
0
0
0
-J
2μ
In[23]:=
altOp=MultiplyDot[Dagger@fff,non,fff]/2​​altOp-nonOp//Garner
Out[23]=
1
2
-4μ+(γ-Δ)
†
f
1
†
f
2
+2μ
†
f
1
f
1
-J
†
f
1
f
2
+(γ-Δ)
†
f
2
†
f
3
-J
†
f
2
f
1
+2μ
†
f
2
f
2
-J
†
f
2
f
3
+(γ-Δ)
†
f
3
†
f
4
-J
†
f
3
f
2
+2μ
†
f
3
f
3
-J
†
f
3
f
4
-J
†
f
4
f
3
+2μ
†
f
4
f
4
+(-γ-Δ)
f
2
f
1
+(-γ-Δ)
f
3
f
2
+(-γ-Δ)
f
4
f
3

Out[24]=
3γ
2
-2μ
In summary, the dissipative Hatano-Nelson-Kitaev (HNK) model can be written as
In[25]:=
Clear[HNKDissipative]​​HNKDissipative[{μ_,J_,Δ_},γ_,L_Integer]:=Module[​​{hrm,del,ham,jmp},​​hrm=-μ*One[L]-(J/2)*PlusTopple@One[{L,L},1];​​del=-(Δ/2)*One[{L,L},1];​​del=del-Transpose[del];​​ham=NambuHermitian[{hrm,del}];​​jmp={One[{L-1,L}],I*One[{L-1,L},1]};​​jmp=ArrayFlatten@{jmp,Reverse@jmp};​​jmp=Sqrt[γ]*WickCanonicalize[NambuJump@jmp];​​{ham,jmp}​​]

Projective Model

In summary, the projective Hatano-Nelson-Kitaev (HNK) model can be written as
Simulation of the Dissipative Model
Set the number of fermion modes.
Set the parameters of the Hatano-Nelson-Kitaev model.
Set the dissipative HNK model.
Set the initial state.
Do the Monte Carlo simulation.
Choose a subsystem.
Calculate the entanglement entropy (EE) between the subsystem and the rest.
Check the entanglement entropy as a function of time.
Construct approximate density matrices by taking averages of the covariance matrices in different trajectories, and calculate the logarithmic negativity (LN) between the subsystem and the rest in the density matrices.
Check the logarithmic negativity as a function of time.
Simulation of the Projective Model
Set the number of fermion modes.
Set the parameters of the Hatano-Nelson-Kitaev model.
Set the projective HNK model.
Set the initial state.
Do the Monte Carlo simulation.
Choose a subsystem.
Calculate the entanglement entropy (EE) between the subsystem and the rest.
Check the entanglement entropy as a function of time.
Construct approximate density matrices by taking averages of the covariance matrices in different trajectories, and calculate the logarithmic negativity (LN) between the subsystem and the rest in the density matrices.
Check the logarithmic negativity as a function of time.

© 2025 Wolfram. All rights reserved.

  • Legal & Privacy Policy
  • Contact Us
  • WolframAlpha.com
  • WolframCloud.com