Commit da458ebb authored by Victor Yu's avatar Victor Yu

Merge branch 'check_pexsi_n_poles' into 'master'

Check PEXSI number of poles

See merge request elsi-devel/elsi-interface!238
parents 75171898 a18db393
......@@ -7,7 +7,7 @@ SET(elsi_URL "http://elsi-interchange.org")
SET(elsi_EMAIL "elsi-team@duke.edu")
SET(elsi_LICENSE "BSD 3")
SET(elsi_DESCRIPTION "Electronic Structure Infrastructure")
SET(elsi_DATESTAMP "20200617")
SET(elsi_DATESTAMP "20200625")
### CMake modules ###
LIST(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake)
......
......@@ -418,6 +418,22 @@ subroutine elsi_check(ph,bh,caller)
call elsi_stop(bh,msg,caller)
end if
end if
if(ph%pexsi_options%method == 1) then
if(ph%pexsi_options%numPole < 10 .or. ph%pexsi_options%numPole > 120&
.or. mod(ph%pexsi_options%numPole,10) /= 0) then
write(msg,"(A)") "Number of poles with this PEXSI method must be"//&
" chosen from 10, 20, 30, ..., 120"
call elsi_stop(bh,msg,caller)
end if
else
if(ph%pexsi_options%numPole < 5 .or. ph%pexsi_options%numPole > 40&
.or. mod(ph%pexsi_options%numPole,5) /= 0) then
write(msg,"(A)") "Number of poles with this PEXSI method must be"//&
" chosen from 5, 10, 15, ..., 40"
call elsi_stop(bh,msg,caller)
end if
end if
case(EIGENEXA_SOLVER)
call elsi_get_eigenexa_enabled(solver_enabled)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment