Resolve "[psolver@1.9.2] unable to compile with psolver (pkernel_init)"
Description
With the new version of psolver (and after setting the fix from #763 ) the compiler fails at :
../../src/poisson/poisson_psolver.F90:301:18:
301 | this%kernel = pkernel_init(cube%mpi_grp%rank, cube%mpi_grp%size, this%inputs,&
| 1
Error: Type mismatch in argument 'dom' at (1); passed CHARACTER(1) to TYPE(domain)
../../src/poisson/poisson_psolver.F90:225:18:
225 | this%kernel = pkernel_init(cube%mpi_grp%rank, cube%mpi_grp%size, this%inputs, this%geocode, cube%rs_n_global, &
| 1
Error: Type mismatch in argument 'dom' at (1); passed CHARACTER(1) to TYPE(domain)
CPP grid/mesh_partition.lo
CPP grid/time_interpolation.lo
CPP td/potential_interpolation.lo
make[2]: *** [Makefile:3448: poisson/poisson_psolver.lo] Error 1
See #764 (closed)
This MR solves this by using the new API of PSolver which uses bigdft-atlab
for domain instead of geocode.
This MR has the following parts:
- Patch to get octopus working with psolver 1.9.2
- m4 macro to detect
bigdft-atlab
via a test program - m4 macro to detect the new psolver api if the old test program fails to compile
-
#ifndef
wrappers around the octopus src that use psolver calls that need the new api ( so that old versions used by easybuild is also supported )
News snippet
Added support to Psolver 1.9.2
Closes #764 (closed)
Edited by Ashwin