1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65
|
#!/usr/bin/env bash
# Test the gmt vector application
cat << EOF > vec2d.txt
2.5 1
1.5 1
1 1
0.5 1
-1.5 1
EOF
cat << EOF > vec3d.txt
2.5 1 0.5
1.5 1 1.2
1 1 -0.5
0.5 1 2.0
-1.5 1 0.0
EOF
cat << EOF > vecg.txt
0 0
0 90
135 45
-30 -60
EOF
# Use fixed format floats (number of digits of default %lg is unpredictable)
gmt set FORMAT_FLOAT_OUT "%.6e"
# Normalize the 2-D vectors
echo "# gmtvector vec2d.txt -C -N" > result
gmt vector vec2d.txt -C -N >> result
# Normalize the 3-D vectors
echo "# gmtvector vec3d.txt -C -N" >> result
gmt vector vec3d.txt -C -N >> result
# Angles between 2-D vectors and (1,0)
echo "# gmtvector vec3d.txt -C -TD -S1/0" >> result
gmt vector vec3d.txt -C -TD -S1/0 >> result
# Angles between 3-D vectors and (0,0,1)
echo "# gmtvector vec3d.txt -C -TD -S0/0/1" >> result
gmt vector vec3d.txt -C -TD -S0/0/1 >> result
# Angles between geographic vectors and (0,0)
echo "# gmtvector vecg.txt -TD -S0/0 -fg" >> result
gmt vector vecg.txt -TD -S0/0 -fg >> result
# Mean 2-D vectors
echo "# gmtvector vec2d.txt -Am -C" >> result
gmt vector vec2d.txt -Am -C >> result
# Mean 3-D vectors
echo "# gmtvector vec3d.txt -Am -C" >> result
gmt vector vec3d.txt -Am -C >> result
# Mean geo vectors
echo "# gmtvector vecg.txt -Am -fg -E" >> result
gmt vector vecg.txt -Am -fg -E >> result
# Convert 2-D Cartesian to polar r/theta
echo "# gmtvector -A1/1 -Ci" >> result
gmt vector -A1/1 -Ci >> result
# Convert 3-D Cartesian to geographic
echo "# gmtvector -A0.61237/0.61237/0.5 -Ci -fg" >> result
gmt vector -A0.612372436/0.612372436/0.5 -Ci -fg >> result
# 3-D cross product
echo "# gmtvector -A1/1/0 -S0/0/1 -Tx -C" >> result
gmt vector -A1/1/0 -S0/0/1 -Tx -C >> result
# Bisector pole
echo "# gmtvector -A30/30 -S-30/-30 -Tb -fg" >> result
gmt vector -A30/30 -S-30/-30 -Tb -fg >> result
diff -q --strip-trailing-cr result "${src:-.}"/result > fail
|