source: vendor/bash/3.1-p17/tests/misc/perf-script

Last change on this file was 3228, checked in by bird, 18 years ago

bash 3.1

File size: 1.2 KB
Line 
1#!/bin/bash
2
3typeset -i m2 m1 M n2 n1 N m n
4typeset -i MM=5 NN=5
5
6case $# in
7 0) :
8 ;;
9 1) MM=$1; NN=$1
10 ;;
11 2) MM=$1; NN=$2
12 ;;
13 *) echo 1>&2 "Usage: $0 [m [n]]"
14 ;;
15esac
16
17EMPTYLINE=: # echo
18echo 'a = { ' # mathematica
19
20let "M=1" # for (M=1; M<=MM; M++)
21while let "M <= MM"; do
22 let "N=1" # for (N=1; N<=NN; N++)
23 while let "N <= NN"; do
24
25 let "m1 = M - 1"
26 let "m2 = M + 1"
27 let "n1 = N - 1"
28 let "n2 = N + 1"
29
30
31 echo -n '{ ' # math
32 let "m=1" # for(m=1; m<=MM; m++)
33 while let "m <= MM"; do
34 let "n=1" # for(n=1; n<=NN; n++)
35 while let "n <= NN"; do
36
37 let "x = (m-m1)*(m-M)*(m-m2)"
38 let "y = (n-n1)*(n-N)*(n-n2)"
39
40 if let "(x*x + (n-N)*(n-N)) * ((m-M)*(m-M) + y*y)"; then
41 echo -n "0,"
42 else # neighbour
43 echo -n "1,"
44 fi
45
46 let "n=n+1"
47 done
48 echo -n " "; let "m=m+1" # ". "
49 done
50 echo '},'
51
52
53 let "N=N+1"
54 $EMPTYLINE
55 done
56 $EMPTYLINE
57 let "M=M+1"
58done
59
60echo '}'
61
62
63
64echo -n 'o = { '
65let "m=1"
66while let "m <= MM"; do
67 let "n=1"
68 while let "n <= NN"; do
69 echo -n "1,"
70 let "n=n+1"
71 done
72 let "m=m+1"
73done
74echo " }"
75
76
77echo 'x = LinearSolve[a,o] '
78
79exit 0
80
81
Note: See TracBrowser for help on using the repository browser.