step by step change > sure, output at every time step
regarding validation > why wouldn't you check the software against physical?
access to algorithm > not possible
validation > see above, compare against physical, let the developers worry about the algorithm
other packages > lots of other packages, but why would you check cfd against cfd?
Still studying this.