The Lattice Boltzmann method as a general framework for blood flow modeling and simulations