Mercurial > repos > public > sbplib
view +time/+rk4/get_rk4_time_step.m @ 958:72cd29107a9a feature/poroelastic
Temporary changes in multiblock.DiffOp. Change traction operators in Elastic2dvariable to be true boundary operators. But adjoint FD conv test fails for dirichlet BC so need to debug!
author | Martin Almquist <malmquist@stanford.edu> |
---|---|
date | Wed, 05 Dec 2018 18:58:10 -0800 |
parents | 48b6fb693025 |
children |
line wrap: on
line source
% Calculate the size of the largest time step given the largest evalue for a operator with pure imaginary e.values. function k = get_rk4_time_step(lambda,l_type) default_arg('l_type','complex') rad = abs(lambda); if strcmp(l_type,'real') % Real eigenvalue % kl > -2.7852 k = 2.7852/rad; elseif strcmp(l_type,'imag') % Imaginary eigenvalue % |kl| < 2.8284 k = 2.8284/rad; elseif strcmp(l_type,'complex') % |kl| < 2.5 k = 2.5/rad; else error('l_type must be one of ''real'',''imag'' or ''complex''.') end end