Take the paraboloid example and append this to the end. The check will fail on the partial derivatives. However, if you run it again (un-comment the 3rd line) it will succeed. So it seems that the checks leave the problem in an altered state.
check_total=top.check_total_derivatives()
print(check_total)
# top.run()
check_partial=top.check_partial_derivatives()
print(check_partial)