Fluid motion has always been of great importance for humanity since much of our progress has been related to our understanding of fluid dynamics and to our control over the fluids surrounding us. In particular, the experimental techniques and the methods for numerical simulation developed during the last century allowed for great progresses both in creating new technologies and in improving old ones. Despite the great importance of experimental techniques, measuring all properties of a fluid throughout the whole domain, without intefering with the flow to be studied, is impossible. Also, building models even in scale is usually expansive. Both of these reasons have driven the development of numerical methods to the point they became an invaluable tool for fluid dynamic studies and the main tool for developing engineering solutions. If numerical methods are to be of any use, though, they have to correctly describe the problem geometry as well as capture the rich dynamics in a variety of flow situations, such as turbulence, boundary-layers and shock-waves. This thesis addresses two of these problems. In particular, I show modified versions of two immersed-interface methods to describe the geometry, simplifying their implementations with no impact to their applicability. I also introduce two methods for handling shock-waves: first aiming to minimize computational costs, then improving shock-wave resolution without increasing the number of grid points.