Different diffusivity coefficients for different variables (Prandtl/Schmidt numbers)
See _init_freq_lin
, sim.compute_freq_diss
, sim.compute_freq_complex
In fluidsim/base/time_stepping/pseudo_spect.py, there is something like:
def _init_freq_lin(self):
f_d, f_d_hypo = self.sim.compute_freq_diss()
freq_dissip = f_d + f_d_hypo
self.freq_lin = freq_dissip
Now, f_d
is real and has a shape of sim.oper.K2
(see compute_freq_diss
in fluidsim/base/solvers/pseudo_spect.py).
However, it's already supported to have self.freq_lin
with a different shape (sim.state.state_spect.shape
) as done in
def _compute_freq_complex(self):
state_spect = self.sim.state.state_spect
freq_complex = np.empty_like(state_spect)
for ik, key in enumerate(state_spect.keys):
freq_complex[ik] = self.sim.compute_freq_complex(key)
return freq_complex
We need to change compute_freq_diss
for some solvers supporting the Prandtl
parameter.
Beware that compute_freq_diss
is used in other places (in particular spatial_means and spect_energy_budg)...