wrapper for call random number
function ran2() result(res) !! wrapper for call random number real(kind=wp) :: res call random_number(res) end function ran2