test.t.rast.mapcalc.sh 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. #!/bin/sh
  2. # Test for t.rast.mapcalc
  3. # We need to set a specific region in the
  4. # @preprocess step of this test. We generate
  5. # raster with r.mapcalc and create several space time raster datasets
  6. # The region setting should work for UTM and LL test locations
  7. g.region s=0 n=80 w=0 e=120 b=0 t=50 res=10 res3=10 -p3
  8. r.mapcalc --o expr="prec_1 = rand(0, 550)"
  9. r.mapcalc --o expr="prec_2 = rand(0, 450)"
  10. r.mapcalc --o expr="prec_3 = rand(0, 320)"
  11. r.mapcalc --o expr="prec_4 = rand(0, 510)"
  12. r.mapcalc --o expr="prec_5 = rand(0, 300)"
  13. r.mapcalc --o expr="prec_6 = rand(0, 650)"
  14. t.create --o type=strds temporaltype=absolute output=precip_abs1 title="A test" descr="A test"
  15. t.create --o type=strds temporaltype=absolute output=precip_abs2 title="A test" descr="A test"
  16. t.register -i --o type=rast input=precip_abs1 maps=prec_1,prec_2,prec_3,prec_4,prec_5,prec_6 start="2001-01-01" increment="3 months"
  17. t.register --o type=rast input=precip_abs2 maps=prec_1,prec_2,prec_3,prec_4,prec_5,prec_6
  18. t.info precip_abs1
  19. t.info precip_abs2
  20. # The first @test
  21. t.rast.mapcalc --o -n inputs=precip_abs1,precip_abs2 output=precip_abs3 \
  22. expression=" precip_abs1 + precip_abs2" base=new_prec \
  23. method=equal nprocs=5
  24. t.info type=strds input=precip_abs3
  25. t.rast.mapcalc --o -s inputs=precip_abs1,precip_abs2,precip_abs3 output=precip_abs4 \
  26. expression=" (precip_abs1 + precip_abs2) / precip_abs2" base=new_prec \
  27. method=equal nprocs=5
  28. t.info type=strds input=precip_abs4
  29. t.rast.mapcalc --o -s inputs=precip_abs1,precip_abs2 output=precip_abs4 \
  30. expression=" (precip_abs1 + precip_abs2) * null()" base=new_prec \
  31. method=equal nprocs=5
  32. t.info type=strds input=precip_abs4
  33. t.rast.mapcalc --o -sn inputs=precip_abs1,precip_abs2 output=precip_abs4 \
  34. expression=" (precip_abs1 + precip_abs2) * null()" base=new_prec \
  35. method=equal nprocs=5
  36. t.info type=strds input=precip_abs4
  37. # @postprocess
  38. t.unregister type=rast maps=prec_1,prec_2,prec_3,prec_4,prec_5,prec_6
  39. t.unregister type=rast maps=new_prec_1,new_prec_2,new_prec_3,new_prec_4,new_prec_5,new_prec_6
  40. t.remove type=strds input=precip_abs1,precip_abs2,precip_abs3,precip_abs4