Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 #include "rt_nonfinite.h"
00012 #include "Optimal_affine_tracking_3d16_fast_realtime.h"
00013 #include "gradient.h"
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 void gradient(const real_T f[168021], real_T varargout_1[168021], real_T
00027 varargout_2[168021])
00028 {
00029 int32_T i1;
00030 int32_T i2;
00031 int32_T j;
00032 int32_T k;
00033 i1 = -1;
00034 i2 = 167639;
00035 for (j = 0; j < 381; j++) {
00036 i1++;
00037 i2++;
00038 varargout_1[i1] = f[i1 + 381] - f[i1];
00039 for (k = 0; k < 439; k++) {
00040 varargout_1[i1 + (k + 1) * 381] = (f[i1 + (k + 2) * 381] - f[i1 + k * 381])
00041 / 2.0;
00042 }
00043
00044 varargout_1[i2] = f[i2] - f[i2 - 381];
00045 }
00046
00047 i2 = -1;
00048 for (j = 0; j < 441; j++) {
00049 i1 = i2 + 1;
00050 i2 += 381;
00051 varargout_2[i1] = f[i1 + 1] - f[i1];
00052 for (k = 0; k < 379; k++) {
00053 varargout_2[(i1 + k) + 1] = (f[(i1 + k) + 2] - f[i1 + k]) / 2.0;
00054 }
00055
00056 varargout_2[i2] = f[i2] - f[i2 - 1];
00057 }
00058 }
00059
00060