conductivity->fph_rta is removed, since it is now a internal variable of conductivity class
accept len_boundary in &general, which take length in meter and give the value to conductivity->len_boundary
conductivity.cpp
a new function define in conductivity to take the inverse from gamma to lifetime
Conductivity::lifetime_from_gamma (double **lifetime, double **gamma)
Gamma due to boundary scattering is given by Gamma_{total} = Gamma' + |v|/d, which is consistent with analyze_phonon.cpp
the workflow of summing Gamma is changed, now isotope and boundary is summed with three-phonon first, if four-phonon is included, we take lifetime before summing the four-phonon contribution using lifetime_from_gamma and calculate kappa_3only. Then we sum the four-phonon contribution and calculate kappa
write_phonon.cpp
write_kappa() is changed so that it write prefix.kl3 and prefix.kl4 if (conductivity→fph_rta > 0). The len_boundary is written to prefix.kl just as the case in analyze_phonon.cpp
as a small fix, the kappa_coherent now write the whole thermal conductivity tensor, instead of just xx, yy and zz
Summary of main changes
parsephonon.cpp
conductivity->fph_rta
is removed, since it is now a internal variable ofconductivity
classconductivity->len_boundary
conductivity.cpp
Conductivity::lifetime_from_gamma (double **lifetime, double **gamma)
analyze_phonon.cpp
lifetime_from_gamma
and calculate kappa_3only. Then we sum the four-phonon contribution and calculatekappa
write_phonon.cpp
write_kappa()
is changed so that it write prefix.kl3 and prefix.kl4 if (conductivity→fph_rta > 0
). Thelen_boundary
is written to prefix.kl just as the case inanalyze_phonon.cpp