#
# u2d5.rb
# $Id: u2d5.rb,v 1.2 2000/11/18 19:03:46 keiko Exp $
#
require "narray"
require "numru/dcl"
include NumRu
include Math
nx = 37
ny = 37
xmin = 0
xmax = 360
ymin = -90
ymax = 90
drad = PI/180
p = NArray.new(Float, nx, ny)
#-- data ---
for j in 0..ny-1
for i in 0..nx-1
alon = (xmin + (xmax-xmin)*i/(nx-1)) * drad
alat = (ymin + (ymax-ymin)*j/(ny-1)) * drad
slat = sin(alat)
p[i,j] = 3*sqrt(1-slat**2)*slat*cos(alon) - 0.5*(3*slat**2-1)
end
end
#-- graph ---
iws = (ARGV[0] || (puts ' WORKSTATION ID (I) ? ;'; DCL::sgpwsn; gets)).to_i
DCL::gropn iws
DCL::sglset('LSOFTF', true)
DCL::grfrm
DCL::grswnd(xmin, xmax, ymin, ymax)
DCL::grsvpt(0.2, 0.8, 0.2, 0.8)
DCL::grstrn(1)
DCL::grstrf
for k in -5..3
tlev1 = 0.4*k
tlev2 = tlev1 + 0.4
if (k <= -1)
ipat = 600 + (k+1).abs
else
ipat = 30 + k
end
DCL::uestlv(tlev1, tlev2, ipat)
end
DCL::usdaxs
DCL::udgclb(p, 0.4)
DCL::udcntr(p)
DCL::uetone(p)
DCL::grcls
syntax highlighted by Code2HTML, v. 0.9.1