Re: von Neumann entropy
- To: mathgroup at smc.vnet.net
- Subject: [mg43173] Re: von Neumann entropy
- From: "Steve Luttrell" <luttrell at _removemefirst_westmal.demon.co.uk>
- Date: Sat, 16 Aug 2003 02:53:55 -0400 (EDT)
- References: <bhd9nn$rpk$1@smc.vnet.net> <bhfk4i$697$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
Aha! I have now seen some other replies to your question about entropy, and see that I was too focussed on your "0 * Ln(0) = 0" to see the rest of your question! As others have pointed out, you have to diagonalise S = -Tr(rho log(rho) ) first of all, and then if you encounter any zero eigenvalues you can use the Epsilon trick I mentioned the first time round. -- Steve Luttrell West Malvern, UK "Steve Luttrell" <luttrell at _removemefirst_westmal.demon.co.uk> wrote in message news:bhfk4i$697$1 at smc.vnet.net... > You could Unprotect the Log function and then make appropriate definitions > that would achieve the effect you want. However there is another way of > computing the result you want which is much closer to the way that one would > do this sort of calculation by hand (i.e. replace the zeros by some small > quantity, and take the limit as the quantity goes to zero). > > Mathematica can correctly evaluate the following limit to give zero: > > Limit[x*Log[x], x -> 0] > > So rather than have zero entries in the rho matrix you could replace them by > a symbol (Epsilon, say), and then take the limit Epsilon->0 at the end of > the calculation. > > -- > Steve Luttrell > West Malvern, UK > > "Chad Junkermeier" <cej38 at email.byu.edu> wrote in message > news:bhd9nn$rpk$1 at smc.vnet.net... > > > > Dear Mathgroup, > > > > I have been trying to use Mathematica to compute the von Neumann entropy > > of a density matrix and have run into trouble with telling Mathematica > > to use a particular definition in the calculation. > > > > The von Neumann entropy is defined as > > > > S = -Tr [ rho Ln (rho)], > > > > where rho is a square matrix. The problem is how to handle the case > > when and element of the matrix rho is zero. I want to tell Mathematica > > to assume that > > > > 0 * Ln(0) = 0 > > > > when it is computing the entropy. How do I tell it to make that > > assumption? > > > > Thanks, > > Chad > > > >