Skip to content
Snippets Groups Projects
Commit 1c6d8695 authored by Johanna Zijderveld's avatar Johanna Zijderveld
Browse files

move ifftn to model.py to remove one line function

parent 80b59ff6
No related branches found
No related tags found
1 merge request!4Interface refactoring
Pipeline #174555 passed
# %%
from codes.tb.tb import addTb
from codes.tb.transforms import tb2kham, kdens2tbFFT, ifftn2tb
from codes.tb.transforms import tb2kham, ifftn2tb
from codes.mf import (
densityMatrix,
fermiOnGrid,
meanField,
)
import numpy as np
from scipy.fftpack import ifftn
class Model:
......@@ -37,7 +38,9 @@ class Model:
def makeDensityMatrixTb(self, mf_model, nK=200):
self.kham = tb2kham(addTb(self.h_0, mf_model), nK=nK, ndim=self._ndim)
self.calculateEF()
return ifftn2tb(kdens2tbFFT(densityMatrix(self.kham, self.EF), self._ndim))
return ifftn2tb(
ifftn(densityMatrix(self.kham, self.EF), axes=np.arange(self._ndim))
)
def mfield(self, mf_model, nK=200):
densityMatrixTb = self.makeDensityMatrixTb(mf_model, nK=nK)
......@@ -45,6 +48,3 @@ class Model:
meanField(densityMatrixTb, self.h_int, n=self._ndim),
{self._localKey: -self.EF * np.eye(self._size)},
)
# %%
......@@ -134,7 +134,3 @@ def kfunc2tb(kfunc, nSamples, ndim=1):
raise NotImplementedError("n > 2 not implemented")
ifftnArray = ifftn(kfuncOnGrid, axes=np.arange(ndim))
return ifftn2tb(ifftnArray)
def kdens2tbFFT(kdens, ndim=1):
return ifftn(kdens, axes=np.arange(ndim))
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment