Hello Frederico, I’m not sure that’s possible. Here is what I do, it makes me sick, but mixing precisions/scalar types with PETSc is difficult (crossing my fingers this will be better with future). In MATLAB (after putting petsc/share/petsc/matlab in the path): A = PetscBinaryRead('your_binary_mat_with_re+im.dat','complex',true); % scalar-type=complex PetscBinaryWrite('re.dat',real(A)); % scalar-type=real PetscBinaryWrite('im.dat',imag(A)); % scalar-type=real Thanks, Pierre
On 11 May 2021, at 3:30 PM, Frederico Teixeira <[email protected]> wrote:
Dear fellows,
I hope this message finds you safe and well.
I have a complex-valued matrix and its real/imaginary components in binary format. They were extracted from a solver that only works with "scalar-type=complex" configuration. I am getting weird results when I load them into a small test program that's configured with "scalar-type=real", but I believe this is expected. At the end of the day, I would like to have both real and imaginary components as real-valued matrices. Is it possible to do it? I want to test preconditioners that are tailored for this sort of problem.
Regards, Frederico.