I have a parallel program which reads data and makes a call to a subroutine that uses petsc. It only needs to read data once. Is it possible to implement that using MPI and then initialise petsc in the subroutine? Or do I need to initialise petsc first (and use MPI calls with PETSC_COMM_WORLD)?