path = "../gallery/"
map = %w(cylindrical orthographic orthographic-polar)
#map = %w(cylindrical mollweide azimuthal-eq-area)

def test(o,g,u)
  if u=="1"
    if g=="inf"
      return false
    end
    if g==5 && o==1000
      return false
    end
  elsif u=="sqrt2"
    if g==5
      if o==0 || o==25 || o==50 || o==200 || o==400 || o==1000
        return false
      end
    end
  end
  return true
end

[0,25,50,100,200,400,1000,4000].each do |i|
  [5,10,100,1000,10000,"inf"].each do |j|
    %w(1 sqrt2).each do |k|
      next unless test(i,j,k)
      %w(u-xm ucos-xm uhcos-xm).each do |v|
        next if j=="inf" && v=="uhcos-xm"
        png = "#{path}#{v}_time-lat_Omega#{i}_G#{j}_U#{k}.png"
        next if File.exist?(png)
        p png
        com = "xvfb-run ruby timelat.rb #{v} #{i} #{j} #{k} -png"
        if system(com)
          File.rename("dcl_001.png",png)
        end
      end

      unless j=="inf"
      v = %w(energy enstrophy)
      png = Array.new(2)
      png.length.times do |n|
        png[n] = "#{path}#{v[n]}_time_Omega#{i}_G#{j}_U#{k}.png"
      end
      next if File.exist?(png[0])
      p png
      com = "xvfb-run ruby time.rb #{i} #{j} #{k} -png"
      if system(com)
        png.length.times do |n|
          File.rename("dcl_00#{n+1}.png",png[n])
        end
      end
      end
      
      %w(vor potvor div hsfc strfunc velpot).each do |v|
        next if j=="inf" && (v=="potvor"||v=="div"||v=="hsfc"||v=="velpot")
        png = Array.new(3)
        png.length.times do |n|
          png[n] = "#{path}#{v}_lon-lat_#{map[n]}_Omega#{i}_G#{j}_U#{k}.png"
        end
        next if File.exist?(png[0])
        p png
        com = "xvfb-run ruby lonlat.rb #{v} #{i} #{j} #{k} -png"
        if system(com)
          png.length.times do |n|
            File.rename("dcl_00#{n+1}.png",png[n])
          end
        end
      end
    end
  end
end
