Ok, I try to make myself clearer:
I have 3 dof per node. 2 of them are mechanical, ie displacements in x and y direction. third one is a fracture mechanics degree of freedom just like temperature would be in thermomechanics. While setting up the element matrices inside the elmtxx.f file i have a flag to tell me which part I want to solve - mechanical or fracture part. Lets imagine a 4 node element. Its element matrice s would contain 12x12 elements. s(1:2,1:2) contains mechnical coefficients for node one, s(3,3) contains fracture coefficients for node one. s(1:2,3) and s(3,1:2) would be coefficients to couple fracture and mechanics, s(1:2,4:5) would be coupling coefficients between node one and two, and so on.... In the case of mechanical solution I would only set coefficients for mechanical solution, ie s(1:2,1:2) for node one, other entries (for that node) are 0. Of course now s(3,3) is zero too, which means I have zero on the main diagonal of the global matrice and therefore singular global tangent.
What I try to tell you is: serial solver seems to get along with this. My problem is solved and the solution seems reasonable. So I just wanted to know, why this is not possible in parallel. I hope now is clear, what I was trying to say.
Anyway, it would be nice to use this PETSc-built-in infrastructure. Could you please advise me how to use this PETSC-FIELD-SPLIT. I found some documentations on it but still I have no idea of how to use it.