sreadP_II Subroutine

subroutine sreadP_II(pname, X, Y1, Y2, Y3, Y4, Y5, Y6, Y7, Y8)

Arguments

Type IntentOptional Attributes Name
character(len=*) :: pname
integer :: X
integer :: Y1
integer, optional :: Y2
integer, optional :: Y3
integer, optional :: Y4
integer, optional :: Y5
integer, optional :: Y6
integer, optional :: Y7
integer, optional :: Y8

Source Code

subroutine sreadP_II(pname,X,Y1,Y2,Y3,Y4,Y5,Y6,Y7,Y8)
  character(len=*) :: pname
  integer          :: X
  integer          :: Y1
  integer,optional :: Y2,Y3,Y4,Y5,Y6,Y7,Y8
  open(719,file=trim(adjustl(trim(pname))))

  if(present(Y8))then
     read(719,"(9(I15))")X,Y1,Y2,Y3,Y4,Y5,Y6,Y7,Y8
  elseif(present(Y7))then
     read(719,"(8(I15))")X,Y1,Y2,Y3,Y4,Y5,Y6,Y7
  elseif(present(Y6))then
     read(719,"(7(I15))")X,Y1,Y2,Y3,Y4,Y5,Y6
  elseif(present(Y5))then
     read(719,"(6(I15))")X,Y1,Y2,Y3,Y4,Y5
  elseif(present(Y4))then
     read(719,"(5(I15))")X,Y1,Y2,Y3,Y4
  elseif(present(Y3))then
     read(719,"(4(I15))")X,Y1,Y2,Y3
  elseif(present(Y2))then
     read(719,*)X,Y1,Y2
  else
     read(719,*)X,Y1
  endif

  close(719)
end subroutine sreadP_II