#! /usr/bin/env ruby

require "numru/netcdf"
module NumRu
  class NetCDFVar
    alias put scaled_put
    alias get scaled_get
  end
end

require "numru/ggraph"
include NumRu


p a = Time.now

def bunkatu(file)
  p file

  srcnc = NetCDF.new(file, "r")
p  var = srcnc.var_names[-1]

  p output1 = "s."+file
  p output2 = "c."+file

  p "---------------------------------------------"

  p gphys = GPhys::NetCDF_IO.open(file, var)
  
  gpdiff = gphys.cut('levelist'=>1..7)
  gpmain = gphys.cut('levelist'=>10..1000)
  
  #------------- main ------------------
  
  outfile1 = NetCDF.create(output1)
  GPhys::NetCDF_IO.write( outfile1, gpdiff)
  srcnc.each_att{|i|
    i.copy(outfile1)
  }
  outfile1.close
  
  outfile2 = NetCDF.create(output2)
  GPhys::NetCDF_IO.write( outfile2, gpmain)
  srcnc.each_att{|i|
    i.copy(outfile2)
  }
  outfile2.close
  
  srcnc.close

end 

files = [
  "V.2001.01-06.nc", "V.2001.07-12.nc",
  "W.2001.01-06.nc", "W.2001.07-12.nc",
]

files.each do |file|
  bunkatu(file)
end

p Time.now - a
