My Project
Public Member Functions | List of all members
mod_nctools::nc_make_pvar Interface Reference

Public Member Functions

type(ncvar) function, pointer nc_make_pvar_scl_chr (NAME, VALUES, DIM1, DIM2)
 
type(ncvar) function, pointer nc_make_pvar_vec_chr (NAME, VALUES, DIM1, DIM2, DIM3)
 
type(ncvar) function, pointer nc_make_pvar_scl_dbl (NAME, VALUES, DIM1)
 
type(ncvar) function, pointer nc_make_pvar_vec_dbl (NAME, VALUES, DIM1, DIM2)
 
type(ncvar) function, pointer nc_make_pvar_arr_dbl (NAME, VALUES, DIM1, DIM2, DIM3)
 
type(ncvar) function, pointer nc_make_pvar_cub_dbl (NAME, VALUES, DIM1, DIM2, DIM3, DIM4)
 
type(ncvar) function, pointer nc_make_pvar_fda_dbl (NAME, VALUES, DIM1, DIM2, DIM3, DIM4, DIM5)
 
type(ncvar) function, pointer nc_make_pvar_scl_flt (NAME, VALUES, DIM1)
 
type(ncvar) function, pointer nc_make_pvar_vec_flt (NAME, VALUES, DIM1, DIM2)
 
type(ncvar) function, pointer nc_make_pvar_arr_flt (NAME, VALUES, DIM1, DIM2, DIM3)
 
type(ncvar) function, pointer nc_make_pvar_cub_flt (NAME, VALUES, DIM1, DIM2, DIM3, DIM4)
 
type(ncvar) function, pointer nc_make_pvar_fda_flt (NAME, VALUES, DIM1, DIM2, DIM3, DIM4, DIM5)
 
type(ncvar) function, pointer nc_make_pvar_scl_int (NAME, VALUES, DIM1)
 
type(ncvar) function, pointer nc_make_pvar_vec_int (NAME, VALUES, DIM1, DIM2)
 
type(ncvar) function, pointer nc_make_pvar_arr_int (NAME, VALUES, DIM1, DIM2, DIM3)
 
type(ncvar) function, pointer nc_make_pvar_cub_int (NAME, VALUES, DIM1, DIM2, DIM3, DIM4)
 
type(ncvar) function, pointer nc_make_pvar_fda_int (NAME, VALUES, DIM1, DIM2, DIM3, DIM4, DIM5)
 

Detailed Description

Definition at line 103 of file mod_nctools.f90.

Member Function/Subroutine Documentation

◆ nc_make_pvar_arr_dbl()

type(ncvar) function, pointer mod_nctools::nc_make_pvar::nc_make_pvar_arr_dbl ( character(len=*), intent(in)  NAME,
real(dp), dimension(:,:), intent(in), pointer  VALUES,
type(ncdim), pointer  DIM1,
type(ncdim), pointer  DIM2,
type(ncdim), optional, pointer  DIM3 
)

Definition at line 2137 of file mod_nctools.f90.

