Solver#
Currently, OpenBTE supports the anisotropic-MFP-BTE
\[\mathbf{F}_\mu \cdot \nabla \tilde{T}_\mu + \tilde{T}_\mu = \left[ \sum_{\mu''} \gamma_{\mu''} \right]^{-1}\sum_{\mu'}\gamma_{\mu'} \tilde{T}_{\mu'}\]
where \(\mathbf{F}=\mathbf{v}_\tau\tau_\mu\) is the vectorial MFP and \(\gamma_\mu =C_\mu/\tau_\mu\). The first step in solving this equation is to provide a first guess for the lattice temperature via solving the standard heat conduction equation. To this end, we use the Fourier
solver
from openbte import Fourier
fourier = Fourier(mesh,mat.thermal_conductivity,boundary_conditions,\
effective_thermal_conductivity=effective_kappa)
Finally, we can solve the BTE with
from openbte import BTE_RTA
bte = BTE_RTA(mesh,mat,boundary_conditions,fourier=fourier,\
effective_thermal_conductivity=effective_kappa)
The result of the simulations can then be consolidated in a OpenBTEResults
object
from openbte.objects import OpenBTEResults
results = OpenBTEResults(mesh=mesh,material = mat,solvers={'bte':bte,'fourier':fourier})
Lastly, we can save the results with
results.save()
where the file state.db
is saved in you current directory. Optionally you can define a custom filename
, without including the .db
suffix. Once ready for postprocessing, results can be load with
from openbte.objects import OpenBTEResults
results = OpenBTEResults.load()
where an optional filename
can be specified.