xref: /petsc/src/tao/leastsquares/tutorials/matlab/more_wild_probs/g_dfovec_1d.m (revision c20d77252dee0f9c80fc6f8b1a6f948e11175edb)
1% Generated by ADiMat 0.5.6-2502
2% Copyright 2009, 2010 Johannes Willkomm, Institute for Scientific Computing,
3% Copyright 2001- 2008 Andre Vehreschild, Institute for Scientific Computing,
4% RWTH Aachen University, 52056 Aachen, Germany.
5% Visit us on the web at http://sc.rwth-aachen.de/adimat
6% Report bugs to willkomm@sc.rwth-aachen.de
7%
8%
9%                             DISCLAIMER
10%
11% ADiMat was prepared as part of an employment at the Institute
12% for Scientific Computing, RWTH Aachen University, Germany and is
13% provided AS IS. NEITHER THE AUTHOR(S), THE GOVERNMENT OF THE FEDERAL
14% REPUBLIC OF GERMANY NOR ANY AGENCY THEREOF, NOR THE RWTH AACHEN UNIVERSITY,
15% INCLUDING ANY OF THEIR EMPLOYEES OR OFFICERS, MAKES ANY WARRANTY,
16% EXPRESS OR IMPLIED, OR ASSUMES ANY LEGAL LIABILITY OR RESPONSIBILITY
17% FOR THE ACCURACY, COMPLETENESS, OR USEFULNESS OF ANY INFORMATION OR
18% PROCESS DISCLOSED, OR REPRESENTS THAT ITS USE WOULD NOT INFRINGE
19% PRIVATELY OWNED RIGHTS.
20%
21% Global flags were:
22% HYBRIDMODE -- Apply hybrid mode to differentiate the files.
23% NOOPEROPTIM -- Do not use optimized operators. I.e.:
24%		 g_a*b*g_c -/-> mtimes3(g_a, b, g_c)
25% FUNCMODE    -- Inputfile is a function (This flag can not be set explicitly).
26% Unknown flag (cat: 01)!
27% Unknown flag (cat: 01)!
28% VERBOSITYLEVEL=10
29% AD_IVARS= t
30% AD_DVARS= fvec
31
32function [g_fvec, fvec]= g_dfovec_1d(g_t, t, ind, m, n, g_x, x, nprob)
33   %     This is based on a modified (evaluates along the coordinate
34   %     direction for coordinate ind) version of dfovec.m
35   %     See jacobian.m for help/comments.
36
37   % Set lots of constants:
38   c13= 1.3d1; c14= 1.4d1; c29= 2.9d1; c45= 4.5d1;
39   v= [4.0d0, 2.0d0, 1.0d0, 5.0d-1, 2.5d-1, 1.67d-1, 1.25d-1, 1.0d-1, 8.33d-2, 7.14d-2, 6.25d-2];
40   y1= [1.4d-1, 1.8d-1, 2.2d-1, 2.5d-1, 2.9d-1, 3.2d-1, 3.5d-1, 3.9d-1, 3.7d-1, 5.8d-1, 7.3d-1, 9.6d-1, 1.34d0, 2.1d0, 4.39d0];
41   y2= [1.957d-1, 1.947d-1, 1.735d-1, 1.6d-1, 8.44d-2, 6.27d-2, 4.56d-2, 3.42d-2, 3.23d-2, 2.35d-2, 2.46d-2];
42   y3= [3.478d4, 2.861d4, 2.365d4, 1.963d4, 1.637d4, 1.372d4, 1.154d4, 9.744d3, 8.261d3, 7.03d3, 6.005d3, 5.147d3, 4.427d3, 3.82d3, 3.307d3, 2.872d3];
43   y4= [8.44d-1, 9.08d-1, 9.32d-1, 9.36d-1, 9.25d-1, 9.08d-1, 8.81d-1, 8.5d-1, 8.18d-1, 7.84d-1, 7.51d-1, 7.18d-1, 6.85d-1, 6.58d-1, 6.28d-1, 6.03d-1, 5.8d-1, 5.58d-1, 5.38d-1, 5.22d-1, 5.06d-1, 4.9d-1, 4.78d-1, 4.67d-1, 4.57d-1, 4.48d-1, 4.38d-1, 4.31d-1, 4.24d-1, 4.2d-1, 4.14d-1, 4.11d-1, 4.06d-1];
44   y5= [1.366d0, 1.191d0, 1.112d0, 1.013d0, 9.91d-1, 8.85d-1, 8.31d-1, 8.47d-1, 7.86d-1, 7.25d-1, 7.46d-1, 6.79d-1, 6.08d-1, 6.55d-1, 6.16d-1, 6.06d-1, 6.02d-1, 6.26d-1, 6.51d-1, 7.24d-1, 6.49d-1, 6.49d-1, 6.94d-1, 6.44d-1, 6.24d-1, 6.61d-1, 6.12d-1, 5.58d-1, 5.33d-1, 4.95d-1, 5.0d-1, 4.23d-1, 3.95d-1, 3.75d-1, 3.72d-1, 3.91d-1, 3.96d-1, 4.05d-1, 4.28d-1, 4.29d-1, 5.23d-1, 5.62d-1, 6.07d-1, 6.53d-1, 6.72d-1, 7.08d-1, 6.33d-1, 6.68d-1, 6.45d-1, 6.32d-1, 5.91d-1, 5.59d-1, 5.97d-1, 6.25d-1, 7.39d-1, 7.1d-1, 7.29d-1, 7.2d-1, 6.36d-1, 5.81d-1, 4.28d-1, 2.92d-1, 1.62d-1, 9.8d-2, 5.4d-2];
45
46   % Initialize things:
47   fvec= zeros(m, 1);
48   g_fvec= zeros(size(fvec));
49   sum= 0;
50   g_sum= zeros(size(sum));
51   g_tmp_x_00000= g_x(ind);
52   tmp_x_00000= x(ind);
53   g_x(ind)= g_tmp_x_00000+ g_t;
54   x(ind)= tmp_x_00000+ t;
55
56   switch nprob
57      case 1
58         for j= 1: n
59            g_tmp_x_00001= g_x(j);
60            tmp_x_00001= x(j);
61            g_tmp_dfovec_1d_00191= g_sum+ g_tmp_x_00001;
62            tmp_dfovec_1d_00191= sum+ tmp_x_00001;
63            % Update detected: sum= some_expression(sum,...)
64            g_sum= g_tmp_dfovec_1d_00191;
65            sum= tmp_dfovec_1d_00191;
66         end
67         g_tmp_dfovec_1d_00000= 2* g_sum;
68         tmp_dfovec_1d_00000= 2* sum;
69         g_tmp_dfovec_1d_00001= (m' \ g_tmp_dfovec_1d_00000' )' ;
70         tmp_dfovec_1d_00001= tmp_dfovec_1d_00000/ m;
71         g_temp= g_tmp_dfovec_1d_00001;
72         temp= tmp_dfovec_1d_00001+ 1;
73         for i= 1: m
74            g_fvec(i)= -g_temp;
75            fvec(i)= -temp;
76            if (i<= n)
77               g_tmp_fvec_00000= g_fvec(i);
78               tmp_fvec_00000= fvec(i);
79               g_tmp_x_00002= g_x(i);
80               tmp_x_00002= x(i);
81               g_fvec(i)= g_tmp_fvec_00000+ g_tmp_x_00002;
82               fvec(i)= tmp_fvec_00000+ tmp_x_00002;
83            end
84         end
85      case 2
86         for j= 1: n
87            g_tmp_x_00003= g_x(j);
88            tmp_x_00003= x(j);
89            g_tmp_dfovec_1d_00002= j* g_tmp_x_00003;
90            tmp_dfovec_1d_00002= j* tmp_x_00003;
91            g_tmp_dfovec_1d_00192= g_sum+ g_tmp_dfovec_1d_00002;
92            tmp_dfovec_1d_00192= sum+ tmp_dfovec_1d_00002;
93            % Update detected: sum= some_expression(sum,...)
94            g_sum= g_tmp_dfovec_1d_00192;
95            sum= tmp_dfovec_1d_00192;
96         end
97         for i= 1: m
98            g_tmp_dfovec_1d_00003= i* g_sum;
99            tmp_dfovec_1d_00003= i* sum;
100            g_fvec(i)= g_tmp_dfovec_1d_00003;
101            fvec(i)= tmp_dfovec_1d_00003- 1;
102         end
103      case 3
104         tmp_dfovec_1d_00004= n- 1;
105         for j= 2: tmp_dfovec_1d_00004
106            g_tmp_x_00004= g_x(j);
107            tmp_x_00004= x(j);
108            g_tmp_dfovec_1d_00005= j* g_tmp_x_00004;
109            tmp_dfovec_1d_00005= j* tmp_x_00004;
110            g_tmp_dfovec_1d_00193= g_sum+ g_tmp_dfovec_1d_00005;
111            tmp_dfovec_1d_00193= sum+ tmp_dfovec_1d_00005;
112            % Update detected: sum= some_expression(sum,...)
113            g_sum= g_tmp_dfovec_1d_00193;
114            sum= tmp_dfovec_1d_00193;
115            tmp_dfovec_1d_00004= n- 1;
116         end
117         tmp_dfovec_1d_00006= m- 1;
118         for i= 1: tmp_dfovec_1d_00006
119            tmp_dfovec_1d_00007= i- 1;
120            g_tmp_dfovec_1d_00008= tmp_dfovec_1d_00007* g_sum;
121            tmp_dfovec_1d_00008= tmp_dfovec_1d_00007* sum;
122            g_fvec(i)= g_tmp_dfovec_1d_00008;
123            fvec(i)= tmp_dfovec_1d_00008- 1;
124            tmp_dfovec_1d_00006= m- 1;
125         end
126         fvec(m)= -1;
127         g_fvec(m)= zeros(size(fvec(m)));
128      case 4
129         g_tmp_x_00005= g_x(2);
130         tmp_x_00005= x(2);
131         g_tmp_x_00006= g_x(1);
132         tmp_x_00006= x(1);
133         g_tmp_dfovec_1d_00009= adimat_g_pow_left(g_tmp_x_00006, tmp_x_00006, 2);
134         tmp_dfovec_1d_00009= tmp_x_00006^ 2;
135         g_tmp_dfovec_1d_00010= g_tmp_x_00005- g_tmp_dfovec_1d_00009;
136         tmp_dfovec_1d_00010= tmp_x_00005- tmp_dfovec_1d_00009;
137         g_fvec(1)= 10* g_tmp_dfovec_1d_00010;
138         fvec(1)= 10* tmp_dfovec_1d_00010;
139         g_tmp_x_00007= g_x(1);
140         tmp_x_00007= x(1);
141         g_fvec(2)= -g_tmp_x_00007;
142         fvec(2)= 1- tmp_x_00007;
143      case 5
144         if (x(1)> 0)
145            g_tmp_x_00008= g_x(2);
146            tmp_x_00008= x(2);
147            g_tmp_x_00009= g_x(1);
148            tmp_x_00009= x(1);
149            tmp_dfovec_1d_00011= tmp_x_00008/ tmp_x_00009;
150            g_tmp_dfovec_1d_00011= (tmp_x_00009' \ (g_tmp_x_00008' - g_tmp_x_00009' * tmp_dfovec_1d_00011' ))' ;
151            g_tmp_atan_00000= g_tmp_dfovec_1d_00011./ (1+ tmp_dfovec_1d_00011.^ 2);
152            tmp_atan_00000= atan(tmp_dfovec_1d_00011);
153            tmp_dfovec_1d_00012= 2* pi;
154            g_th= ((tmp_dfovec_1d_00012)' \ g_tmp_atan_00000' )' ;
155            th= tmp_atan_00000/ tmp_dfovec_1d_00012;
156         elseif (x(1)< 0)
157            g_tmp_x_00010= g_x(2);
158            tmp_x_00010= x(2);
159            g_tmp_x_00011= g_x(1);
160            tmp_x_00011= x(1);
161            tmp_dfovec_1d_00013= tmp_x_00010/ tmp_x_00011;
162            g_tmp_dfovec_1d_00013= (tmp_x_00011' \ (g_tmp_x_00010' - g_tmp_x_00011' * tmp_dfovec_1d_00013' ))' ;
163            g_tmp_atan_00001= g_tmp_dfovec_1d_00013./ (1+ tmp_dfovec_1d_00013.^ 2);
164            tmp_atan_00001= atan(tmp_dfovec_1d_00013);
165            tmp_dfovec_1d_00014= 2* pi;
166            g_tmp_dfovec_1d_00015= ((tmp_dfovec_1d_00014)' \ g_tmp_atan_00001' )' ;
167            tmp_dfovec_1d_00015= tmp_atan_00001/ tmp_dfovec_1d_00014;
168            g_th= g_tmp_dfovec_1d_00015;
169            th= tmp_dfovec_1d_00015+ .5;
170         else % x(1)=0
171            th= .25;
172            g_th= zeros(size(th));
173         end
174         g_tmp_x_00012= g_x(1);
175         tmp_x_00012= x(1);
176         g_tmp_dfovec_1d_00016= adimat_g_pow_left(g_tmp_x_00012, tmp_x_00012, 2);
177         tmp_dfovec_1d_00016= tmp_x_00012^ 2;
178         g_tmp_x_00013= g_x(2);
179         tmp_x_00013= x(2);
180         g_tmp_dfovec_1d_00017= adimat_g_pow_left(g_tmp_x_00013, tmp_x_00013, 2);
181         tmp_dfovec_1d_00017= tmp_x_00013^ 2;
182         g_tmp_dfovec_1d_00018= g_tmp_dfovec_1d_00016+ g_tmp_dfovec_1d_00017;
183         tmp_dfovec_1d_00018= tmp_dfovec_1d_00016+ tmp_dfovec_1d_00017;
184         r= sqrt(tmp_dfovec_1d_00018);
185         g_r= g_tmp_dfovec_1d_00018./ (2.* r);
186         g_tmp_x_00014= g_x(3);
187         tmp_x_00014= x(3);
188         g_tmp_dfovec_1d_00019= 10* g_th;
189         tmp_dfovec_1d_00019= 10* th;
190         g_tmp_dfovec_1d_00020= g_tmp_x_00014- g_tmp_dfovec_1d_00019;
191         tmp_dfovec_1d_00020= tmp_x_00014- tmp_dfovec_1d_00019;
192         g_fvec(1)= 10* g_tmp_dfovec_1d_00020;
193         fvec(1)= 10* tmp_dfovec_1d_00020;
194         g_tmp_dfovec_1d_00021= g_r;
195         tmp_dfovec_1d_00021= r- 1;
196         g_fvec(2)= 10* g_tmp_dfovec_1d_00021;
197         fvec(2)= 10* tmp_dfovec_1d_00021;
198         g_tmp_x_00015= g_x(3);
199         tmp_x_00015= x(3);
200         g_fvec(3)= g_tmp_x_00015;
201         fvec(3)= tmp_x_00015;
202      case 6
203         g_tmp_x_00016= g_x(1);
204         tmp_x_00016= x(1);
205         g_tmp_x_00017= g_x(2);
206         tmp_x_00017= x(2);
207         g_tmp_dfovec_1d_00022= 10* g_tmp_x_00017;
208         tmp_dfovec_1d_00022= 10* tmp_x_00017;
209         g_fvec(1)= g_tmp_x_00016+ g_tmp_dfovec_1d_00022;
210         fvec(1)= tmp_x_00016+ tmp_dfovec_1d_00022;
211         g_tmp_x_00018= g_x(3);
212         tmp_x_00018= x(3);
213         g_tmp_x_00019= g_x(4);
214         tmp_x_00019= x(4);
215         g_tmp_dfovec_1d_00023= g_tmp_x_00018- g_tmp_x_00019;
216         tmp_dfovec_1d_00023= tmp_x_00018- tmp_x_00019;
217         g_fvec(2)= sqrt(5)* g_tmp_dfovec_1d_00023;
218         fvec(2)= sqrt(5)* tmp_dfovec_1d_00023;
219         g_tmp_x_00020= g_x(2);
220         tmp_x_00020= x(2);
221         g_tmp_x_00021= g_x(3);
222         tmp_x_00021= x(3);
223         g_tmp_dfovec_1d_00024= 2* g_tmp_x_00021;
224         tmp_dfovec_1d_00024= 2* tmp_x_00021;
225         g_tmp_dfovec_1d_00025= g_tmp_x_00020- g_tmp_dfovec_1d_00024;
226         tmp_dfovec_1d_00025= tmp_x_00020- tmp_dfovec_1d_00024;
227         g_fvec(3)= adimat_g_pow_left((g_tmp_dfovec_1d_00025), (tmp_dfovec_1d_00025), 2);
228         fvec(3)= tmp_dfovec_1d_00025^ 2;
229         g_tmp_x_00022= g_x(1);
230         tmp_x_00022= x(1);
231         g_tmp_x_00023= g_x(4);
232         tmp_x_00023= x(4);
233         g_tmp_dfovec_1d_00026= g_tmp_x_00022- g_tmp_x_00023;
234         tmp_dfovec_1d_00026= tmp_x_00022- tmp_x_00023;
235         g_tmp_dfovec_1d_00027= adimat_g_pow_left((g_tmp_dfovec_1d_00026), (tmp_dfovec_1d_00026), 2);
236         tmp_dfovec_1d_00027= tmp_dfovec_1d_00026^ 2;
237         g_fvec(4)= sqrt(10)* g_tmp_dfovec_1d_00027;
238         fvec(4)= sqrt(10)* tmp_dfovec_1d_00027;
239      case 7
240         g_tmp_x_00024= g_x(1);
241         tmp_x_00024= x(1);
242         g_tmp_x_00025= g_x(2);
243         tmp_x_00025= x(2);
244         g_tmp_dfovec_1d_00028= -g_tmp_x_00025;
245         tmp_dfovec_1d_00028= 5- tmp_x_00025;
246         g_tmp_dfovec_1d_00029= g_tmp_dfovec_1d_00028* tmp_x_00025+ tmp_dfovec_1d_00028* g_tmp_x_00025;
247         tmp_dfovec_1d_00029= tmp_dfovec_1d_00028* tmp_x_00025;
248         g_tmp_dfovec_1d_00030= g_tmp_dfovec_1d_00029;
249         tmp_dfovec_1d_00030= tmp_dfovec_1d_00029- 2;
250         g_tmp_dfovec_1d_00031= g_tmp_dfovec_1d_00030* tmp_x_00025+ tmp_dfovec_1d_00030* g_tmp_x_00025;
251         tmp_dfovec_1d_00031= tmp_dfovec_1d_00030* tmp_x_00025;
252         g_fvec(1)= g_tmp_x_00024+ g_tmp_dfovec_1d_00031;
253         fvec(1)= -c13+ tmp_x_00024+ tmp_dfovec_1d_00031;
254         g_tmp_x_00026= g_x(1);
255         tmp_x_00026= x(1);
256         g_tmp_x_00027= g_x(2);
257         tmp_x_00027= x(2);
258         g_tmp_dfovec_1d_00032= g_tmp_x_00027;
259         tmp_dfovec_1d_00032= 1+ tmp_x_00027;
260         g_tmp_dfovec_1d_00033= g_tmp_dfovec_1d_00032* tmp_x_00027+ tmp_dfovec_1d_00032* g_tmp_x_00027;
261         tmp_dfovec_1d_00033= tmp_dfovec_1d_00032* tmp_x_00027;
262         g_tmp_dfovec_1d_00034= g_tmp_dfovec_1d_00033;
263         tmp_dfovec_1d_00034= tmp_dfovec_1d_00033- c14;
264         g_tmp_dfovec_1d_00035= g_tmp_dfovec_1d_00034* tmp_x_00027+ tmp_dfovec_1d_00034* g_tmp_x_00027;
265         tmp_dfovec_1d_00035= tmp_dfovec_1d_00034* tmp_x_00027;
266         g_fvec(2)= g_tmp_x_00026+ g_tmp_dfovec_1d_00035;
267         fvec(2)= -c29+ tmp_x_00026+ tmp_dfovec_1d_00035;
268      case 8
269         for i= 1: 15
270            tmp1= i;
271            g_tmp1= zeros(size(tmp1));
272            tmp2= 16- i;
273            g_tmp2= zeros(size(tmp2));
274            g_tmp3= g_tmp1;
275            tmp3= tmp1;
276            if (i> 8)
277               g_tmp3= g_tmp2;
278               tmp3= tmp2;
279            end
280            g_tmp_x_00028= g_x(1);
281            tmp_x_00028= x(1);
282            g_tmp_x_00029= g_x(2);
283            tmp_x_00029= x(2);
284            g_tmp_dfovec_1d_00036= g_tmp_x_00029* tmp2+ tmp_x_00029* g_tmp2;
285            tmp_dfovec_1d_00036= tmp_x_00029* tmp2;
286            g_tmp_x_00030= g_x(3);
287            tmp_x_00030= x(3);
288            g_tmp_dfovec_1d_00037= g_tmp_x_00030* tmp3+ tmp_x_00030* g_tmp3;
289            tmp_dfovec_1d_00037= tmp_x_00030* tmp3;
290            g_tmp_dfovec_1d_00038= g_tmp_dfovec_1d_00036+ g_tmp_dfovec_1d_00037;
291            tmp_dfovec_1d_00038= tmp_dfovec_1d_00036+ tmp_dfovec_1d_00037;
292            tmp_dfovec_1d_00039= tmp1/ tmp_dfovec_1d_00038;
293            g_tmp_dfovec_1d_00039= ((tmp_dfovec_1d_00038)' \ (g_tmp1' - (g_tmp_dfovec_1d_00038)' * tmp_dfovec_1d_00039' ))' ;
294            g_tmp_dfovec_1d_00040= g_tmp_x_00028+ g_tmp_dfovec_1d_00039;
295            tmp_dfovec_1d_00040= tmp_x_00028+ tmp_dfovec_1d_00039;
296            g_fvec(i)= -g_tmp_dfovec_1d_00040;
297            fvec(i)= y1(i)- tmp_dfovec_1d_00040;
298         end
299      case 9
300         for i= 1: 11
301            g_tmp_x_00031= g_x(2);
302            tmp_x_00031= x(2);
303            g_tmp_dfovec_1d_00041= g_tmp_x_00031;
304            tmp_dfovec_1d_00041= v(i)+ tmp_x_00031;
305            g_tmp1= v(i)* g_tmp_dfovec_1d_00041;
306            tmp1= v(i)* tmp_dfovec_1d_00041;
307            g_tmp_x_00032= g_x(3);
308            tmp_x_00032= x(3);
309            g_tmp_dfovec_1d_00042= g_tmp_x_00032;
310            tmp_dfovec_1d_00042= v(i)+ tmp_x_00032;
311            g_tmp_dfovec_1d_00043= v(i)* g_tmp_dfovec_1d_00042;
312            tmp_dfovec_1d_00043= v(i)* tmp_dfovec_1d_00042;
313            g_tmp_x_00033= g_x(4);
314            tmp_x_00033= x(4);
315            g_tmp2= g_tmp_dfovec_1d_00043+ g_tmp_x_00033;
316            tmp2= tmp_dfovec_1d_00043+ tmp_x_00033;
317            g_tmp_x_00034= g_x(1);
318            tmp_x_00034= x(1);
319            g_tmp_dfovec_1d_00044= g_tmp_x_00034* tmp1+ tmp_x_00034* g_tmp1;
320            tmp_dfovec_1d_00044= tmp_x_00034* tmp1;
321            tmp_dfovec_1d_00045= tmp_dfovec_1d_00044/ tmp2;
322            g_tmp_dfovec_1d_00045= (tmp2' \ (g_tmp_dfovec_1d_00044' - g_tmp2' * tmp_dfovec_1d_00045' ))' ;
323            g_fvec(i)= -g_tmp_dfovec_1d_00045;
324            fvec(i)= y2(i)- tmp_dfovec_1d_00045;
325         end
326      case 10
327         for i= 1: 16
328            tmp_dfovec_1d_00046= 5* i;
329            g_tmp_x_00035= g_x(3);
330            tmp_x_00035= x(3);
331            g_temp= g_tmp_x_00035;
332            temp= tmp_dfovec_1d_00046+ c45+ tmp_x_00035;
333            g_tmp_x_00036= g_x(2);
334            tmp_x_00036= x(2);
335            tmp1= tmp_x_00036/ temp;
336            g_tmp1= (temp' \ (g_tmp_x_00036' - g_temp' * tmp1' ))' ;
337            g_tmp2= g_tmp1.* exp(tmp1);
338            tmp2= exp(tmp1);
339            g_tmp_x_00037= g_x(1);
340            tmp_x_00037= x(1);
341            g_tmp_dfovec_1d_00047= g_tmp_x_00037* tmp2+ tmp_x_00037* g_tmp2;
342            tmp_dfovec_1d_00047= tmp_x_00037* tmp2;
343            g_fvec(i)= g_tmp_dfovec_1d_00047;
344            fvec(i)= tmp_dfovec_1d_00047- y3(i);
345         end
346      case 11
347         for i= 1: 29
348            div= i/ c29;
349            s1= 0;
350            g_s1= zeros(size(s1));
351            dx= 1;
352            for j= 2: n
353               tmp_dfovec_1d_00048= j- 1;
354               g_tmp_x_00038= g_x(j);
355               tmp_x_00038= x(j);
356               g_tmp_dfovec_1d_00049= tmp_dfovec_1d_00048* dx* g_tmp_x_00038;
357               tmp_dfovec_1d_00049= tmp_dfovec_1d_00048* dx* tmp_x_00038;
358               g_tmp_dfovec_1d_00194= g_s1+ g_tmp_dfovec_1d_00049;
359               tmp_dfovec_1d_00194= s1+ tmp_dfovec_1d_00049;
360               % Update detected: s1= some_expression(s1,...)
361               g_s1= g_tmp_dfovec_1d_00194;
362               s1= tmp_dfovec_1d_00194;
363               tmp_dfovec_1d_00195= div* dx;
364               % Update detected: dx= some_expression(dx,...)
365               dx= tmp_dfovec_1d_00195;
366            end
367            s2= 0;
368            g_s2= zeros(size(s2));
369            dx= 1;
370            for j= 1: n
371               g_tmp_x_00039= g_x(j);
372               tmp_x_00039= x(j);
373               g_tmp_dfovec_1d_00050= dx* g_tmp_x_00039;
374               tmp_dfovec_1d_00050= dx* tmp_x_00039;
375               g_tmp_dfovec_1d_00196= g_s2+ g_tmp_dfovec_1d_00050;
376               tmp_dfovec_1d_00196= s2+ tmp_dfovec_1d_00050;
377               % Update detected: s2= some_expression(s2,...)
378               g_s2= g_tmp_dfovec_1d_00196;
379               s2= tmp_dfovec_1d_00196;
380               tmp_dfovec_1d_00197= div* dx;
381               % Update detected: dx= some_expression(dx,...)
382               dx= tmp_dfovec_1d_00197;
383            end
384            g_tmp_dfovec_1d_00051= adimat_g_pow_left(g_s2, s2, 2);
385            tmp_dfovec_1d_00051= s2^ 2;
386            g_fvec(i)= g_s1- g_tmp_dfovec_1d_00051;
387            fvec(i)= s1- tmp_dfovec_1d_00051- 1;
388         end
389         g_tmp_x_00040= g_x(1);
390         tmp_x_00040= x(1);
391         g_fvec(30)= g_tmp_x_00040;
392         fvec(30)= tmp_x_00040;
393         g_tmp_x_00041= g_x(2);
394         tmp_x_00041= x(2);
395         g_tmp_x_00042= g_x(1);
396         tmp_x_00042= x(1);
397         g_tmp_dfovec_1d_00052= adimat_g_pow_left(g_tmp_x_00042, tmp_x_00042, 2);
398         tmp_dfovec_1d_00052= tmp_x_00042^ 2;
399         g_fvec(31)= g_tmp_x_00041- g_tmp_dfovec_1d_00052;
400         fvec(31)= tmp_x_00041- tmp_dfovec_1d_00052- 1;
401      case 12
402         for i= 1: m
403            temp= i;
404            g_temp= zeros(size(temp));
405            g_tmp1= (10' \ g_temp' )' ;
406            tmp1= temp/ 10;
407            g_tmp_dfovec_1d_00053= -g_tmp1;
408            tmp_dfovec_1d_00053= -tmp1;
409            g_tmp_x_00043= g_x(1);
410            tmp_x_00043= x(1);
411            g_tmp_dfovec_1d_00054= g_tmp_dfovec_1d_00053* tmp_x_00043+ tmp_dfovec_1d_00053* g_tmp_x_00043;
412            tmp_dfovec_1d_00054= tmp_dfovec_1d_00053* tmp_x_00043;
413            g_tmp_exp_00000= g_tmp_dfovec_1d_00054.* exp(tmp_dfovec_1d_00054);
414            tmp_exp_00000= exp(tmp_dfovec_1d_00054);
415            g_tmp_x_00044= g_x(2);
416            tmp_x_00044= x(2);
417            g_tmp_dfovec_1d_00055= g_tmp_dfovec_1d_00053* tmp_x_00044+ tmp_dfovec_1d_00053* g_tmp_x_00044;
418            tmp_dfovec_1d_00055= tmp_dfovec_1d_00053* tmp_x_00044;
419            g_tmp_exp_00001= g_tmp_dfovec_1d_00055.* exp(tmp_dfovec_1d_00055);
420            tmp_exp_00001= exp(tmp_dfovec_1d_00055);
421            g_tmp_dfovec_1d_00056= -g_temp;
422            tmp_dfovec_1d_00056= -temp;
423            g_tmp_exp_00002= g_tmp_dfovec_1d_00056.* exp(tmp_dfovec_1d_00056);
424            tmp_exp_00002= exp(tmp_dfovec_1d_00056);
425            g_tmp_exp_00003= g_tmp_dfovec_1d_00053.* exp(tmp_dfovec_1d_00053);
426            tmp_exp_00003= exp(tmp_dfovec_1d_00053);
427            g_tmp_dfovec_1d_00057= g_tmp_exp_00002- g_tmp_exp_00003;
428            tmp_dfovec_1d_00057= tmp_exp_00002- tmp_exp_00003;
429            g_tmp_x_00045= g_x(3);
430            tmp_x_00045= x(3);
431            g_tmp_dfovec_1d_00058= g_tmp_dfovec_1d_00057* tmp_x_00045+ tmp_dfovec_1d_00057* g_tmp_x_00045;
432            tmp_dfovec_1d_00058= tmp_dfovec_1d_00057* tmp_x_00045;
433            g_fvec(i)= g_tmp_exp_00000- g_tmp_exp_00001+ g_tmp_dfovec_1d_00058;
434            fvec(i)= tmp_exp_00000- tmp_exp_00001+ tmp_dfovec_1d_00058;
435         end
436      case 13
437         for i= 1: m
438            temp= i;
439            g_temp= zeros(size(temp));
440            g_tmp_dfovec_1d_00059= 2* g_temp;
441            tmp_dfovec_1d_00059= 2* temp;
442            g_tmp_x_00046= g_x(1);
443            tmp_x_00046= x(1);
444            g_tmp_dfovec_1d_00060= g_temp* tmp_x_00046+ temp* g_tmp_x_00046;
445            tmp_dfovec_1d_00060= temp* tmp_x_00046;
446            g_tmp_exp_00004= g_tmp_dfovec_1d_00060.* exp(tmp_dfovec_1d_00060);
447            tmp_exp_00004= exp(tmp_dfovec_1d_00060);
448            g_tmp_x_00047= g_x(2);
449            tmp_x_00047= x(2);
450            g_tmp_dfovec_1d_00061= g_temp* tmp_x_00047+ temp* g_tmp_x_00047;
451            tmp_dfovec_1d_00061= temp* tmp_x_00047;
452            g_tmp_exp_00005= g_tmp_dfovec_1d_00061.* exp(tmp_dfovec_1d_00061);
453            tmp_exp_00005= exp(tmp_dfovec_1d_00061);
454            g_fvec(i)= g_tmp_dfovec_1d_00059- g_tmp_exp_00004- g_tmp_exp_00005;
455            fvec(i)= 2+ tmp_dfovec_1d_00059- tmp_exp_00004- tmp_exp_00005;
456         end
457      case 14
458         for i= 1: m
459            temp= i/ 5;
460            g_temp= zeros(size(temp));
461            g_tmp_x_00048= g_x(1);
462            tmp_x_00048= x(1);
463            g_tmp_x_00049= g_x(2);
464            tmp_x_00049= x(2);
465            g_tmp_dfovec_1d_00062= g_temp* tmp_x_00049+ temp* g_tmp_x_00049;
466            tmp_dfovec_1d_00062= temp* tmp_x_00049;
467            g_tmp_exp_00006= g_temp.* exp(temp);
468            tmp_exp_00006= exp(temp);
469            g_tmp1= g_tmp_x_00048+ g_tmp_dfovec_1d_00062- g_tmp_exp_00006;
470            tmp1= tmp_x_00048+ tmp_dfovec_1d_00062- tmp_exp_00006;
471            g_tmp_x_00050= g_x(3);
472            tmp_x_00050= x(3);
473            g_tmp_sin_00000= g_temp.* cos(temp);
474            tmp_sin_00000= sin(temp);
475            g_tmp_x_00051= g_x(4);
476            tmp_x_00051= x(4);
477            g_tmp_dfovec_1d_00063= g_tmp_sin_00000* tmp_x_00051+ tmp_sin_00000* g_tmp_x_00051;
478            tmp_dfovec_1d_00063= tmp_sin_00000* tmp_x_00051;
479            g_tmp_cos_00000= g_temp.* (-sin(temp));
480            tmp_cos_00000= cos(temp);
481            g_tmp2= g_tmp_x_00050+ g_tmp_dfovec_1d_00063- g_tmp_cos_00000;
482            tmp2= tmp_x_00050+ tmp_dfovec_1d_00063- tmp_cos_00000;
483            g_tmp_dfovec_1d_00064= adimat_g_pow_left(g_tmp1, tmp1, 2);
484            tmp_dfovec_1d_00064= tmp1^ 2;
485            g_tmp_dfovec_1d_00065= adimat_g_pow_left(g_tmp2, tmp2, 2);
486            tmp_dfovec_1d_00065= tmp2^ 2;
487            g_fvec(i)= g_tmp_dfovec_1d_00064+ g_tmp_dfovec_1d_00065;
488            fvec(i)= tmp_dfovec_1d_00064+ tmp_dfovec_1d_00065;
489         end
490      case 15
491         for j= 1: n
492            t1= 1;
493            g_t1= zeros(size(t1));
494            g_tmp_x_00052= g_x(j);
495            tmp_x_00052= x(j);
496            g_tmp_dfovec_1d_00066= 2* g_tmp_x_00052;
497            tmp_dfovec_1d_00066= 2* tmp_x_00052;
498            g_t2= g_tmp_dfovec_1d_00066;
499            t2= tmp_dfovec_1d_00066- 1;
500            g_t= 2* g_t2;
501            t= 2* t2;
502            for i= 1: m
503               g_tmp_fvec_00001= g_fvec(i);
504               tmp_fvec_00001= fvec(i);
505               g_fvec(i)= g_tmp_fvec_00001+ g_t2;
506               fvec(i)= tmp_fvec_00001+ t2;
507               g_tmp_dfovec_1d_00067= g_t* t2+ t* g_t2;
508               tmp_dfovec_1d_00067= t* t2;
509               g_th= g_tmp_dfovec_1d_00067- g_t1;
510               th= tmp_dfovec_1d_00067- t1;
511               g_t1= g_t2;
512               t1= t2;
513               g_t2= g_th;
514               t2= th;
515            end
516         end
517         iev= -1;
518         for i= 1: m
519            g_tmp_fvec_00002= g_fvec(i);
520            tmp_fvec_00002= fvec(i);
521            g_fvec(i)= (n' \ g_tmp_fvec_00002' )' ;
522            fvec(i)= tmp_fvec_00002/ n;
523            if (iev> 0)
524               g_tmp_fvec_00003= g_fvec(i);
525               tmp_fvec_00003= fvec(i);
526               tmp_dfovec_1d_00068= i^ 2;
527               tmp_dfovec_1d_00069= tmp_dfovec_1d_00068- 1;
528               tmp_dfovec_1d_00070= 1/ tmp_dfovec_1d_00069;
529               g_fvec(i)= g_tmp_fvec_00003;
530               fvec(i)= tmp_fvec_00003+ tmp_dfovec_1d_00070;
531            end
532            tmp_dfovec_1d_00198= -iev;
533            % Update detected: iev= some_expression(iev,...)
534            iev= tmp_dfovec_1d_00198;
535         end
536      case 16
537         tmp_dfovec_1d_00071= n+ 1;
538         sum1= -tmp_dfovec_1d_00071;
539         g_sum1= zeros(size(sum1));
540         prod1= 1;
541         g_prod1= zeros(size(prod1));
542         for j= 1: n
543            g_tmp_x_00053= g_x(j);
544            tmp_x_00053= x(j);
545            g_tmp_dfovec_1d_00199= g_sum1+ g_tmp_x_00053;
546            tmp_dfovec_1d_00199= sum1+ tmp_x_00053;
547            % Update detected: sum1= some_expression(sum1,...)
548            g_sum1= g_tmp_dfovec_1d_00199;
549            sum1= tmp_dfovec_1d_00199;
550            g_tmp_x_00054= g_x(j);
551            tmp_x_00054= x(j);
552            g_tmp_dfovec_1d_00200= g_tmp_x_00054* prod1+ tmp_x_00054* g_prod1;
553            tmp_dfovec_1d_00200= tmp_x_00054* prod1;
554            % Update detected: prod1= some_expression(prod1,...)
555            g_prod1= g_tmp_dfovec_1d_00200;
556            prod1= tmp_dfovec_1d_00200;
557         end
558         tmp_dfovec_1d_00072= n- 1;
559         for i= 1: tmp_dfovec_1d_00072
560            g_tmp_x_00055= g_x(i);
561            tmp_x_00055= x(i);
562            g_fvec(i)= g_tmp_x_00055+ g_sum1;
563            fvec(i)= tmp_x_00055+ sum1;
564            tmp_dfovec_1d_00072= n- 1;
565         end
566         g_fvec(n)= g_prod1;
567         fvec(n)= prod1- 1;
568      case 17
569         for i= 1: 33
570            tmp_dfovec_1d_00073= i- 1;
571            temp= 10* tmp_dfovec_1d_00073;
572            g_temp= zeros(size(temp));
573            g_tmp_x_00056= g_x(4);
574            tmp_x_00056= x(4);
575            g_tmp_dfovec_1d_00074= -g_tmp_x_00056;
576            tmp_dfovec_1d_00074= -tmp_x_00056;
577            g_tmp_dfovec_1d_00075= g_tmp_dfovec_1d_00074* temp+ tmp_dfovec_1d_00074* g_temp;
578            tmp_dfovec_1d_00075= tmp_dfovec_1d_00074* temp;
579            g_tmp1= g_tmp_dfovec_1d_00075.* exp(tmp_dfovec_1d_00075);
580            tmp1= exp(tmp_dfovec_1d_00075);
581            g_tmp_x_00057= g_x(5);
582            tmp_x_00057= x(5);
583            g_tmp_dfovec_1d_00076= -g_tmp_x_00057;
584            tmp_dfovec_1d_00076= -tmp_x_00057;
585            g_tmp_dfovec_1d_00077= g_tmp_dfovec_1d_00076* temp+ tmp_dfovec_1d_00076* g_temp;
586            tmp_dfovec_1d_00077= tmp_dfovec_1d_00076* temp;
587            g_tmp2= g_tmp_dfovec_1d_00077.* exp(tmp_dfovec_1d_00077);
588            tmp2= exp(tmp_dfovec_1d_00077);
589            g_tmp_x_00058= g_x(1);
590            tmp_x_00058= x(1);
591            g_tmp_x_00059= g_x(2);
592            tmp_x_00059= x(2);
593            g_tmp_dfovec_1d_00078= g_tmp_x_00059* tmp1+ tmp_x_00059* g_tmp1;
594            tmp_dfovec_1d_00078= tmp_x_00059* tmp1;
595            g_tmp_x_00060= g_x(3);
596            tmp_x_00060= x(3);
597            g_tmp_dfovec_1d_00079= g_tmp_x_00060* tmp2+ tmp_x_00060* g_tmp2;
598            tmp_dfovec_1d_00079= tmp_x_00060* tmp2;
599            g_tmp_dfovec_1d_00080= g_tmp_x_00058+ g_tmp_dfovec_1d_00078+ g_tmp_dfovec_1d_00079;
600            tmp_dfovec_1d_00080= tmp_x_00058+ tmp_dfovec_1d_00078+ tmp_dfovec_1d_00079;
601            g_fvec(i)= -g_tmp_dfovec_1d_00080;
602            fvec(i)= y4(i)- tmp_dfovec_1d_00080;
603         end
604      case 18
605         for i= 1: 65
606            tmp_dfovec_1d_00081= i- 1;
607            temp= tmp_dfovec_1d_00081/ 10;
608            g_temp= zeros(size(temp));
609            g_tmp_x_00061= g_x(5);
610            tmp_x_00061= x(5);
611            g_tmp_dfovec_1d_00082= -g_tmp_x_00061;
612            tmp_dfovec_1d_00082= -tmp_x_00061;
613            g_tmp_dfovec_1d_00083= g_tmp_dfovec_1d_00082* temp+ tmp_dfovec_1d_00082* g_temp;
614            tmp_dfovec_1d_00083= tmp_dfovec_1d_00082* temp;
615            g_tmp1= g_tmp_dfovec_1d_00083.* exp(tmp_dfovec_1d_00083);
616            tmp1= exp(tmp_dfovec_1d_00083);
617            g_tmp_x_00062= g_x(6);
618            tmp_x_00062= x(6);
619            g_tmp_dfovec_1d_00084= -g_tmp_x_00062;
620            tmp_dfovec_1d_00084= -tmp_x_00062;
621            g_tmp_x_00063= g_x(9);
622            tmp_x_00063= x(9);
623            g_tmp_dfovec_1d_00085= g_temp- g_tmp_x_00063;
624            tmp_dfovec_1d_00085= temp- tmp_x_00063;
625            g_tmp_dfovec_1d_00086= adimat_g_pow_left((g_tmp_dfovec_1d_00085), (tmp_dfovec_1d_00085), 2);
626            tmp_dfovec_1d_00086= tmp_dfovec_1d_00085^ 2;
627            g_tmp_dfovec_1d_00087= g_tmp_dfovec_1d_00084* tmp_dfovec_1d_00086+ tmp_dfovec_1d_00084* g_tmp_dfovec_1d_00086;
628            tmp_dfovec_1d_00087= tmp_dfovec_1d_00084* tmp_dfovec_1d_00086;
629            g_tmp2= g_tmp_dfovec_1d_00087.* exp(tmp_dfovec_1d_00087);
630            tmp2= exp(tmp_dfovec_1d_00087);
631            g_tmp_x_00064= g_x(7);
632            tmp_x_00064= x(7);
633            g_tmp_dfovec_1d_00088= -g_tmp_x_00064;
634            tmp_dfovec_1d_00088= -tmp_x_00064;
635            g_tmp_x_00065= g_x(10);
636            tmp_x_00065= x(10);
637            g_tmp_dfovec_1d_00089= g_temp- g_tmp_x_00065;
638            tmp_dfovec_1d_00089= temp- tmp_x_00065;
639            g_tmp_dfovec_1d_00090= adimat_g_pow_left((g_tmp_dfovec_1d_00089), (tmp_dfovec_1d_00089), 2);
640            tmp_dfovec_1d_00090= tmp_dfovec_1d_00089^ 2;
641            g_tmp_dfovec_1d_00091= g_tmp_dfovec_1d_00088* tmp_dfovec_1d_00090+ tmp_dfovec_1d_00088* g_tmp_dfovec_1d_00090;
642            tmp_dfovec_1d_00091= tmp_dfovec_1d_00088* tmp_dfovec_1d_00090;
643            g_tmp3= g_tmp_dfovec_1d_00091.* exp(tmp_dfovec_1d_00091);
644            tmp3= exp(tmp_dfovec_1d_00091);
645            g_tmp_x_00066= g_x(8);
646            tmp_x_00066= x(8);
647            g_tmp_dfovec_1d_00092= -g_tmp_x_00066;
648            tmp_dfovec_1d_00092= -tmp_x_00066;
649            g_tmp_x_00067= g_x(11);
650            tmp_x_00067= x(11);
651            g_tmp_dfovec_1d_00093= g_temp- g_tmp_x_00067;
652            tmp_dfovec_1d_00093= temp- tmp_x_00067;
653            g_tmp_dfovec_1d_00094= adimat_g_pow_left((g_tmp_dfovec_1d_00093), (tmp_dfovec_1d_00093), 2);
654            tmp_dfovec_1d_00094= tmp_dfovec_1d_00093^ 2;
655            g_tmp_dfovec_1d_00095= g_tmp_dfovec_1d_00092* tmp_dfovec_1d_00094+ tmp_dfovec_1d_00092* g_tmp_dfovec_1d_00094;
656            tmp_dfovec_1d_00095= tmp_dfovec_1d_00092* tmp_dfovec_1d_00094;
657            g_tmp4= g_tmp_dfovec_1d_00095.* exp(tmp_dfovec_1d_00095);
658            tmp4= exp(tmp_dfovec_1d_00095);
659            g_tmp_x_00068= g_x(1);
660            tmp_x_00068= x(1);
661            g_tmp_dfovec_1d_00096= g_tmp_x_00068* tmp1+ tmp_x_00068* g_tmp1;
662            tmp_dfovec_1d_00096= tmp_x_00068* tmp1;
663            g_tmp_x_00069= g_x(2);
664            tmp_x_00069= x(2);
665            g_tmp_dfovec_1d_00097= g_tmp_x_00069* tmp2+ tmp_x_00069* g_tmp2;
666            tmp_dfovec_1d_00097= tmp_x_00069* tmp2;
667            g_tmp_x_00070= g_x(3);
668            tmp_x_00070= x(3);
669            g_tmp_dfovec_1d_00098= g_tmp_x_00070* tmp3+ tmp_x_00070* g_tmp3;
670            tmp_dfovec_1d_00098= tmp_x_00070* tmp3;
671            g_tmp_x_00071= g_x(4);
672            tmp_x_00071= x(4);
673            g_tmp_dfovec_1d_00099= g_tmp_x_00071* tmp4+ tmp_x_00071* g_tmp4;
674            tmp_dfovec_1d_00099= tmp_x_00071* tmp4;
675            g_tmp_dfovec_1d_00100= g_tmp_dfovec_1d_00096+ g_tmp_dfovec_1d_00097+ g_tmp_dfovec_1d_00098+ g_tmp_dfovec_1d_00099;
676            tmp_dfovec_1d_00100= tmp_dfovec_1d_00096+ tmp_dfovec_1d_00097+ tmp_dfovec_1d_00098+ tmp_dfovec_1d_00099;
677            g_fvec(i)= -g_tmp_dfovec_1d_00100;
678            fvec(i)= y5(i)- tmp_dfovec_1d_00100;
679         end
680      case 19% n>=5, m = (n-4)*2
681         tmp_dfovec_1d_00101= n- 4;
682         for i= 1: tmp_dfovec_1d_00101
683            g_tmp_x_00072= g_x(i);
684            tmp_x_00072= x(i);
685            g_tmp_dfovec_1d_00102= -4* g_tmp_x_00072;
686            tmp_dfovec_1d_00102= -4* tmp_x_00072;
687            g_tmp_dfovec_1d_00103= g_tmp_dfovec_1d_00102;
688            tmp_dfovec_1d_00103= tmp_dfovec_1d_00102+ 3.0;
689            g_fvec(i)= g_tmp_dfovec_1d_00103;
690            fvec(i)= tmp_dfovec_1d_00103;
691            g_tmp_x_00073= g_x(i);
692            tmp_x_00073= x(i);
693            g_tmp_dfovec_1d_00104= adimat_g_pow_left(g_tmp_x_00073, tmp_x_00073, 2);
694            tmp_dfovec_1d_00104= tmp_x_00073^ 2;
695            tmp_dfovec_1d_00105= i+ 1;
696            g_tmp_x_00074= g_x(tmp_dfovec_1d_00105);
697            tmp_x_00074= x(tmp_dfovec_1d_00105);
698            g_tmp_dfovec_1d_00106= adimat_g_pow_left(g_tmp_x_00074, tmp_x_00074, 2);
699            tmp_dfovec_1d_00106= tmp_x_00074^ 2;
700            g_tmp_dfovec_1d_00107= 2* g_tmp_dfovec_1d_00106;
701            tmp_dfovec_1d_00107= 2* tmp_dfovec_1d_00106;
702            tmp_dfovec_1d_00108= i+ 2;
703            g_tmp_x_00075= g_x(tmp_dfovec_1d_00108);
704            tmp_x_00075= x(tmp_dfovec_1d_00108);
705            g_tmp_dfovec_1d_00109= adimat_g_pow_left(g_tmp_x_00075, tmp_x_00075, 2);
706            tmp_dfovec_1d_00109= tmp_x_00075^ 2;
707            g_tmp_dfovec_1d_00110= 3* g_tmp_dfovec_1d_00109;
708            tmp_dfovec_1d_00110= 3* tmp_dfovec_1d_00109;
709            tmp_dfovec_1d_00111= i+ 3;
710            g_tmp_x_00076= g_x(tmp_dfovec_1d_00111);
711            tmp_x_00076= x(tmp_dfovec_1d_00111);
712            g_tmp_dfovec_1d_00112= adimat_g_pow_left(g_tmp_x_00076, tmp_x_00076, 2);
713            tmp_dfovec_1d_00112= tmp_x_00076^ 2;
714            g_tmp_dfovec_1d_00113= 4* g_tmp_dfovec_1d_00112;
715            tmp_dfovec_1d_00113= 4* tmp_dfovec_1d_00112;
716            g_tmp_x_00077= g_x(n);
717            tmp_x_00077= x(n);
718            g_tmp_dfovec_1d_00114= adimat_g_pow_left(g_tmp_x_00077, tmp_x_00077, 2);
719            tmp_dfovec_1d_00114= tmp_x_00077^ 2;
720            g_tmp_dfovec_1d_00115= 5* g_tmp_dfovec_1d_00114;
721            tmp_dfovec_1d_00115= 5* tmp_dfovec_1d_00114;
722            g_tmp_dfovec_1d_00116= g_tmp_dfovec_1d_00104+ g_tmp_dfovec_1d_00107+ g_tmp_dfovec_1d_00110+ g_tmp_dfovec_1d_00113+ g_tmp_dfovec_1d_00115;
723            tmp_dfovec_1d_00116= tmp_dfovec_1d_00104+ tmp_dfovec_1d_00107+ tmp_dfovec_1d_00110+ tmp_dfovec_1d_00113+ tmp_dfovec_1d_00115;
724            g_fvec(n- 4+ i)= g_tmp_dfovec_1d_00116;
725            fvec(n- 4+ i)= tmp_dfovec_1d_00116;
726            tmp_dfovec_1d_00101= n- 4;
727         end
728      case 20% n=2; m=n;
729         g_tmp_x_00078= g_x(1);
730         tmp_x_00078= x(1);
731         g_tmp_dfovec_1d_00117= g_tmp_x_00078;
732         tmp_dfovec_1d_00117= tmp_x_00078- 1.0;
733         g_fvec(1)= g_tmp_dfovec_1d_00117;
734         fvec(1)= tmp_dfovec_1d_00117;
735         for i= 2: n
736            g_tmp_x_00079= g_x(i);
737            tmp_x_00079= x(i);
738            tmp_dfovec_1d_00118= i- 1;
739            g_tmp_x_00080= g_x(tmp_dfovec_1d_00118);
740            tmp_x_00080= x(tmp_dfovec_1d_00118);
741            g_tmp_dfovec_1d_00119= adimat_g_pow_left(g_tmp_x_00080, tmp_x_00080, 3);
742            tmp_dfovec_1d_00119= tmp_x_00080^ 3;
743            g_tmp_dfovec_1d_00120= g_tmp_x_00079- g_tmp_dfovec_1d_00119;
744            tmp_dfovec_1d_00120= tmp_x_00079- tmp_dfovec_1d_00119;
745            g_fvec(i)= 10* g_tmp_dfovec_1d_00120;
746            fvec(i)= 10* tmp_dfovec_1d_00120;
747         end
748      case 21% n >=2; m=n
749         for i= 1: n
750            ss= 0;
751            g_ss= zeros(size(ss));
752            for j= 1: n
753               g_tmp_x_00081= g_x(i);
754               tmp_x_00081= x(i);
755               g_tmp_dfovec_1d_00121= adimat_g_pow_left(g_tmp_x_00081, tmp_x_00081, 2);
756               tmp_dfovec_1d_00121= tmp_x_00081^ 2;
757               tmp_dfovec_1d_00122= i/ j;
758               g_tmp_dfovec_1d_00123= g_tmp_dfovec_1d_00121;
759               tmp_dfovec_1d_00123= tmp_dfovec_1d_00121+ tmp_dfovec_1d_00122;
760               v2= sqrt(tmp_dfovec_1d_00123);
761               g_v2= g_tmp_dfovec_1d_00123./ (2.* v2);
762               g_tmp_log_00000= g_v2./ v2;
763               tmp_log_00000= log(v2);
764               g_tmp_sin_00001= g_tmp_log_00000.* cos(tmp_log_00000);
765               tmp_sin_00001= sin(tmp_log_00000);
766               g_tmp_dfovec_1d_00124= adimat_g_pow_left((g_tmp_sin_00001), (tmp_sin_00001), 5);
767               tmp_dfovec_1d_00124= tmp_sin_00001^ 5;
768               g_tmp_cos_00001= g_tmp_log_00000.* (-sin(tmp_log_00000));
769               tmp_cos_00001= cos(tmp_log_00000);
770               g_tmp_dfovec_1d_00125= adimat_g_pow_left((g_tmp_cos_00001), (tmp_cos_00001), 5);
771               tmp_dfovec_1d_00125= tmp_cos_00001^ 5;
772               g_tmp_dfovec_1d_00126= g_tmp_dfovec_1d_00124+ g_tmp_dfovec_1d_00125;
773               tmp_dfovec_1d_00126= tmp_dfovec_1d_00124+ tmp_dfovec_1d_00125;
774               g_tmp_dfovec_1d_00127= g_v2* tmp_dfovec_1d_00126+ v2* g_tmp_dfovec_1d_00126;
775               tmp_dfovec_1d_00127= v2* tmp_dfovec_1d_00126;
776               g_tmp_dfovec_1d_00201= g_ss+ g_tmp_dfovec_1d_00127;
777               tmp_dfovec_1d_00201= ss+ tmp_dfovec_1d_00127;
778               % Update detected: ss= some_expression(ss,...)
779               g_ss= g_tmp_dfovec_1d_00201;
780               ss= tmp_dfovec_1d_00201;
781            end
782            g_tmp_x_00082= g_x(i);
783            tmp_x_00082= x(i);
784            g_tmp_dfovec_1d_00128= 1400* g_tmp_x_00082;
785            tmp_dfovec_1d_00128= 1400* tmp_x_00082;
786            tmp_dfovec_1d_00129= i- 50;
787            tmp_dfovec_1d_00130= tmp_dfovec_1d_00129^ 3;
788            g_fvec(i)= g_tmp_dfovec_1d_00128+ g_ss;
789            fvec(i)= tmp_dfovec_1d_00128+ tmp_dfovec_1d_00130+ ss;
790         end
791      case 22% m=n=8
792         g_tmp_x_00083= g_x(1);
793         tmp_x_00083= x(1);
794         g_tmp_x_00084= g_x(2);
795         tmp_x_00084= x(2);
796         g_fvec(1)= g_tmp_x_00083+ g_tmp_x_00084;
797         fvec(1)= tmp_x_00083+ tmp_x_00084+ 0.69;
798         g_tmp_x_00085= g_x(3);
799         tmp_x_00085= x(3);
800         g_tmp_x_00086= g_x(4);
801         tmp_x_00086= x(4);
802         g_fvec(2)= g_tmp_x_00085+ g_tmp_x_00086;
803         fvec(2)= tmp_x_00085+ tmp_x_00086+ 0.044;
804         g_tmp_x_00087= g_x(5);
805         tmp_x_00087= x(5);
806         g_tmp_x_00088= g_x(1);
807         tmp_x_00088= x(1);
808         g_tmp_dfovec_1d_00131= g_tmp_x_00087* tmp_x_00088+ tmp_x_00087* g_tmp_x_00088;
809         tmp_dfovec_1d_00131= tmp_x_00087* tmp_x_00088;
810         g_tmp_x_00089= g_x(6);
811         tmp_x_00089= x(6);
812         g_tmp_x_00090= g_x(2);
813         tmp_x_00090= x(2);
814         g_tmp_dfovec_1d_00132= g_tmp_x_00089* tmp_x_00090+ tmp_x_00089* g_tmp_x_00090;
815         tmp_dfovec_1d_00132= tmp_x_00089* tmp_x_00090;
816         g_tmp_x_00091= g_x(7);
817         tmp_x_00091= x(7);
818         g_tmp_x_00092= g_x(3);
819         tmp_x_00092= x(3);
820         g_tmp_dfovec_1d_00133= g_tmp_x_00091* tmp_x_00092+ tmp_x_00091* g_tmp_x_00092;
821         tmp_dfovec_1d_00133= tmp_x_00091* tmp_x_00092;
822         g_tmp_x_00093= g_x(8);
823         tmp_x_00093= x(8);
824         g_tmp_x_00094= g_x(4);
825         tmp_x_00094= x(4);
826         g_tmp_dfovec_1d_00134= g_tmp_x_00093* tmp_x_00094+ tmp_x_00093* g_tmp_x_00094;
827         tmp_dfovec_1d_00134= tmp_x_00093* tmp_x_00094;
828         g_fvec(3)= g_tmp_dfovec_1d_00131+ g_tmp_dfovec_1d_00132- g_tmp_dfovec_1d_00133- g_tmp_dfovec_1d_00134;
829         fvec(3)= tmp_dfovec_1d_00131+ tmp_dfovec_1d_00132- tmp_dfovec_1d_00133- tmp_dfovec_1d_00134+ 1.57;
830         g_tmp_x_00095= g_x(7);
831         tmp_x_00095= x(7);
832         g_tmp_x_00096= g_x(1);
833         tmp_x_00096= x(1);
834         g_tmp_dfovec_1d_00135= g_tmp_x_00095* tmp_x_00096+ tmp_x_00095* g_tmp_x_00096;
835         tmp_dfovec_1d_00135= tmp_x_00095* tmp_x_00096;
836         g_tmp_x_00097= g_x(8);
837         tmp_x_00097= x(8);
838         g_tmp_x_00098= g_x(2);
839         tmp_x_00098= x(2);
840         g_tmp_dfovec_1d_00136= g_tmp_x_00097* tmp_x_00098+ tmp_x_00097* g_tmp_x_00098;
841         tmp_dfovec_1d_00136= tmp_x_00097* tmp_x_00098;
842         g_tmp_x_00099= g_x(5);
843         tmp_x_00099= x(5);
844         g_tmp_x_00100= g_x(3);
845         tmp_x_00100= x(3);
846         g_tmp_dfovec_1d_00137= g_tmp_x_00099* tmp_x_00100+ tmp_x_00099* g_tmp_x_00100;
847         tmp_dfovec_1d_00137= tmp_x_00099* tmp_x_00100;
848         g_tmp_x_00101= g_x(6);
849         tmp_x_00101= x(6);
850         g_tmp_x_00102= g_x(4);
851         tmp_x_00102= x(4);
852         g_tmp_dfovec_1d_00138= g_tmp_x_00101* tmp_x_00102+ tmp_x_00101* g_tmp_x_00102;
853         tmp_dfovec_1d_00138= tmp_x_00101* tmp_x_00102;
854         g_fvec(4)= g_tmp_dfovec_1d_00135+ g_tmp_dfovec_1d_00136+ g_tmp_dfovec_1d_00137+ g_tmp_dfovec_1d_00138;
855         fvec(4)= tmp_dfovec_1d_00135+ tmp_dfovec_1d_00136+ tmp_dfovec_1d_00137+ tmp_dfovec_1d_00138+ 1.31;
856         g_tmp_x_00103= g_x(1);
857         tmp_x_00103= x(1);
858         g_tmp_x_00104= g_x(5);
859         tmp_x_00104= x(5);
860         g_tmp_dfovec_1d_00139= adimat_g_pow_left(g_tmp_x_00104, tmp_x_00104, 2);
861         tmp_dfovec_1d_00139= tmp_x_00104^ 2;
862         g_tmp_x_00105= g_x(7);
863         tmp_x_00105= x(7);
864         g_tmp_dfovec_1d_00140= adimat_g_pow_left(g_tmp_x_00105, tmp_x_00105, 2);
865         tmp_dfovec_1d_00140= tmp_x_00105^ 2;
866         g_tmp_dfovec_1d_00141= g_tmp_dfovec_1d_00139- g_tmp_dfovec_1d_00140;
867         tmp_dfovec_1d_00141= tmp_dfovec_1d_00139- tmp_dfovec_1d_00140;
868         g_tmp_dfovec_1d_00142= g_tmp_x_00103* tmp_dfovec_1d_00141+ tmp_x_00103* g_tmp_dfovec_1d_00141;
869         tmp_dfovec_1d_00142= tmp_x_00103* tmp_dfovec_1d_00141;
870         g_tmp_x_00106= g_x(3);
871         tmp_x_00106= x(3);
872         g_tmp_dfovec_1d_00143= 2.0* g_tmp_x_00106* tmp_x_00104* tmp_x_00105+ 2.0* tmp_x_00106* g_tmp_x_00104* tmp_x_00105+ 2.0* tmp_x_00106* tmp_x_00104* g_tmp_x_00105;
873         tmp_dfovec_1d_00143= 2.0* tmp_x_00106* tmp_x_00104* tmp_x_00105;
874         g_tmp_x_00107= g_x(2);
875         tmp_x_00107= x(2);
876         g_tmp_x_00108= g_x(6);
877         tmp_x_00108= x(6);
878         g_tmp_dfovec_1d_00144= adimat_g_pow_left(g_tmp_x_00108, tmp_x_00108, 2);
879         tmp_dfovec_1d_00144= tmp_x_00108^ 2;
880         g_tmp_x_00109= g_x(8);
881         tmp_x_00109= x(8);
882         g_tmp_dfovec_1d_00145= adimat_g_pow_left(g_tmp_x_00109, tmp_x_00109, 2);
883         tmp_dfovec_1d_00145= tmp_x_00109^ 2;
884         g_tmp_dfovec_1d_00146= g_tmp_dfovec_1d_00144- g_tmp_dfovec_1d_00145;
885         tmp_dfovec_1d_00146= tmp_dfovec_1d_00144- tmp_dfovec_1d_00145;
886         g_tmp_dfovec_1d_00147= g_tmp_x_00107* tmp_dfovec_1d_00146+ tmp_x_00107* g_tmp_dfovec_1d_00146;
887         tmp_dfovec_1d_00147= tmp_x_00107* tmp_dfovec_1d_00146;
888         g_tmp_x_00110= g_x(4);
889         tmp_x_00110= x(4);
890         g_tmp_dfovec_1d_00148= 2.0* g_tmp_x_00110* tmp_x_00108* tmp_x_00109+ 2.0* tmp_x_00110* g_tmp_x_00108* tmp_x_00109+ 2.0* tmp_x_00110* tmp_x_00108* g_tmp_x_00109;
891         tmp_dfovec_1d_00148= 2.0* tmp_x_00110* tmp_x_00108* tmp_x_00109;
892         g_fvec(5)= g_tmp_dfovec_1d_00142- g_tmp_dfovec_1d_00143+ g_tmp_dfovec_1d_00147- g_tmp_dfovec_1d_00148;
893         fvec(5)= tmp_dfovec_1d_00142- tmp_dfovec_1d_00143+ tmp_dfovec_1d_00147- tmp_dfovec_1d_00148+ 2.65;
894         g_tmp_x_00111= g_x(3);
895         tmp_x_00111= x(3);
896         g_tmp_x_00112= g_x(5);
897         tmp_x_00112= x(5);
898         g_tmp_dfovec_1d_00149= adimat_g_pow_left(g_tmp_x_00112, tmp_x_00112, 2);
899         tmp_dfovec_1d_00149= tmp_x_00112^ 2;
900         g_tmp_x_00113= g_x(7);
901         tmp_x_00113= x(7);
902         g_tmp_dfovec_1d_00150= adimat_g_pow_left(g_tmp_x_00113, tmp_x_00113, 2);
903         tmp_dfovec_1d_00150= tmp_x_00113^ 2;
904         g_tmp_dfovec_1d_00151= g_tmp_dfovec_1d_00149- g_tmp_dfovec_1d_00150;
905         tmp_dfovec_1d_00151= tmp_dfovec_1d_00149- tmp_dfovec_1d_00150;
906         g_tmp_dfovec_1d_00152= g_tmp_x_00111* tmp_dfovec_1d_00151+ tmp_x_00111* g_tmp_dfovec_1d_00151;
907         tmp_dfovec_1d_00152= tmp_x_00111* tmp_dfovec_1d_00151;
908         g_tmp_x_00114= g_x(1);
909         tmp_x_00114= x(1);
910         g_tmp_dfovec_1d_00153= 2.0* g_tmp_x_00114* tmp_x_00112* tmp_x_00113+ 2.0* tmp_x_00114* g_tmp_x_00112* tmp_x_00113+ 2.0* tmp_x_00114* tmp_x_00112* g_tmp_x_00113;
911         tmp_dfovec_1d_00153= 2.0* tmp_x_00114* tmp_x_00112* tmp_x_00113;
912         g_tmp_x_00115= g_x(4);
913         tmp_x_00115= x(4);
914         g_tmp_x_00116= g_x(6);
915         tmp_x_00116= x(6);
916         g_tmp_dfovec_1d_00154= adimat_g_pow_left(g_tmp_x_00116, tmp_x_00116, 2);
917         tmp_dfovec_1d_00154= tmp_x_00116^ 2;
918         g_tmp_x_00117= g_x(8);
919         tmp_x_00117= x(8);
920         g_tmp_dfovec_1d_00155= adimat_g_pow_left(g_tmp_x_00117, tmp_x_00117, 2);
921         tmp_dfovec_1d_00155= tmp_x_00117^ 2;
922         g_tmp_dfovec_1d_00156= g_tmp_dfovec_1d_00154- g_tmp_dfovec_1d_00155;
923         tmp_dfovec_1d_00156= tmp_dfovec_1d_00154- tmp_dfovec_1d_00155;
924         g_tmp_dfovec_1d_00157= g_tmp_x_00115* tmp_dfovec_1d_00156+ tmp_x_00115* g_tmp_dfovec_1d_00156;
925         tmp_dfovec_1d_00157= tmp_x_00115* tmp_dfovec_1d_00156;
926         g_tmp_x_00118= g_x(2);
927         tmp_x_00118= x(2);
928         g_tmp_dfovec_1d_00158= 2.0* g_tmp_x_00118* tmp_x_00116* tmp_x_00117+ 2.0* tmp_x_00118* g_tmp_x_00116* tmp_x_00117+ 2.0* tmp_x_00118* tmp_x_00116* g_tmp_x_00117;
929         tmp_dfovec_1d_00158= 2.0* tmp_x_00118* tmp_x_00116* tmp_x_00117;
930         g_fvec(6)= g_tmp_dfovec_1d_00152+ g_tmp_dfovec_1d_00153+ g_tmp_dfovec_1d_00157+ g_tmp_dfovec_1d_00158;
931         fvec(6)= tmp_dfovec_1d_00152+ tmp_dfovec_1d_00153+ tmp_dfovec_1d_00157+ tmp_dfovec_1d_00158- 2.0;
932         g_tmp_x_00119= g_x(1);
933         tmp_x_00119= x(1);
934         g_tmp_x_00120= g_x(5);
935         tmp_x_00120= x(5);
936         g_tmp_dfovec_1d_00159= adimat_g_pow_left(g_tmp_x_00120, tmp_x_00120, 2);
937         tmp_dfovec_1d_00159= tmp_x_00120^ 2;
938         g_tmp_x_00121= g_x(7);
939         tmp_x_00121= x(7);
940         g_tmp_dfovec_1d_00160= adimat_g_pow_left(g_tmp_x_00121, tmp_x_00121, 2);
941         tmp_dfovec_1d_00160= tmp_x_00121^ 2;
942         g_tmp_dfovec_1d_00161= 3.0* g_tmp_dfovec_1d_00160;
943         tmp_dfovec_1d_00161= 3.0* tmp_dfovec_1d_00160;
944         g_tmp_dfovec_1d_00162= g_tmp_dfovec_1d_00159- g_tmp_dfovec_1d_00161;
945         tmp_dfovec_1d_00162= tmp_dfovec_1d_00159- tmp_dfovec_1d_00161;
946         g_tmp_dfovec_1d_00163= g_tmp_x_00119* tmp_x_00120* tmp_dfovec_1d_00162+ tmp_x_00119* g_tmp_x_00120* tmp_dfovec_1d_00162+ tmp_x_00119* tmp_x_00120* g_tmp_dfovec_1d_00162;
947         tmp_dfovec_1d_00163= tmp_x_00119* tmp_x_00120* tmp_dfovec_1d_00162;
948         g_tmp_x_00122= g_x(3);
949         tmp_x_00122= x(3);
950         g_tmp_dfovec_1d_00164= 3.0* g_tmp_dfovec_1d_00159;
951         tmp_dfovec_1d_00164= 3.0* tmp_dfovec_1d_00159;
952         g_tmp_dfovec_1d_00165= g_tmp_dfovec_1d_00160- g_tmp_dfovec_1d_00164;
953         tmp_dfovec_1d_00165= tmp_dfovec_1d_00160- tmp_dfovec_1d_00164;
954         g_tmp_dfovec_1d_00166= g_tmp_x_00122* tmp_x_00121* tmp_dfovec_1d_00165+ tmp_x_00122* g_tmp_x_00121* tmp_dfovec_1d_00165+ tmp_x_00122* tmp_x_00121* g_tmp_dfovec_1d_00165;
955         tmp_dfovec_1d_00166= tmp_x_00122* tmp_x_00121* tmp_dfovec_1d_00165;
956         g_tmp_x_00123= g_x(2);
957         tmp_x_00123= x(2);
958         g_tmp_x_00124= g_x(6);
959         tmp_x_00124= x(6);
960         g_tmp_dfovec_1d_00167= adimat_g_pow_left(g_tmp_x_00124, tmp_x_00124, 2);
961         tmp_dfovec_1d_00167= tmp_x_00124^ 2;
962         g_tmp_x_00125= g_x(8);
963         tmp_x_00125= x(8);
964         g_tmp_dfovec_1d_00168= adimat_g_pow_left(g_tmp_x_00125, tmp_x_00125, 2);
965         tmp_dfovec_1d_00168= tmp_x_00125^ 2;
966         g_tmp_dfovec_1d_00169= 3.0* g_tmp_dfovec_1d_00168;
967         tmp_dfovec_1d_00169= 3.0* tmp_dfovec_1d_00168;
968         g_tmp_dfovec_1d_00170= g_tmp_dfovec_1d_00167- g_tmp_dfovec_1d_00169;
969         tmp_dfovec_1d_00170= tmp_dfovec_1d_00167- tmp_dfovec_1d_00169;
970         g_tmp_dfovec_1d_00171= g_tmp_x_00123* tmp_x_00124* tmp_dfovec_1d_00170+ tmp_x_00123* g_tmp_x_00124* tmp_dfovec_1d_00170+ tmp_x_00123* tmp_x_00124* g_tmp_dfovec_1d_00170;
971         tmp_dfovec_1d_00171= tmp_x_00123* tmp_x_00124* tmp_dfovec_1d_00170;
972         g_tmp_x_00126= g_x(4);
973         tmp_x_00126= x(4);
974         g_tmp_dfovec_1d_00172= 3.0* g_tmp_dfovec_1d_00167;
975         tmp_dfovec_1d_00172= 3.0* tmp_dfovec_1d_00167;
976         g_tmp_dfovec_1d_00173= g_tmp_dfovec_1d_00168- g_tmp_dfovec_1d_00172;
977         tmp_dfovec_1d_00173= tmp_dfovec_1d_00168- tmp_dfovec_1d_00172;
978         g_tmp_dfovec_1d_00174= g_tmp_x_00126* tmp_x_00125* tmp_dfovec_1d_00173+ tmp_x_00126* g_tmp_x_00125* tmp_dfovec_1d_00173+ tmp_x_00126* tmp_x_00125* g_tmp_dfovec_1d_00173;
979         tmp_dfovec_1d_00174= tmp_x_00126* tmp_x_00125* tmp_dfovec_1d_00173;
980         g_fvec(7)= g_tmp_dfovec_1d_00163+ g_tmp_dfovec_1d_00166+ g_tmp_dfovec_1d_00171+ g_tmp_dfovec_1d_00174;
981         fvec(7)= tmp_dfovec_1d_00163+ tmp_dfovec_1d_00166+ tmp_dfovec_1d_00171+ tmp_dfovec_1d_00174+ 12.6;
982         g_tmp_x_00127= g_x(3);
983         tmp_x_00127= x(3);
984         g_tmp_x_00128= g_x(5);
985         tmp_x_00128= x(5);
986         g_tmp_dfovec_1d_00175= adimat_g_pow_left(g_tmp_x_00128, tmp_x_00128, 2);
987         tmp_dfovec_1d_00175= tmp_x_00128^ 2;
988         g_tmp_x_00129= g_x(7);
989         tmp_x_00129= x(7);
990         g_tmp_dfovec_1d_00176= adimat_g_pow_left(g_tmp_x_00129, tmp_x_00129, 2);
991         tmp_dfovec_1d_00176= tmp_x_00129^ 2;
992         g_tmp_dfovec_1d_00177= 3.0* g_tmp_dfovec_1d_00176;
993         tmp_dfovec_1d_00177= 3.0* tmp_dfovec_1d_00176;
994         g_tmp_dfovec_1d_00178= g_tmp_dfovec_1d_00175- g_tmp_dfovec_1d_00177;
995         tmp_dfovec_1d_00178= tmp_dfovec_1d_00175- tmp_dfovec_1d_00177;
996         g_tmp_dfovec_1d_00179= g_tmp_x_00127* tmp_x_00128* tmp_dfovec_1d_00178+ tmp_x_00127* g_tmp_x_00128* tmp_dfovec_1d_00178+ tmp_x_00127* tmp_x_00128* g_tmp_dfovec_1d_00178;
997         tmp_dfovec_1d_00179= tmp_x_00127* tmp_x_00128* tmp_dfovec_1d_00178;
998         g_tmp_x_00130= g_x(1);
999         tmp_x_00130= x(1);
1000         g_tmp_dfovec_1d_00180= 3.0* g_tmp_dfovec_1d_00175;
1001         tmp_dfovec_1d_00180= 3.0* tmp_dfovec_1d_00175;
1002         g_tmp_dfovec_1d_00181= g_tmp_dfovec_1d_00176- g_tmp_dfovec_1d_00180;
1003         tmp_dfovec_1d_00181= tmp_dfovec_1d_00176- tmp_dfovec_1d_00180;
1004         g_tmp_dfovec_1d_00182= g_tmp_x_00130* tmp_x_00129* tmp_dfovec_1d_00181+ tmp_x_00130* g_tmp_x_00129* tmp_dfovec_1d_00181+ tmp_x_00130* tmp_x_00129* g_tmp_dfovec_1d_00181;
1005         tmp_dfovec_1d_00182= tmp_x_00130* tmp_x_00129* tmp_dfovec_1d_00181;
1006         g_tmp_x_00131= g_x(4);
1007         tmp_x_00131= x(4);
1008         g_tmp_x_00132= g_x(6);
1009         tmp_x_00132= x(6);
1010         g_tmp_dfovec_1d_00183= adimat_g_pow_left(g_tmp_x_00132, tmp_x_00132, 2);
1011         tmp_dfovec_1d_00183= tmp_x_00132^ 2;
1012         g_tmp_x_00133= g_x(8);
1013         tmp_x_00133= x(8);
1014         g_tmp_dfovec_1d_00184= adimat_g_pow_left(g_tmp_x_00133, tmp_x_00133, 2);
1015         tmp_dfovec_1d_00184= tmp_x_00133^ 2;
1016         g_tmp_dfovec_1d_00185= 3.0* g_tmp_dfovec_1d_00184;
1017         tmp_dfovec_1d_00185= 3.0* tmp_dfovec_1d_00184;
1018         g_tmp_dfovec_1d_00186= g_tmp_dfovec_1d_00183- g_tmp_dfovec_1d_00185;
1019         tmp_dfovec_1d_00186= tmp_dfovec_1d_00183- tmp_dfovec_1d_00185;
1020         g_tmp_dfovec_1d_00187= g_tmp_x_00131* tmp_x_00132* tmp_dfovec_1d_00186+ tmp_x_00131* g_tmp_x_00132* tmp_dfovec_1d_00186+ tmp_x_00131* tmp_x_00132* g_tmp_dfovec_1d_00186;
1021         tmp_dfovec_1d_00187= tmp_x_00131* tmp_x_00132* tmp_dfovec_1d_00186;
1022         g_tmp_x_00134= g_x(2);
1023         tmp_x_00134= x(2);
1024         g_tmp_dfovec_1d_00188= 3.0* g_tmp_dfovec_1d_00183;
1025         tmp_dfovec_1d_00188= 3.0* tmp_dfovec_1d_00183;
1026         g_tmp_dfovec_1d_00189= g_tmp_dfovec_1d_00184- g_tmp_dfovec_1d_00188;
1027         tmp_dfovec_1d_00189= tmp_dfovec_1d_00184- tmp_dfovec_1d_00188;
1028         g_tmp_dfovec_1d_00190= g_tmp_x_00134* tmp_x_00133* tmp_dfovec_1d_00189+ tmp_x_00134* g_tmp_x_00133* tmp_dfovec_1d_00189+ tmp_x_00134* tmp_x_00133* g_tmp_dfovec_1d_00189;
1029         tmp_dfovec_1d_00190= tmp_x_00134* tmp_x_00133* tmp_dfovec_1d_00189;
1030         g_fvec(8)= g_tmp_dfovec_1d_00179- g_tmp_dfovec_1d_00182+ g_tmp_dfovec_1d_00187- g_tmp_dfovec_1d_00190;
1031         fvec(8)= tmp_dfovec_1d_00179- tmp_dfovec_1d_00182+ tmp_dfovec_1d_00187- tmp_dfovec_1d_00190- 9.48;
1032
1033   end
1034
1035   % The one helper function left over from adimat
1036   function [g_z z] = adimat_g_pow_left(g_a, a, b)
1037        z = a^b;
1038        if isscalar(a) && isscalar(b)
1039            g_z = g_a .* b .* (a .^ (b - 1));
1040        elseif isscalar(b)
1041            if b == 1
1042                g_z = g_a;
1043            elseif mod(b, 1) == 0 && b > 1
1044                g_z = g_a * (a^(b-1));
1045                for i=1:b-1
1046                    g_z = g_z + (a^i) * g_a * (a^(b-i-1));
1047                end
1048            else
1049                error('adimat:adimat_g_pow', '%s', ...
1050                    ['Differentiation of A^b, where A is a square matrix and b is scalar, ' ...
1051                    'but not an integer > 1, is not supported.']);
1052            end
1053        elseif isscalar(a)
1054            error('adimat:adimat_g_pow', '%s', ...
1055                ['Differentiation of a^B, where a is scalar and B is a ' ...
1056                'square matrix, is not supported.']);
1057        else
1058            error('adimat:adimat_g_pow', '%s', ...
1059                'A^B, where both X and Y are matrices, is not allowed in Matlab');
1060        end
1061    end
1062end
1063