Differences

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

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
documentation:language_reference:functions:braket [2022/09/30 11:35] Maurits W. Haverkortdocumentation:language_reference:functions:braket [2022/09/30 18:50] Maurits W. Haverkort
Line 2: Line 2:
  
 ### ###
-alligned paragraph text+//Braket(psi1, O, psi2)// calculates the expectation value or matrix element $\left\langle \psi_1 \mid O \mid \psi_2 \right\rangle$. In Quanty //Braket(psi1, O, psi2)// is the same as // psi1 * O * psi2//. The difference is that the function //Braket// can be faster. //Braket// can work on lists of functions and then returns a matrix or vector with all possible expectation values
 ### ###
  
 ===== Input ===== ===== Input =====
  
-  * bla Integer +  * psi1 or psiList1 Wavefunction or list of Wavefunctions 
-  * bla2 Real+  * Operator 
 +  * psi2 or psiList2 : Wavefunction or list of Wavefunctions
  
 ===== Output ===== ===== Output =====
  
-  * bla : real+  * real or complex number, or a list of these or a matrix of these
  
 ===== Example ===== ===== Example =====
  
 ### ###
-description text+The example calculates the expectation values of a few states
 ### ###
  
 ==== Input ==== ==== Input ====
 <code Quanty Example.Quanty> <code Quanty Example.Quanty>
--- some example code +NF=2 
-psi0=NewWavefunction(NfNb, {{"100000",math.sqrt(1/2)}, {"000001",math.sqrt(1/2)}})+NB=0 
 +IndexDn={0} 
 +IndexUp={1} 
 + 
 +psi0=NewWavefunction(NF,NB,{{"10",1}}) 
 +psi1=NewWavefunction(NF,NB,{{"01",1}}) 
 + 
 +OppSx   = NewOperator("Sx"   ,NF,IndexUp,IndexDn) 
 +OppSy   = NewOperator("Sy"   ,NF,IndexUp,IndexDn) 
 +OppSz   = NewOperator("Sz"   ,NF,IndexUp,IndexDn) 
 + 
 +print("The expectation value of a single state"
 +print(Braket(psi0,OppSz,psi0)) 
 + 
 +print("The expectation value of a single state with two other states"
 +print(Braket(psi0,OppSx,{psi0,psi1})) 
 + 
 +-- note that I made one list of length 3, the other of length so that the order is clear 
 +print("The expectation value of a three states with two other states") 
 +print(Braket({psi0,psi1},OppSy,{psi0,psi1,psi1}))
 </code> </code>
  
 ==== Result ==== ==== Result ====
 <file Quanty_Output> <file Quanty_Output>
-text produced as output+The expectation value of a single state 
 +-0.5 
 +The expectation value of a single state with two other states 
 +{ 0 , 0.5 } 
 +The expectation value of a three states with two other states 
 +{ { 0 , (0 + 0.5 I) , (0 + 0.5 I) } ,  
 +  { (0 - 0.5 I) , 0 , 0 } }
 </file> </file>
  
Print/export