9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% % Version control history
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% % $Id$
% % $Log$
% % Revision 1.6 2000/08/25 09:23:40 peterg
% % Made both names the same!
% %
% % Revision 1.5 2000/08/24 17:12:01 peterg
% % Now optimises using SCOPE
% %
% % Revision 1.4 1998/07/27 17:34:59 peterg
|
>
>
>
>
>
|
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% % Version control history
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% % $Id$
% % $Log$
% % Revision 1.7 2000/08/29 17:33:59 peterg
% % After much fiddling about ..
% % now does global optimisation (over all elements of matrix / vector)
% % still fails for _sm.m
% %
% % Revision 1.6 2000/08/25 09:23:40 peterg
% % Made both names the same!
% %
% % Revision 1.5 2000/08/24 17:12:01 peterg
% % Now optimises using SCOPE
% %
% % Revision 1.4 1998/07/27 17:34:59 peterg
|
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
66
67
|
% %
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PROCEDURE Lang_Matrix();
BEGIN
FOR row := 1:MTT_Matrix_n DO
BEGIN
IF MTT_Matrix_m>1 THEN
BEGIN
FOR col := 1:MTT_Matrix_m DO
BEGIN
IF (row EQ 1) AND (col EQ 1) THEN DELAYOPTS;
INAME(mtt_o); % Set temp name
gentran declare mtt_matrix_element:REAL;
gentran declare mtt_matrix:REAL;
mtt_matrix_element := mtt_matrix(row,col);
GENTRAN mtt_matrix(row,col) ::=: mtt_matrix_element;
IF (row EQ MTT_matrix_n) AND (col EQ MTT_Matrix_m) THEN MAKEOPTS;
END;
END
ELSE
BEGIN
IF (row EQ 1) THEN DELAYOPTS;
INAME(mtt_o); % Set temp name
GENTRAN mtt_matrix(row) ::=: mtt_matrix(row,1);
IF (row EQ MTT_matrix_n) THEN MAKEOPTS;
END;
END
END;
END;;
|
>
>
>
|
|
|
|
|
|
|
|
>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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
66
67
68
69
70
71
72
73
74
75
76
|
% %
% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
PROCEDURE Lang_Matrix();
BEGIN
%INAME(mtt_o); % Set temp name
GENTRAN mtt_matrix :=: mtt_matrix;
% FOR row := 1:MTT_Matrix_n DO
% BEGIN
% IF MTT_Matrix_m>1 THEN
% BEGIN
% FOR col := 1:MTT_Matrix_m DO
% BEGIN
% IF (row EQ 1) AND (col EQ 1) THEN DELAYOPTS;
% INAME(mtt_o); % Set temp name
% %SETLENGTH(2); % Adjust optimisation
% gentran declare mtt_matrix_element:REAL;
% gentran declare mtt_matrix:REAL;
% mtt_matrix_element := mtt_matrix(row,col);
% GENTRAN mtt_matrix(row,col) ::=: mtt_matrix_element;
% IF (row EQ MTT_matrix_n) AND (col EQ MTT_Matrix_m) THEN MAKEOPTS;
% END;
% END
% ELSE
% BEGIN
% IF (row EQ 1) THEN DELAYOPTS;
% INAME(mtt_o); % Set temp name
% GENTRAN mtt_matrix(row) ::=: mtt_matrix(row,1);
% IF (row EQ MTT_matrix_n) THEN MAKEOPTS;
% END;
% END
END;
END;;
|