psmile_copy_subarray_2d_real.F90
Go to the documentation of this file.00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011       subroutine psmile_copy_subarray_2d_real (dest_vector, size, &
00012                         darray, idlow, idhigh, jdlow, jdhigh, &
00013                                 ibeg,  iend,   jbeg,  jend,   ierror)
00014 
00015 
00016 
00017       use PRISM_constants
00018 
00019       use PSMILe, dummy_interface => PSMILe_Copy_subarray_2d_real
00020 
00021       implicit none
00022 
00023 
00024 
00025       integer(kind=int64), Intent (In)    :: size
00026 
00027 
00028 
00029       integer, Intent (In)                :: idlow
00030 
00031 
00032 
00033       integer, Intent (In)                :: idhigh
00034 
00035 
00036 
00037       integer, Intent (In)                :: jdlow
00038 
00039 
00040 
00041       integer, Intent (In)                :: jdhigh
00042 
00043 
00044 
00045       real, Intent (In)                   :: darray (idlow:idhigh, 
00046                                                      jdlow:jdhigh)
00047 
00048 
00049 
00050       integer, Intent (In)                :: ibeg
00051 
00052 
00053 
00054       integer, Intent (In)                :: iend
00055 
00056 
00057 
00058       integer, Intent (In)                :: jbeg
00059 
00060 
00061 
00062       integer, Intent (In)                :: jend
00063 
00064 
00065 
00066       Real, Intent (Out)                  :: dest_vector (size)
00067 
00068 
00069 
00070       integer, Intent (Out)               :: ierror
00071 
00072 
00073 
00074 
00075 
00076 
00077 
00078       integer             :: i, j, leni
00079       integer(kind=int64) :: ip
00080 
00081 
00082 
00083 
00084 
00085 
00086 
00087 
00088 
00089 
00090 
00091 
00092 
00093 
00094 
00095 
00096 
00097 
00098 
00099    Character(len=len_cvs_string), save :: mycvs = 
00100        '$Id: psmile_copy_subarray_2d_real.F90 2325 2010-04-21 15:00:07Z valcke $'
00101 
00102 
00103 
00104 
00105 
00106 
00107 
00108 
00109 
00110 
00111 
00112 
00113 
00114       ierror = 0
00115 
00116       ip = 1
00117 
00118       leni = iend - ibeg + 1
00119 
00120          do j = jbeg, jend
00121 
00122             do i = ibeg, iend
00123             dest_vector (ip+(i-ibeg)) = darray (i, j)
00124             enddo
00125 
00126             ip = ip + leni
00127          enddo
00128 
00129       end subroutine PSMILe_Copy_subarray_2d_real