Hi,

I know that the C++ ITensor versions overload the "/" operator to do non-contracting product between itensors. Is there a similar functionality in Julia? I couldn't find it very easily.

Thanks,

Amartya

0 votes

Best answer

Hi Miles,

Typically real time path integral codes are written using path arrays and other custom structures. I am playing around with Feynman-Vernon influence functional formalism based on ITensor. The first step was to have the dynamics of a single two level system coupled to a harmonic bath. I am now thinking of doing many two level systems connected to each other as an extended system that is talking to a harmonic bath. For a nearest neighbor interaction, it should be simple enough to do. It would be a two-dimensional PEPS like decomposition. I wanted to be able to handle non-nearest neighbor interactions by adding extra bonds instead of having the bond dimension grow out of bounds. I think I might need something like a non-contracting product for that.

Using the SVD decomposition for reducing the size of the space and making the representation more compact might help a lot with extended systems with short range interactions. I am already seeing some improvements over my old codes for the single two level system case in terms of storage requirements. I have not yet compared performance, but those codes are in C++ and I was just playing with the Julia version, where my code may not be the most optimized.

I can discuss in greater depth if you are interested.

Best,

Amartya

Typically real time path integral codes are written using path arrays and other custom structures. I am playing around with Feynman-Vernon influence functional formalism based on ITensor. The first step was to have the dynamics of a single two level system coupled to a harmonic bath. I am now thinking of doing many two level systems connected to each other as an extended system that is talking to a harmonic bath. For a nearest neighbor interaction, it should be simple enough to do. It would be a two-dimensional PEPS like decomposition. I wanted to be able to handle non-nearest neighbor interactions by adding extra bonds instead of having the bond dimension grow out of bounds. I think I might need something like a non-contracting product for that.

Using the SVD decomposition for reducing the size of the space and making the representation more compact might help a lot with extended systems with short range interactions. I am already seeing some improvements over my old codes for the single two level system case in terms of storage requirements. I have not yet compared performance, but those codes are in C++ and I was just playing with the Julia version, where my code may not be the most optimized.

I can discuss in greater depth if you are interested.

Best,

Amartya

Hi Miles,

I have defined a non-contracting product of basic tensors which works for my case. I don't know if it is of any interest to the community. Would you please explain to me the issues arising with QN-conserving tensors? I have never really used them in ITensor.

Hope you are having a great holiday!

Best,

Amartya

I have defined a non-contracting product of basic tensors which works for my case. I don't know if it is of any interest to the community. Would you please explain to me the issues arising with QN-conserving tensors? I have never really used them in ITensor.

Hope you are having a great holiday!

Best,

Amartya

...