-
Notifications
You must be signed in to change notification settings - Fork 662
Description
In spark load the latest compiler, mpi and mkl modules, compile the impi_intel_linux_db target and run this case:
&HEAD CHID='test_indefinite', TITLE='Test ULMAT/UGLMAT on indefinite Poisson problem.' /
# Mesh:
&MESH IJK=9,8,8, XB=0.0,9.0,-4.0,4.0,0.0,8.0 /
# Simulation Paremeters:
&TIME T_END=.02, DT=0.01/
&MISC SIMULATION_MODE='DNS', STRATIFICATION=.FALSE., NOISE_VELOCITY=0.5 /
&RADI RADIATION=.FALSE. /
&PRES SOLVER='ULMAT', CHECK_POISSON=T /
# OBST just to trigger PARDISO solve with ULMAT:
&OBST XB=8.,9.,-4.,4.,0.,8. /
# Boundaries:
&VENT MB='XMIN', SURF_ID='MIRROR' /
&VENT MB='XMAX', SURF_ID='MIRROR' /
&VENT MB='YMIN', SURF_ID='MIRROR' /
&VENT MB='YMAX', SURF_ID='MIRROR' /
&VENT MB='ZMIN', SURF_ID='MIRROR' /
&VENT MB='ZMAX', SURF_ID='MIRROR' /
# Output:
&SLCF PBY=0., QUANTITY='VELOCITY', VECTOR=.TRUE. /
&SLCF PBY=0., QUANTITY='H' /
&TAIL /
The Poisson matrix for this problem is symmetric indefinite. Both with ULMAT and UGLMAT we are getting H=0 as solution regardless of what the Poisson RHS is.

Now unload mkl/latest and load mkl/2024.2, recompile the impi_intel_linux_db target and run the case. The solution for H is correct.

Interfaces to PARDISO or SPARSE_CLUSTER_SOLVER have not changed, and VERBOSE metrics for matrix factorization are identical.
I opened a thread in the Intel MKL forum asking about any parameter changes that might be related to this (https://community.intel.com/t5/Intel-oneAPI-Math-Kernel-Library/Change-in-behavior-of-Pardiso-and-Sparse-Cluster-Solver-for/m-p/1644570#M36659).
Next I'll setup a standalone test of the solver.