/[ascend]/trunk/models/test/blackbox/bbox3.a4c
ViewVC logotype

Diff of /trunk/models/test/blackbox/bbox3.a4c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1036 by johnpye, Thu Jan 4 01:51:38 2007 UTC revision 1037 by johnpye, Thu Jan 4 08:11:55 2007 UTC
# Line 3  REQUIRE "basemodel.a4l"; Line 3  REQUIRE "basemodel.a4l";
3  IMPORT "test/blackbox/bboxtest"; (* yi = coef*xi test *)  IMPORT "test/blackbox/bboxtest"; (* yi = coef*xi test *)
4    
5  MODEL bbox3;  MODEL bbox3;
   
6      coef IS_A real_constant;      coef IS_A real_constant;
7      n IS_A integer_constant;      n IS_A integer_constant;
8      coef :== 2.0;      coef :== 2.0;
# Line 11  MODEL bbox3; Line 10  MODEL bbox3;
10    
11      x[1..n], y[1..n] IS_A generic_real;      x[1..n], y[1..n] IS_A generic_real;
12    
13      bbox: bboxtest( x[1..n] : INPUT ;      bbox: bboxtest(
14                          y[1..n] : OUTPUT ;          x[1..n] : INPUT ;
15                          coef : DATA);          y[1..n] : OUTPUT ;
16            coef : DATA
17        );
18            
19  METHODS  METHODS
20        METHOD default_all;
21  METHOD default_all;          RUN default_self;
22      RUN default_self;      END default_all;
23  END default_all;      METHOD default_self;
24  METHOD default_self;          FOR i IN [1..n] DO
25      FOR i IN [1..n] DO              x[i] := 1+i;
26          x[i] := 1+i;              y[i] := -x[i];
27          y[i] := -x[i];          END FOR;
28      END FOR;      END default_self;
29  END default_self;  
30        METHOD on_load;
31  METHOD on_load;          RUN reset;
32      RUN reset;          RUN default_all;
33      RUN default_all;      END on_load;
34  END on_load;  
35        METHOD specify;
36  METHOD self_test;          y[1..n].fixed := FALSE;
37      FOR i IN [1..n] DO          x[1..n].fixed := TRUE;
38          ASSERT y[1] == coef * x[1];      END specify;
39      END FOR;  
40  END self_test;      METHOD specify_reverse;
41            x[1..n].fixed := FALSE;
42  METHOD specify;          y[1..n].fixed := TRUE;
43      y[1..n].fixed := FALSE;      END specify_reverse;
44      x[1..n].fixed := TRUE;  
45  END specify;      METHOD self_test;
46            FOR i IN [1..n] DO
47  METHOD specify_reverse;              ASSERT y[i] = coef*x[i];
48      x[1..n].fixed := FALSE;          END FOR;
49      y[1..n].fixed := TRUE;      END self_test;
 END specify_reverse;  
50  END bbox3;  END bbox3;

Legend:
Removed from v.1036  
changed lines
  Added in v.1037

john.pye@anu.edu.au
ViewVC Help
Powered by ViewVC 1.1.22