Differences

This shows you the differences between two versions of the page.

Link to this comparison view

documentation:language_reference:objects:wavefunction:methods:chop [2016/09/25 13:58] – created Maurits W. Haverkortdocumentation:language_reference:objects:wavefunction:methods:chop [2016/10/10 09:41] (current) – external edit 127.0.0.1
Line 1: Line 1:
 +====== Chop ======
  
 +###
 +Numerics inside a computer is not exact. Quanty represents numbers by doubles, which can store numbers with about 16 digits accuracy. The fact that you only have 16 digits can lead to number-loss and situations where numbers that should be zero are close to zero but not exactly zero. An example in base 10: If you represent $1/3$ by $0.3333333333333333$ then $1-3\times0.3333333333333333 = 0.00000000000000001$. In Quanty you can remove these small numbers with the command //Chop()//
 +###
 +
 +###
 +For a wavefunction //psi//, //psi.Chop()// or //psi.Chop($\epsilon$)// Removes determinants with small prefactors (smaller than $\epsilon$) from the wavefunction. The standard value (when the argument is omitted) for $\epsilon = 2.2 \times 10^{−15}$. //psi.Chop()// returns //nil// and changes the value of //psi//.
 +###
 +
 +===== Example =====
 +
 +###
 +We can define the following function:
 +$$
 +|\psi\rangle = \left(\frac{1}{\sqrt{4}} a^{\dagger}_0 a^{\dagger}_1 + \frac{1}{\sqrt{4}} a^{\dagger}_0 a^{\dagger}_2 + (1+0.0000001*I)\frac{1}{\sqrt{4}} a^{\dagger}_1 a^{\dagger}_2 \right)|0\rangle,
 +$$
 +and remove the small complex part with the command Chop()
 +###
 +
 +==== Input ====
 +<code Quanty Example.Quanty>
 +NF=3
 +NB=0
 +psi = NewWavefunction(NF, NB, {{"110",sqrt(1/4)},{"101",sqrt(1/4)},{"011",(1+0.0000001*I)*sqrt(1/4)}})
 +print(psi)
 +psi.Chop(0.00001)
 +print(psi)
 +</code>
 +
 +==== Result ====
 +<file Quanty_Output>
 +
 +WaveFunction: Wave Function
 +QComplex                  1 (Real==0 or Complex==1)
 +N                =          3 (Number of basis functions used to discribe psi)
 +NFermionic modes =          3 (Number of fermions in the one particle basis)
 +NBosonic modes            0 (Number of bosons in the one particle basis)
 +
 +#      pre-factor             +I  pre-factor         Determinant
 +     5.000000000000E-01         0.000000000000E+00       110
 +     5.000000000000E-01         0.000000000000E+00       101
 +     5.000000000000E-01         5.000000000000E-08       011
 +
 +
 +
 +WaveFunction: Wave Function
 +QComplex                  0 (Real==0 or Complex==1)
 +N                =          3 (Number of basis functions used to discribe psi)
 +NFermionic modes =          3 (Number of fermions in the one particle basis)
 +NBosonic modes            0 (Number of bosons in the one particle basis)
 +
 +#      pre-factor         Determinant
 +     5.000000000000E-01       110
 +     5.000000000000E-01       101
 +     5.000000000000E-01       011
 +</file>
 +
 +===== Available methods =====
 +{{indexmenu>.#1}}
Print/export