2137  IMPLICIT NONE
2138  TYPE(NCVAR), POINTER :: VAR
2139  TYPE(NCDIM), POINTER :: DIM1
2140  TYPE(NCDIM), POINTER :: DIM2
2141  TYPE(NCDIM), OPTIONAL, POINTER :: DIM3
2142  character(len=*), intent(in) :: name
2143  REAL(DP), POINTER, intent(in) :: values(:,:)
2144  if(dbg_set(dbg_sbr)) &
2145  & write(ipt,*) "START NC_MAKE_PVAR_ARR_DBL"
2146 
2147  IF(.NOT. ASSOCIATED(values)) CALL fatal_error &
2148  & ("NC_MAKE_PVAR: VALUES ARGUMENT MUST ALREADY BE ASSOCIATED!",&
2149  & "ERROR MAKING VARIABLE: "//trim(name))
2150  if(.NOT. ASSOCIATED(dim1)) CALL fatal_error &
2151  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2152  &"ERROR MAKING VARIABLE: "//trim(name))
2153  if(dim1%UNLIMITED) CALL fatal_error &
2154  & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2155  &"ERROR MAKING VARIABLE: "//trim(name))
2156  if(.NOT. ASSOCIATED(dim2)) CALL fatal_error &
2157  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2158  &"ERROR MAKING VARIABLE: "//trim(name))
2159 ! if(DIM2%UNLIMITED) CALL FATAL_ERROR &
2160 ! & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2161 ! &"ERROR MAKING VARIABLE: "//TRIM(NAME))
2162  var => new_var()
2163 
2164  var%VARID = -1
2165  var%VARNAME = trim(name)
2166  var%xtype = nf90_double
2167  var%arr_dbl => values
2168  var => add(var,copy_dim(dim1))
2169  var => add(var,copy_dim(dim2))
2170  if(present(dim3)) then
2171  if(.NOT. ASSOCIATED(dim3)) CALL fatal_error &
2172  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2173  &"ERROR MAKING VARIABLE: "//trim(name))
2174  if(.NOT. dim3%UNLIMITED) CALL fatal_error &
2175  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE UNLIMITED (TIME)",&
2176  &"ERROR MAKING VARIABLE: "//trim(name))
2177  var => add(var,copy_dim(dim3))
2178  end if
2179 
2180  if(dbg_set(dbg_sbr)) &
2181  & write(ipt,*) "END NC_MAKE_PVAR_ARR_DBL"

◆ nc_make_pvar_arr_flt()

type(ncvar) function, pointer mod_nctools::nc_make_pvar::nc_make_pvar_arr_flt ( character(len=*), intent(in)  NAME,
real(spa), dimension(:,:), intent(in), pointer  VALUES,
type(ncdim), pointer  DIM1,
type(ncdim), pointer  DIM2,
type(ncdim), optional, pointer  DIM3 
)

Definition at line 2383 of file mod_nctools.f90.

2383  IMPLICIT NONE
2384  TYPE(NCVAR), POINTER :: VAR
2385  TYPE(NCDIM), POINTER :: DIM1
2386  TYPE(NCDIM), POINTER :: DIM2
2387  TYPE(NCDIM), OPTIONAL, POINTER :: DIM3
2388  character(len=*), intent(in) :: name
2389  REAL(SPA), POINTER, intent(in) :: values(:,:)
2390  if(dbg_set(dbg_sbr)) &
2391  & write(ipt,*) "START NC_MAKE_PVAR_ARR_FLT"
2392 
2393  IF(.NOT. ASSOCIATED(values)) CALL fatal_error &
2394  & ("NC_MAKE_PVAR: VALUES ARGUMENT MUST ALREADY BE ASSOCIATED!",&
2395  & "ERROR MAKING VARIABLE: "//trim(name))
2396  if(.NOT. ASSOCIATED(dim1)) CALL fatal_error &
2397  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2398  &"ERROR MAKING VARIABLE: "//trim(name))
2399  if(dim1%UNLIMITED) CALL fatal_error &
2400  & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2401  &"ERROR MAKING VARIABLE: "//trim(name))
2402  if(.NOT. ASSOCIATED(dim2)) CALL fatal_error &
2403  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2404  &"ERROR MAKING VARIABLE: "//trim(name))
2405 ! if(DIM2%UNLIMITED) CALL FATAL_ERROR &
2406 ! & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2407 ! &"ERROR MAKING VARIABLE: "//TRIM(NAME))
2408  var => new_var()
2409 
2410  var%VARID = -1
2411  var%VARNAME = trim(name)
2412  var%xtype = nf90_float
2413  var%arr_flt => values
2414  var => add(var,copy_dim(dim1))
2415  var => add(var,copy_dim(dim2))
2416  if(present(dim3)) then
2417  if(.NOT. ASSOCIATED(dim3)) CALL fatal_error &
2418  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2419  &"ERROR MAKING VARIABLE: "//trim(name))
2420  if(.NOT. dim3%UNLIMITED) CALL fatal_error &
2421  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE UNLIMITED (TIME)",&
2422  &"ERROR MAKING VARIABLE: "//trim(name))
2423  var => add(var,copy_dim(dim3))
2424  end if
2425 
2426  if(dbg_set(dbg_sbr)) &
2427  & write(ipt,*) "END NC_MAKE_PVAR_ARR_FLT"

◆ nc_make_pvar_arr_int()

type(ncvar) function, pointer mod_nctools::nc_make_pvar::nc_make_pvar_arr_int ( character(len=*), intent(in)  NAME,
integer, dimension(:,:), intent(in), pointer  VALUES,
type(ncdim), pointer  DIM1,
type(ncdim), pointer  DIM2,
type(ncdim), optional, pointer  DIM3 
)

Definition at line 2629 of file mod_nctools.f90.

2629  IMPLICIT NONE
2630  TYPE(NCVAR), POINTER :: VAR
2631  TYPE(NCDIM), POINTER :: DIM1
2632  TYPE(NCDIM), POINTER :: DIM2
2633  TYPE(NCDIM), OPTIONAL, POINTER :: DIM3
2634  character(len=*), intent(in) :: name
2635  INTEGER, POINTER, intent(in) :: values(:,:)
2636  if(dbg_set(dbg_sbr)) &
2637  & write(ipt,*) "START NC_MAKE_PVAR_ARR_INT"
2638 
2639  IF(.NOT. ASSOCIATED(values)) CALL fatal_error &
2640  & ("NC_MAKE_PVAR: VALUES ARGUMENT MUST ALREADY BE ASSOCIATED!",&
2641  & "ERROR MAKING VARIABLE: "//trim(name))
2642  if(.NOT. ASSOCIATED(dim1)) CALL fatal_error &
2643  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2644  &"ERROR MAKING VARIABLE: "//trim(name))
2645  if(dim1%UNLIMITED) CALL fatal_error &
2646  & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2647  &"ERROR MAKING VARIABLE: "//trim(name))
2648  if(.NOT. ASSOCIATED(dim2)) CALL fatal_error &
2649  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2650  &"ERROR MAKING VARIABLE: "//trim(name))
2651 ! if(DIM2%UNLIMITED) CALL FATAL_ERROR &
2652 ! & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2653 ! &"ERROR MAKING VARIABLE: "//TRIM(NAME))
2654  var => new_var()
2655 
2656  var%VARID = -1
2657  var%VARNAME = trim(name)
2658  var%xtype = nf90_int
2659  var%arr_int => values
2660  var => add(var,copy_dim(dim1))
2661  var => add(var,copy_dim(dim2))
2662  if(present(dim3)) then
2663  if(.NOT. ASSOCIATED(dim3)) CALL fatal_error &
2664  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2665  &"ERROR MAKING VARIABLE: "//trim(name))
2666  if(.NOT. dim3%UNLIMITED) CALL fatal_error &
2667  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE UNLIMITED (TIME)",&
2668  &"ERROR MAKING VARIABLE: "//trim(name))
2669  var => add(var,copy_dim(dim3))
2670  end if
2671 
2672  if(dbg_set(dbg_sbr)) &
2673  & write(ipt,*) "END NC_MAKE_PVAR_ARR_INT"

◆ nc_make_pvar_cub_dbl()

type(ncvar) function, pointer mod_nctools::nc_make_pvar::nc_make_pvar_cub_dbl ( character(len=*), intent(in)  NAME,
real(dp), dimension(:,:,:), intent(in), pointer  VALUES,
type(ncdim), pointer  DIM1,
type(ncdim), pointer  DIM2,
type(ncdim), pointer  DIM3,
type(ncdim), optional, pointer  DIM4 
)

Definition at line 2186 of file mod_nctools.f90.

2186  IMPLICIT NONE
2187  TYPE(NCVAR), POINTER :: VAR
2188  TYPE(NCDIM), POINTER :: DIM1
2189  TYPE(NCDIM), POINTER :: DIM2
2190  TYPE(NCDIM), POINTER :: DIM3
2191  TYPE(NCDIM), OPTIONAL, POINTER :: DIM4
2192  character(len=*), intent(in) :: name
2193  REAL(DP), POINTER, intent(in) :: values(:,:,:)
2194  if(dbg_set(dbg_sbr)) &
2195  & write(ipt,*) "START NC_MAKE_PVAR_CUB_DBL"
2196 
2197  IF(.NOT. ASSOCIATED(values)) CALL fatal_error &
2198  & ("NC_MAKE_PVAR: VALUES ARGUMENT MUST ALREADY BE ASSOCIATED!",&
2199  & "ERROR MAKING VARIABLE: "//trim(name))
2200  if(.NOT. ASSOCIATED(dim1)) CALL fatal_error &
2201  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2202  &"ERROR MAKING VARIABLE: "//trim(name))
2203  if(dim1%UNLIMITED) CALL fatal_error &
2204  & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2205  &"ERROR MAKING VARIABLE: "//trim(name))
2206  if(.NOT. ASSOCIATED(dim2)) CALL fatal_error &
2207  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2208  &"ERROR MAKING VARIABLE: "//trim(name))
2209  if(dim2%UNLIMITED) CALL fatal_error &
2210  & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2211  &"ERROR MAKING VARIABLE: "//trim(name))
2212  if(.NOT. ASSOCIATED(dim3)) CALL fatal_error &
2213  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2214  &"ERROR MAKING VARIABLE: "//trim(name))
2215 ! if(DIM3%UNLIMITED) CALL FATAL_ERROR &
2216 ! & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2217 ! &"ERROR MAKING VARIABLE: "//TRIM(NAME))
2218  var => new_var()
2219 
2220  var%VARID = -1
2221  var%VARNAME = trim(name)
2222  var%xtype = nf90_double
2223  var%cub_dbl => values
2224  var => add(var,copy_dim(dim1))
2225  var => add(var,copy_dim(dim2))
2226  var => add(var,copy_dim(dim3))
2227  if(present(dim4)) then
2228  if(.NOT. ASSOCIATED(dim4)) CALL fatal_error &
2229  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2230  &"ERROR MAKING VARIABLE: "//trim(name))
2231  if(.NOT. dim4%UNLIMITED) CALL fatal_error &
2232  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE UNLIMITED (TIME)",&
2233  &"ERROR MAKING VARIABLE: "//trim(name))
2234  var => add(var,copy_dim(dim4))
2235  end if
2236 
2237  if(dbg_set(dbg_sbr)) &
2238  & write(ipt,*) "END NC_MAKE_PVAR_CUB_DBL"

◆ nc_make_pvar_cub_flt()

type(ncvar) function, pointer mod_nctools::nc_make_pvar::nc_make_pvar_cub_flt ( character(len=*), intent(in)  NAME,
real(spa), dimension(:,:,:), intent(in), pointer  VALUES,
type(ncdim), pointer  DIM1,
type(ncdim), pointer  DIM2,
type(ncdim), pointer  DIM3,
type(ncdim), optional, pointer  DIM4 
)

Definition at line 2432 of file mod_nctools.f90.

2432  IMPLICIT NONE
2433  TYPE(NCVAR), POINTER :: VAR
2434  TYPE(NCDIM), POINTER :: DIM1
2435  TYPE(NCDIM), POINTER :: DIM2
2436  TYPE(NCDIM), POINTER :: DIM3
2437  TYPE(NCDIM), OPTIONAL, POINTER :: DIM4
2438  character(len=*), intent(in) :: name
2439  REAL(SPA), POINTER, intent(in) :: values(:,:,:)
2440  if(dbg_set(dbg_sbr)) &
2441  & write(ipt,*) "START NC_MAKE_PVAR_CUB_FLT"
2442 
2443  IF(.NOT. ASSOCIATED(values)) CALL fatal_error &
2444  & ("NC_MAKE_PVAR: VALUES ARGUMENT MUST ALREADY BE ASSOCIATED!",&
2445  & "ERROR MAKING VARIABLE: "//trim(name))
2446  if(.NOT. ASSOCIATED(dim1)) CALL fatal_error &
2447  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2448  &"ERROR MAKING VARIABLE: "//trim(name))
2449  if(dim1%UNLIMITED) CALL fatal_error &
2450  & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2451  &"ERROR MAKING VARIABLE: "//trim(name))
2452  if(.NOT. ASSOCIATED(dim2)) CALL fatal_error &
2453  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2454  &"ERROR MAKING VARIABLE: "//trim(name))
2455  if(dim2%UNLIMITED) CALL fatal_error &
2456  & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2457  &"ERROR MAKING VARIABLE: "//trim(name))
2458  if(.NOT. ASSOCIATED(dim3)) CALL fatal_error &
2459  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2460  &"ERROR MAKING VARIABLE: "//trim(name))
2461 ! if(DIM3%UNLIMITED) CALL FATAL_ERROR &
2462 ! & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2463 ! &"ERROR MAKING VARIABLE: "//TRIM(NAME))
2464  var => new_var()
2465 
2466  var%VARID = -1
2467  var%VARNAME = trim(name)
2468  var%xtype = nf90_float
2469  var%cub_flt => values
2470  var => add(var,copy_dim(dim1))
2471  var => add(var,copy_dim(dim2))
2472  var => add(var,copy_dim(dim3))
2473  if(present(dim4)) then
2474  if(.NOT. ASSOCIATED(dim4)) CALL fatal_error &
2475  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2476  &"ERROR MAKING VARIABLE: "//trim(name))
2477  if(.NOT. dim4%UNLIMITED) CALL fatal_error &
2478  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE UNLIMITED (TIME)",&
2479  &"ERROR MAKING VARIABLE: "//trim(name))
2480  var => add(var,copy_dim(dim4))
2481  end if
2482 
2483  if(dbg_set(dbg_sbr)) &
2484  & write(ipt,*) "END NC_MAKE_PVAR_CUB_FLT"

◆ nc_make_pvar_cub_int()

type(ncvar) function, pointer mod_nctools::nc_make_pvar::nc_make_pvar_cub_int ( character(len=*), intent(in)  NAME,
integer, dimension(:,:,:), intent(in), pointer  VALUES,
type(ncdim), pointer  DIM1,
type(ncdim), pointer  DIM2,
type(ncdim), pointer  DIM3,
type(ncdim), optional, pointer  DIM4 
)

Definition at line 2678 of file mod_nctools.f90.

2678  IMPLICIT NONE
2679  TYPE(NCVAR), POINTER :: VAR
2680  TYPE(NCDIM), POINTER :: DIM1
2681  TYPE(NCDIM), POINTER :: DIM2
2682  TYPE(NCDIM), POINTER :: DIM3
2683  TYPE(NCDIM), OPTIONAL, POINTER :: DIM4
2684  character(len=*), intent(in) :: name
2685  INTEGER, POINTER, intent(in) :: values(:,:,:)
2686  if(dbg_set(dbg_sbr)) &
2687  & write(ipt,*) "START NC_MAKE_PVAR_CUB_INT"
2688 
2689  IF(.NOT. ASSOCIATED(values)) CALL fatal_error &
2690  & ("NC_MAKE_PVAR: VALUES ARGUMENT MUST ALREADY BE ASSOCIATED!",&
2691  & "ERROR MAKING VARIABLE: "//trim(name))
2692  if(.NOT. ASSOCIATED(dim1)) CALL fatal_error &
2693  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2694  &"ERROR MAKING VARIABLE: "//trim(name))
2695  if(dim1%UNLIMITED) CALL fatal_error &
2696  & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2697  &"ERROR MAKING VARIABLE: "//trim(name))
2698  if(.NOT. ASSOCIATED(dim2)) CALL fatal_error &
2699  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2700  &"ERROR MAKING VARIABLE: "//trim(name))
2701  if(dim2%UNLIMITED) CALL fatal_error &
2702  & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2703  &"ERROR MAKING VARIABLE: "//trim(name))
2704  if(.NOT. ASSOCIATED(dim3)) CALL fatal_error &
2705  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2706  &"ERROR MAKING VARIABLE: "//trim(name))
2707 ! if(DIM3%UNLIMITED) CALL FATAL_ERROR &
2708 ! & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2709 ! &"ERROR MAKING VARIABLE: "//TRIM(NAME))
2710  var => new_var()
2711 
2712  var%VARID = -1
2713  var%VARNAME = trim(name)
2714  var%xtype = nf90_int
2715  var%cub_int => values
2716  var => add(var,copy_dim(dim1))
2717  var => add(var,copy_dim(dim2))
2718  var => add(var,copy_dim(dim3))
2719  if(present(dim4)) then
2720  if(.NOT. ASSOCIATED(dim4)) CALL fatal_error &
2721  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2722  &"ERROR MAKING VARIABLE: "//trim(name))
2723  if(.NOT. dim4%UNLIMITED) CALL fatal_error &
2724  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE UNLIMITED (TIME)",&
2725  &"ERROR MAKING VARIABLE: "//trim(name))
2726  var => add(var,copy_dim(dim4))
2727  end if
2728 
2729  if(dbg_set(dbg_sbr)) &
2730  & write(ipt,*) "END NC_MAKE_PVAR_CUB_INT"

◆ nc_make_pvar_fda_dbl()

type(ncvar) function, pointer mod_nctools::nc_make_pvar::nc_make_pvar_fda_dbl ( character(len=*), intent(in)  NAME,
real(dp), dimension(:,:,:,:), intent(in), pointer  VALUES,
type(ncdim), pointer  DIM1,
type(ncdim), pointer  DIM2,
type(ncdim), pointer  DIM3,
type(ncdim), pointer  DIM4,
type(ncdim), optional, pointer  DIM5 
)

Definition at line 2243 of file mod_nctools.f90.

2243  IMPLICIT NONE
2244  TYPE(NCVAR), POINTER :: VAR
2245  TYPE(NCDIM), POINTER :: DIM1
2246  TYPE(NCDIM), POINTER :: DIM2
2247  TYPE(NCDIM), POINTER :: DIM3
2248  TYPE(NCDIM), POINTER :: DIM4
2249  TYPE(NCDIM), OPTIONAL, POINTER :: DIM5
2250  character(len=*), intent(in) :: name
2251  REAL(DP), POINTER, intent(in) :: values(:,:,:,:)
2252  if(dbg_set(dbg_sbr)) &
2253  & write(ipt,*) "START NC_MAKE_PVAR_FDA_DBL"
2254 
2255  IF(.NOT. ASSOCIATED(values)) CALL fatal_error &
2256  & ("NC_MAKE_PVAR: VALUES ARGUMENT MUST ALREADY BE ASSOCIATED!",&
2257  & "ERROR MAKING VARIABLE: "//trim(name))
2258  if(.NOT. ASSOCIATED(dim1)) CALL fatal_error &
2259  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2260  &"ERROR MAKING VARIABLE: "//trim(name))
2261  if(dim1%UNLIMITED) CALL fatal_error &
2262  & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2263  &"ERROR MAKING VARIABLE: "//trim(name))
2264  if(.NOT. ASSOCIATED(dim2)) CALL fatal_error &
2265  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2266  &"ERROR MAKING VARIABLE: "//trim(name))
2267  if(dim2%UNLIMITED) CALL fatal_error &
2268  & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2269  &"ERROR MAKING VARIABLE: "//trim(name))
2270  if(.NOT. ASSOCIATED(dim3)) CALL fatal_error &
2271  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2272  &"ERROR MAKING VARIABLE: "//trim(name))
2273  if(dim3%UNLIMITED) CALL fatal_error &
2274  & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2275  &"ERROR MAKING VARIABLE: "//trim(name))
2276  if(.NOT. ASSOCIATED(dim4)) CALL fatal_error &
2277  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2278  &"ERROR MAKING VARIABLE: "//trim(name))
2279 ! if(DIM4%UNLIMITED) CALL FATAL_ERROR &
2280 ! & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2281 ! &"ERROR MAKING VARIABLE: "//TRIM(NAME))
2282  var => new_var()
2283 
2284  var%VARID = -1
2285  var%VARNAME = trim(name)
2286  var%xtype = nf90_double
2287  var%fda_dbl => values
2288  var => add(var,copy_dim(dim1))
2289  var => add(var,copy_dim(dim2))
2290  var => add(var,copy_dim(dim3))
2291  var => add(var,copy_dim(dim4))
2292  if(present(dim5)) then
2293  if(.NOT. ASSOCIATED(dim5)) CALL fatal_error &
2294  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2295  &"ERROR MAKING VARIABLE: "//trim(name))
2296  if(.NOT. dim5%UNLIMITED) CALL fatal_error &
2297  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE UNLIMITED (TIME)",&
2298  &"ERROR MAKING VARIABLE: "//trim(name))
2299  var => add(var,copy_dim(dim5))
2300  end if
2301 
2302  if(dbg_set(dbg_sbr)) &
2303  & write(ipt,*) "END NC_MAKE_PVAR_FDA_DBL"

◆ nc_make_pvar_fda_flt()

type(ncvar) function, pointer mod_nctools::nc_make_pvar::nc_make_pvar_fda_flt ( character(len=*), intent(in)  NAME,
real(spa), dimension(:,:,:,:), intent(in), pointer  VALUES,
type(ncdim), pointer  DIM1,
type(ncdim), pointer  DIM2,
type(ncdim), pointer  DIM3,
type(ncdim), pointer  DIM4,
type(ncdim), optional, pointer  DIM5 
)

Definition at line 2489 of file mod_nctools.f90.

2489  IMPLICIT NONE
2490  TYPE(NCVAR), POINTER :: VAR
2491  TYPE(NCDIM), POINTER :: DIM1
2492  TYPE(NCDIM), POINTER :: DIM2
2493  TYPE(NCDIM), POINTER :: DIM3
2494  TYPE(NCDIM), POINTER :: DIM4
2495  TYPE(NCDIM), OPTIONAL, POINTER :: DIM5
2496  character(len=*), intent(in) :: name
2497  REAL(SPA), POINTER, intent(in) :: values(:,:,:,:)
2498  if(dbg_set(dbg_sbr)) &
2499  & write(ipt,*) "START NC_MAKE_PVAR_FDA_FLT"
2500 
2501  IF(.NOT. ASSOCIATED(values)) CALL fatal_error &
2502  & ("NC_MAKE_PVAR: VALUES ARGUMENT MUST ALREADY BE ASSOCIATED!",&
2503  & "ERROR MAKING VARIABLE: "//trim(name))
2504  if(.NOT. ASSOCIATED(dim1)) CALL fatal_error &
2505  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2506  &"ERROR MAKING VARIABLE: "//trim(name))
2507  if(dim1%UNLIMITED) CALL fatal_error &
2508  & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2509  &"ERROR MAKING VARIABLE: "//trim(name))
2510  if(.NOT. ASSOCIATED(dim2)) CALL fatal_error &
2511  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2512  &"ERROR MAKING VARIABLE: "//trim(name))
2513  if(dim2%UNLIMITED) CALL fatal_error &
2514  & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2515  &"ERROR MAKING VARIABLE: "//trim(name))
2516  if(.NOT. ASSOCIATED(dim3)) CALL fatal_error &
2517  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2518  &"ERROR MAKING VARIABLE: "//trim(name))
2519  if(dim3%UNLIMITED) CALL fatal_error &
2520  & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2521  &"ERROR MAKING VARIABLE: "//trim(name))
2522  if(.NOT. ASSOCIATED(dim4)) CALL fatal_error &
2523  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2524  &"ERROR MAKING VARIABLE: "//trim(name))
2525 ! if(DIM4%UNLIMITED) CALL FATAL_ERROR &
2526 ! & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2527 ! &"ERROR MAKING VARIABLE: "//TRIM(NAME))
2528  var => new_var()
2529 
2530  var%VARID = -1
2531  var%VARNAME = trim(name)
2532  var%xtype = nf90_float
2533  var%fda_flt => values
2534  var => add(var,copy_dim(dim1))
2535  var => add(var,copy_dim(dim2))
2536  var => add(var,copy_dim(dim3))
2537  var => add(var,copy_dim(dim4))
2538  if(present(dim5)) then
2539  if(.NOT. ASSOCIATED(dim5)) CALL fatal_error &
2540  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2541  &"ERROR MAKING VARIABLE: "//trim(name))
2542  if(.NOT. dim5%UNLIMITED) CALL fatal_error &
2543  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE UNLIMITED (TIME)",&
2544  &"ERROR MAKING VARIABLE: "//trim(name))
2545  var => add(var,copy_dim(dim5))
2546  end if
2547 
2548  if(dbg_set(dbg_sbr)) &
2549  & write(ipt,*) "END NC_MAKE_PVAR_FDA_FLT"

◆ nc_make_pvar_fda_int()

type(ncvar) function, pointer mod_nctools::nc_make_pvar::nc_make_pvar_fda_int ( character(len=*), intent(in)  NAME,
integer, dimension(:,:,:,:), intent(in), pointer  VALUES,
type(ncdim), pointer  DIM1,
type(ncdim), pointer  DIM2,
type(ncdim), pointer  DIM3,
type(ncdim), pointer  DIM4,
type(ncdim), optional, pointer  DIM5 
)

Definition at line 2735 of file mod_nctools.f90.

2735  IMPLICIT NONE
2736  TYPE(NCVAR), POINTER :: VAR
2737  TYPE(NCDIM), POINTER :: DIM1
2738  TYPE(NCDIM), POINTER :: DIM2
2739  TYPE(NCDIM), POINTER :: DIM3
2740  TYPE(NCDIM), POINTER :: DIM4
2741  TYPE(NCDIM), OPTIONAL, POINTER :: DIM5
2742  character(len=*), intent(in) :: name
2743  INTEGER, POINTER, intent(in) :: values(:,:,:,:)
2744  if(dbg_set(dbg_sbr)) &
2745  & write(ipt,*) "START NC_MAKE_PVAR_FDA_INT"
2746 
2747  IF(.NOT. ASSOCIATED(values)) CALL fatal_error &
2748  & ("NC_MAKE_PVAR: VALUES ARGUMENT MUST ALREADY BE ASSOCIATED!",&
2749  & "ERROR MAKING VARIABLE: "//trim(name))
2750  if(.NOT. ASSOCIATED(dim1)) CALL fatal_error &
2751  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2752  &"ERROR MAKING VARIABLE: "//trim(name))
2753  if(dim1%UNLIMITED) CALL fatal_error &
2754  & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2755  &"ERROR MAKING VARIABLE: "//trim(name))
2756  if(.NOT. ASSOCIATED(dim2)) CALL fatal_error &
2757  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2758  &"ERROR MAKING VARIABLE: "//trim(name))
2759  if(dim2%UNLIMITED) CALL fatal_error &
2760  & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2761  &"ERROR MAKING VARIABLE: "//trim(name))
2762  if(.NOT. ASSOCIATED(dim3)) CALL fatal_error &
2763  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2764  &"ERROR MAKING VARIABLE: "//trim(name))
2765  if(dim3%UNLIMITED) CALL fatal_error &
2766  & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2767  &"ERROR MAKING VARIABLE: "//trim(name))
2768  if(.NOT. ASSOCIATED(dim4)) CALL fatal_error &
2769  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2770  &"ERROR MAKING VARIABLE: "//trim(name))
2771 ! if(DIM4%UNLIMITED) CALL FATAL_ERROR &
2772 ! & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2773 ! &"ERROR MAKING VARIABLE: "//TRIM(NAME))
2774  var => new_var()
2775 
2776  var%VARID = -1
2777  var%VARNAME = trim(name)
2778  var%xtype = nf90_int
2779  var%fda_int => values
2780  var => add(var,copy_dim(dim1))
2781  var => add(var,copy_dim(dim2))
2782  var => add(var,copy_dim(dim3))
2783  var => add(var,copy_dim(dim4))
2784  if(present(dim5)) then
2785  if(.NOT. ASSOCIATED(dim5)) CALL fatal_error &
2786  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2787  &"ERROR MAKING VARIABLE: "//trim(name))
2788  if(.NOT. dim5%UNLIMITED) CALL fatal_error &
2789  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE UNLIMITED (TIME)",&
2790  &"ERROR MAKING VARIABLE: "//trim(name))
2791  var => add(var,copy_dim(dim5))
2792  end if
2793 
2794  if(dbg_set(dbg_sbr)) &
2795  & write(ipt,*) "END NC_MAKE_PVAR_FDA_INT"

◆ nc_make_pvar_scl_chr()

type(ncvar) function, pointer mod_nctools::nc_make_pvar::nc_make_pvar_scl_chr ( character(len=*), intent(in)  NAME,
character(len=80), intent(in), pointer  VALUES,
type(ncdim), pointer  DIM1,
type(ncdim), optional, pointer  DIM2 
)

Definition at line 1952 of file mod_nctools.f90.

1952  IMPLICIT NONE
1953  TYPE(NCVAR), POINTER :: VAR
1954  TYPE(NCDIM), POINTER :: DIM1 ! MUST BE STR LENGTH
1955  TYPE(NCDIM), OPTIONAL, POINTER :: DIM2 ! IF PRESENT THIS MUST BE UNLIMITED
1956  character(len=*), intent(in) :: name
1957  character(len=80), POINTER, intent(in) :: values
1958  if(dbg_set(dbg_sbr)) &
1959  & write(ipt,*) "START NC_MAKE_PVAR_SCL_CHR"
1960 
1961  IF(.NOT. ASSOCIATED(values)) CALL fatal_error &
1962  & ("NC_MAKE_PVAR: VALUES ARGUMENT MUST ALREADY BE ASSOCIATED!",&
1963  & "ERROR MAKING VARIABLE: "//trim(name))
1964 
1965  if(.NOT. ASSOCIATED(dim1)) CALL fatal_error &
1966  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
1967  &"ERROR MAKING VARIABLE: "//trim(name))
1968 
1969 
1970  if(dim1%UNLIMITED) CALL fatal_error &
1971  & ("NC_MAKE_PVAR: WHEN MAKING CHARACTER DATA, THE FIRST DIMENSION",&
1972  & "MUST BE THE STING LENGTH. THE LAST DIMENSION (IF PRESENT) MUST BE UNLIMITED",&
1973  &"VARIABLE NAME: "//trim(name))
1974 
1975  var => new_var()
1976 
1977  var%VARID = -1
1978  var%VARNAME = trim(name)
1979  var%xtype = nf90_char
1980  var%scl_chr => values
1981  var => add(var,copy_dim(dim1))
1982  IF(present(dim2)) THEN
1983  if(.NOT. ASSOCIATED(dim2)) CALL fatal_error &
1984  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE ASSOCIATED",&
1985  &"ERROR MAKING VARIABLE: "//trim(name))
1986 
1987  IF(.NOT. dim2%UNLIMITED) CALL fatal_error &
1988  & ("NC_MAKE_PVAR: WHEN MAKING CHARACTER DATA, THE LAST DIMENSION",&
1989  & "MUST BE THE UNLIMITED DIMENSION",&
1990  & "VARIABLE NAME: "//trim(name))
1991 
1992  var => add(var,copy_dim(dim2))
1993  END IF
1994 
1995  if(dbg_set(dbg_sbr)) &
1996  & write(ipt,*) "END NC_MAKE_PVAR_SCL_CHR"

◆ nc_make_pvar_scl_dbl()

type(ncvar) function, pointer mod_nctools::nc_make_pvar::nc_make_pvar_scl_dbl ( character(len=*), intent(in)  NAME,
real(dp), intent(in), pointer  VALUES,
type(ncdim), optional, pointer  DIM1 
)

Definition at line 2060 of file mod_nctools.f90.

2060  IMPLICIT NONE
2061  TYPE(NCVAR), POINTER :: VAR
2062  TYPE(NCDIM), OPTIONAL, POINTER :: DIM1
2063  character(len=*), intent(in) :: name
2064  REAL(DP), POINTER, intent(in) :: values
2065  if(dbg_set(dbg_sbr)) &
2066  & write(ipt,*) "START NC_MAKE_PVAR_SCL_DBL"
2067 
2068  IF(.NOT. ASSOCIATED(values)) CALL fatal_error &
2069  & ("NC_MAKE_PVAR: VALUES ARGUMENT MUST ALREADY BE ASSOCIATED!",&
2070  & "ERROR MAKING VARIABLE: "//trim(name))
2071 
2072  var => new_var()
2073 
2074  var%VARID = -1
2075  var%VARNAME = trim(name)
2076  var%xtype = nf90_double
2077  var%scl_dbl => values
2078  IF(present(dim1)) THEN
2079  if(.NOT. ASSOCIATED(dim1)) CALL fatal_error &
2080  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2081  &"ERROR MAKING VARIABLE: "//trim(name))
2082  if(.NOT. dim1%UNLIMITED) CALL fatal_error &
2083  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE UNLIMITED (TIME)",&
2084  &"ERROR MAKING VARIABLE: "//trim(name))
2085  var => add(var,copy_dim(dim1))
2086  END IF
2087 
2088  if(dbg_set(dbg_sbr)) &
2089  & write(ipt,*) "END NC_MAKE_PVAR_SCL_DBL"

◆ nc_make_pvar_scl_flt()

type(ncvar) function, pointer mod_nctools::nc_make_pvar::nc_make_pvar_scl_flt ( character(len=*), intent(in)  NAME,
real(spa), intent(in), pointer  VALUES,
type(ncdim), optional, pointer  DIM1 
)

Definition at line 2308 of file mod_nctools.f90.

2308  IMPLICIT NONE
2309  TYPE(NCVAR), POINTER :: VAR
2310  TYPE(NCDIM), OPTIONAL, POINTER :: DIM1
2311  character(len=*), intent(in) :: name
2312  REAL(SPA), POINTER, intent(in) :: values
2313  if(dbg_set(dbg_sbr)) &
2314  & write(ipt,*) "START NC_MAKE_PVAR_SCL_FLT"
2315 
2316  IF(.NOT. ASSOCIATED(values)) CALL fatal_error &
2317  & ("NC_MAKE_PVAR: VALUES ARGUMENT MUST ALREADY BE ASSOCIATED!",&
2318  & "ERROR MAKING VARIABLE: "//trim(name))
2319 
2320  var => new_var()
2321 
2322  var%VARID = -1
2323  var%VARNAME = trim(name)
2324  var%xtype = nf90_float
2325  var%scl_flt => values
2326  IF(present(dim1)) THEN
2327  if(.NOT. ASSOCIATED(dim1)) CALL fatal_error &
2328  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2329  &"ERROR MAKING VARIABLE: "//trim(name))
2330  if(.NOT. dim1%UNLIMITED) CALL fatal_error &
2331  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE UNLIMITED (TIME)",&
2332  &"ERROR MAKING VARIABLE: "//trim(name))
2333  var => add(var,copy_dim(dim1))
2334  END IF
2335 
2336  if(dbg_set(dbg_sbr)) &
2337  & write(ipt,*) "END NC_MAKE_PVAR_SCL_FLT"

◆ nc_make_pvar_scl_int()

type(ncvar) function, pointer mod_nctools::nc_make_pvar::nc_make_pvar_scl_int ( character(len=*), intent(in)  NAME,
integer, intent(in), pointer  VALUES,
type(ncdim), optional, pointer  DIM1 
)

Definition at line 2554 of file mod_nctools.f90.

2554  IMPLICIT NONE
2555  TYPE(NCVAR), POINTER :: VAR
2556  TYPE(NCDIM), OPTIONAL, POINTER :: DIM1
2557  character(len=*), intent(in) :: name
2558  INTEGER, POINTER, intent(in) :: values
2559  if(dbg_set(dbg_sbr)) &
2560  & write(ipt,*) "START NC_MAKE_PVAR_SCL_INT"
2561 
2562  IF(.NOT. ASSOCIATED(values)) CALL fatal_error &
2563  & ("NC_MAKE_PVAR: VALUES ARGUMENT MUST ALREADY BE ASSOCIATED!",&
2564  & "ERROR MAKING VARIABLE: "//trim(name))
2565 
2566  var => new_var()
2567 
2568  var%VARID = -1
2569  var%VARNAME = trim(name)
2570  var%xtype = nf90_int
2571  var%scl_int => values
2572  IF(present(dim1)) THEN
2573  if(.NOT. ASSOCIATED(dim1)) CALL fatal_error &
2574  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2575  &"ERROR MAKING VARIABLE: "//trim(name))
2576  if(.NOT. dim1%UNLIMITED) CALL fatal_error &
2577  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE UNLIMITED (TIME)",&
2578  &"ERROR MAKING VARIABLE: "//trim(name))
2579  var => add(var,copy_dim(dim1))
2580  END IF
2581 
2582  if(dbg_set(dbg_sbr)) &
2583  & write(ipt,*) "END NC_MAKE_PVAR_SCL_INT"

◆ nc_make_pvar_vec_chr()

type(ncvar) function, pointer mod_nctools::nc_make_pvar::nc_make_pvar_vec_chr ( character(len=*), intent(in)  NAME,
character(len=80), dimension(:), intent(in), pointer  VALUES,
type(ncdim), pointer  DIM1,
type(ncdim), pointer  DIM2,
type(ncdim), optional, pointer  DIM3 
)

Definition at line 2001 of file mod_nctools.f90.

2001  IMPLICIT NONE
2002  TYPE(NCVAR), POINTER :: VAR
2003  TYPE(NCDIM), POINTER :: DIM1 ! MUST BE STR LENGTH
2004  TYPE(NCDIM), POINTER :: DIM2 ! Number of strings
2005  TYPE(NCDIM), OPTIONAL, POINTER :: DIM3 ! IF PRESENT THIS MUST BE UNLIMITED
2006  character(len=*), intent(in) :: name
2007  character(len=80), POINTER, intent(in) :: values(:)
2008  if(dbg_set(dbg_sbr)) &
2009  & write(ipt,*) "START NC_MAKE_PVAR_VEC_CHR"
2010 
2011  IF(.NOT. ASSOCIATED(values)) CALL fatal_error &
2012  & ("NC_MAKE_PVAR: VALUES ARGUMENT MUST ALREADY BE ASSOCIATED!",&
2013  & "ERROR MAKING VARIABLE: "//trim(name))
2014 
2015  if(.NOT. ASSOCIATED(dim1)) CALL fatal_error &
2016  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2017  &"ERROR MAKING VARIABLE: "//trim(name))
2018 
2019  if(dim1%UNLIMITED) CALL fatal_error &
2020  & ("NC_MAKE_PVAR: WHEN MAKING CHARACTER DATA, THE FIRST DIMENSION",&
2021  & "MUST BE THE STRING LENGTH. THE LAST DIMENSION (IF PRESENT) MUST BE UNLIMITED",&
2022  &"VARIABLE NAME: "//trim(name))
2023 
2024  if(.NOT. ASSOCIATED(dim2)) CALL fatal_error &
2025  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2026  &"ERROR MAKING VARIABLE: "//trim(name))
2027 
2028 ! if(DIM2%UNLIMITED) CALL WARNING &
2029 ! & ("NC_MAKE_PVAR: WHEN MAKING CHARACTER DATA, THE FIRST DIMENSION",&
2030 ! & "MUST BE THE STRING LENGTH. THE LAST DIMENSION (IF PRESENT) MUST BE UNLIMITED",&
2031 ! &"VARIABLE NAME: "//TRIM(NAME))
2032 
2033  var => new_var()
2034 
2035  var%VARID = -1
2036  var%VARNAME = trim(name)
2037  var%xtype = nf90_char
2038  var%vec_chr => values
2039  var => add(var,copy_dim(dim1))
2040  var => add(var,copy_dim(dim2))
2041  IF(present(dim3)) THEN
2042  if(.NOT. ASSOCIATED(dim3)) CALL fatal_error &
2043  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2044  &"ERROR MAKING VARIABLE: "//trim(name))
2045 
2046  IF(.NOT. dim3%UNLIMITED) CALL fatal_error &
2047  & ("NC_MAKE_PVAR: WHEN MAKING CHARACTER DATA, THE LAST DIMENSION",&
2048  & "MUST BE THE UNLIMITED DIMENSION",&
2049  & "VARIABLE NAME: "//trim(name))
2050 
2051  var => add(var,copy_dim(dim3))
2052  END IF
2053 
2054  if(dbg_set(dbg_sbr)) &
2055  & write(ipt,*) "END NC_MAKE_PVAR_VEC_CHR"

◆ nc_make_pvar_vec_dbl()

type(ncvar) function, pointer mod_nctools::nc_make_pvar::nc_make_pvar_vec_dbl ( character(len=*), intent(in)  NAME,
real(dp), dimension(:), intent(in), pointer  VALUES,
type(ncdim), pointer  DIM1,
type(ncdim), optional, pointer  DIM2 
)

Definition at line 2094 of file mod_nctools.f90.

2094  IMPLICIT NONE
2095  TYPE(NCVAR), POINTER :: VAR
2096  TYPE(NCDIM), POINTER :: DIM1
2097  TYPE(NCDIM), OPTIONAL, POINTER :: DIM2
2098  character(len=*), intent(in) :: name
2099  REAL(DP), POINTER, intent(in) :: values(:)
2100  if(dbg_set(dbg_sbr)) &
2101  & write(ipt,*) "START NC_MAKE_PVAR_VEC_DBL"
2102 
2103  IF(.NOT. ASSOCIATED(values)) CALL fatal_error &
2104  & ("NC_MAKE_PVAR: VALUES ARGUMENT MUST ALREADY BE ASSOCIATED!",&
2105  & "ERROR MAKING VARIABLE: "//trim(name))
2106  if(.NOT. ASSOCIATED(dim1)) CALL fatal_error &
2107  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2108  &"ERROR MAKING VARIABLE: "//trim(name))
2109 ! if(DIM1%UNLIMITED) CALL FATAL_ERROR &
2110 ! & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2111 ! &"ERROR MAKING VARIABLE: "//TRIM(NAME))
2112 
2113 
2114  var => new_var()
2115 
2116  var%VARID = -1
2117  var%VARNAME = trim(name)
2118  var%xtype = nf90_double
2119  var%vec_dbl => values
2120  var => add(var,copy_dim(dim1))
2121  if(present(dim2)) then
2122  if(.NOT. ASSOCIATED(dim2)) CALL fatal_error &
2123  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2124  &"ERROR MAKING VARIABLE: "//trim(name))
2125  if(.NOT. dim2%UNLIMITED) CALL fatal_error &
2126  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE UNLIMITED (TIME)",&
2127  &"ERROR MAKING VARIABLE: "//trim(name))
2128  var => add(var,copy_dim(dim2))
2129  end if
2130 
2131  if(dbg_set(dbg_sbr)) &
2132  & write(ipt,*) "END NC_MAKE_PVAR_VEC_DBL"

◆ nc_make_pvar_vec_flt()

type(ncvar) function, pointer mod_nctools::nc_make_pvar::nc_make_pvar_vec_flt ( character(len=*), intent(in)  NAME,
real(spa), dimension(:), intent(in), pointer  VALUES,
type(ncdim), pointer  DIM1,
type(ncdim), optional, pointer  DIM2 
)

Definition at line 2342 of file mod_nctools.f90.

2342  IMPLICIT NONE
2343  TYPE(NCVAR), POINTER :: VAR
2344  TYPE(NCDIM), POINTER :: DIM1
2345  TYPE(NCDIM), OPTIONAL, POINTER :: DIM2
2346  character(len=*), intent(in) :: name
2347  REAL(SPA), POINTER, intent(in) :: values(:)
2348  if(dbg_set(dbg_sbr)) &
2349  & write(ipt,*) "START NC_MAKE_PVAR_VEC_FLT"
2350 
2351  IF(.NOT. ASSOCIATED(values)) CALL fatal_error &
2352  & ("NC_MAKE_PVAR: VALUES ARGUMENT MUST ALREADY BE ASSOCIATED!",&
2353  & "ERROR MAKING VARIABLE: "//trim(name))
2354  if(.NOT. ASSOCIATED(dim1)) CALL fatal_error &
2355  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2356  &"ERROR MAKING VARIABLE: "//trim(name))
2357 ! if(DIM1%UNLIMITED) CALL WARNING &
2358 ! & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2359 ! &"ERROR MAKING VARIABLE: "//TRIM(NAME))
2360  var => new_var()
2361 
2362  var%VARID = -1
2363  var%VARNAME = trim(name)
2364  var%xtype = nf90_float
2365  var%vec_flt => values(1:)
2366  var => add(var,copy_dim(dim1))
2367  if(present(dim2)) then
2368  if(.NOT. ASSOCIATED(dim2)) CALL fatal_error &
2369  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2370  &"ERROR MAKING VARIABLE: "//trim(name))
2371  if(.NOT. dim2%UNLIMITED) CALL fatal_error &
2372  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE UNLIMITED (TIME)",&
2373  &"ERROR MAKING VARIABLE: "//trim(name))
2374  var => add(var,copy_dim(dim2))
2375  end if
2376 
2377  if(dbg_set(dbg_sbr)) &
2378  & write(ipt,*) "END NC_MAKE_PVAR_VEC_FLT"

◆ nc_make_pvar_vec_int()

type(ncvar) function, pointer mod_nctools::nc_make_pvar::nc_make_pvar_vec_int ( character(len=*), intent(in)  NAME,
integer, dimension(:), intent(in), pointer  VALUES,
type(ncdim), pointer  DIM1,
type(ncdim), optional, pointer  DIM2 
)

Definition at line 2588 of file mod_nctools.f90.

2588  IMPLICIT NONE
2589  TYPE(NCVAR), POINTER :: VAR
2590  TYPE(NCDIM), POINTER :: DIM1
2591  TYPE(NCDIM), OPTIONAL, POINTER :: DIM2
2592  character(len=*), intent(in) :: name
2593  INTEGER, POINTER, intent(in) :: values(:)
2594  if(dbg_set(dbg_sbr)) &
2595  & write(ipt,*) "START NC_MAKE_PVAR_VEC_INT"
2596 
2597  IF(.NOT. ASSOCIATED(values)) CALL fatal_error &
2598  & ("NC_MAKE_PVAR: VALUES ARGUMENT MUST ALREADY BE ASSOCIATED!",&
2599  & "ERROR MAKING VARIABLE: "//trim(name))
2600  if(.NOT. ASSOCIATED(dim1)) CALL fatal_error &
2601  & ("NC_MAKE_PVAR: THE DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2602  &"ERROR MAKING VARIABLE: "//trim(name))
2603 ! if(DIM1%UNLIMITED) CALL WARNING &
2604 ! & ("NC_MAKE_PVAR: NON-OPTIONAL DIMENSION ARGUMENT MUST BE NOT BE UNLIMITED (TIME)",&
2605 ! &"ERROR MAKING VARIABLE: "//TRIM(NAME))
2606  var => new_var()
2607 
2608  var%VARID = -1
2609  var%VARNAME = trim(name)
2610  var%xtype = nf90_int
2611  var%vec_int => values
2612  var => add(var,copy_dim(dim1))
2613  if(present(dim2)) then
2614  if(.NOT. ASSOCIATED(dim2)) CALL fatal_error &
2615  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE ASSOCIATED",&
2616  &"ERROR MAKING VARIABLE: "//trim(name))
2617  if(.NOT. dim2%UNLIMITED) CALL fatal_error &
2618  & ("NC_MAKE_PVAR: OPTIONAL DIMENSION ARGUMENT MUST BE UNLIMITED (TIME)",&
2619  &"ERROR MAKING VARIABLE: "//trim(name))
2620  var => add(var,copy_dim(dim2))
2621  end if
2622 
2623  if(dbg_set(dbg_sbr)) &
2624  & write(ipt,*) "END NC_MAKE_PVAR_VEC_INT"

The documentation for this interface was generated from the following file: