\r
using namespace std;\r
\r
+inline int dimOfVec(double * vec)\r
+{\r
+ if (vec[2] != 0)\r
+ return 2;\r
+ else if (vec[1] != 0)\r
+ return 1;\r
+ else\r
+ return 0;\r
+}\r
+\r
+\r
void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[]) {\r
\r
int i, j, k;\r
\r
// Lageeigenschaften des Flaechenstuecks\r
//if(xn[0]*xn[0]+xn[1]*xn[1]<xn[2]*xn[2])\r
- if (xn[2] != 0)\r
- rx = 2;\r
- else if (xn[1] != 0)\r
- rx = 1;\r
- else\r
- rx = 0;\r
-\r
- if (xa[2] != 0)\r
- rxa = 2;\r
- else if (xa[1] != 0)\r
- rxa = 1;\r
- else\r
- rxa = 0;\r
-\r
- if (xb[2] != 0)\r
- rxb = 2;\r
- else if (xb[1] != 0)\r
- rxb = 1;\r
- else\r
- rxb = 0;\r
+\r
+ rx = dimOfVec(xn);\r
+\r
+ rxa = dimOfVec(xa);\r
+\r
+ rxb = dimOfVec(xb);\r
+\r
\r
//kleinste Ecke finden und fuer \delta verwenden\r
\r
yn[1] = (ya[2]) * (yb[0]) - (ya[0]) * (yb[2]);\r
yn[2] = (ya[0]) * (yb[1]) - (ya[1]) * (yb[0]);\r
\r
- if (yn[2] != 0)\r
- ry = 2;\r
- else if (yn[1] != 0)\r
- ry = 1;\r
- else\r
- ry = 0;\r
-\r
- if (ya[2] != 0)\r
- rya = 2;\r
- else if (ya[1] != 0)\r
- rya = 1;\r
- else\r
- rya = 0;\r
-\r
- if (yb[2] != 0)\r
- ryb = 2;\r
- else if (yb[1] != 0)\r
- ryb = 1;\r
- else\r
- ryb = 0;\r
+ ry = dimOfVec(yn);\r
+\r
+ rya = dimOfVec(ya);\r
+\r
+ ryb = dimOfVec(yb);\r
\r
//kleinste Ecke finden und fuer \delta verwenden\r
\r
// d[i] = y0[i]-x0[i];\r
\r
\r
- if(ry = rx){\r
+ if(ry == rx){\r
\r
if(xa[rxa]*xa[rxa]+xb[rxb]*xb[rxb]>ya[rya]*ya[rya]+yb[ryb]*yb[ryb]){\r
\r
printf(" | ");\r
*/\r
\r
- printf("(%3.d %3.d)",j,k);\r
-\r
vtmp = xa; xa = ya; ya = vtmp;\r
vtmp = xb; xb = yb; yb = vtmp;\r
\r
itmp = rxa; rxa = rya; rya = itmp;\r
itmp = rxb; rxb = ryb; ryb = itmp;\r
-\r
itmp = rx; rx = ry; ry = itmp;\r
\r
for (i = 0; i<3;++i)\r
}\r
\r
}\r
- printf("\n");\r
+ //printf("\n");\r
//Rueckgabe (eventuell zurueck schreiben)\r
// mxFree(x0);\r
//mxFree(x1);\r
\r
+mex mex_build_As1.cpp slpRectangle.cpp\r
+\r
dataIso =[];\r
dataAniso =[];\r
maxSize = 10^2;\r
\r
%Matrix mit feinem Netz berechnen\r
A_fine = mex_build_As1(coordinates_fine,elements_fine);\r
- eh = A_fine-mex_build_A(coordinates_fine,elements_fine);\r
- figure (3)\r
+ A2 = mex_build_A(coordinates_fine,elements_fine);\r
+ \r
+% figure(1)\r
+% spy(A_fine-A_fine')\r
+% \r
+% figure (2)\r
+% spy(A2-A2')\r
+ eh = A_fine - A2;\r
+% sum(sum(abs(A2-A2')))\r
+% sum(sum(abs(A_fine-A_fine')))\r
+ \r
spy(eh)\r
\r
- sum(sum(eh))\r
+ sum(sum(abs(eh)))\r
if(eh.^2)\r
disp 'hä'\r
end\r