Optimization with Surrogate Models: Flow and Heat Transfer Applications