if(size(G_Ti,1)>2)
nextF = G_Ti(end,1)*4;
calc = size(G_Ti,1)+(-1:0);
- nextTime = [nextS neville2(G_Ti(calc,1)',G_Ti(calc,2)',nextF) ...
- neville2(G_Ti(calc,1)',G_Ti(calc,3)',nextF) ...
- neville2(G_Ti(calc,1)',G_Ti(calc,4)',nextF)]
+ nextTime = [nextF neville2(G_Ti(calc,1)',G_Ti(calc,2)',nextF) ...
+ neville2(G_Ti(calc,1)',G_Ti(calc,3)',nextF)]
%overFlowTime = neville2(G_Ti(size(G_Ti,1)+(-1:0),1)',sum(G_Ti(size(G_Ti,1)+(-1:0),2:4),2)',4500)
end
[coordinates_fine,elements_fine,neigh_fine,f2s]=refineQuad(G_C,G_E,G_N,2);
time(1) = toc;
-
-
+ b = sqrt(sum(quadNorm(coordinates_fine,elements_fine,'w').^2,2));
+
tic
dataAniso = size(G_E,1);
for i = 1:length(type)
A_fine = mex_build_AU(coordinates_fine,elements_fine,mu(i),type(i));
- b = sqrt(sum(quadNorm(coordinates_fine,elements_fine,'w').^2,2));
-
x_fine = A_fine\b;
xe_fine = x_fine'*A_fine*x_fine;
ind = computeEstSlpMuTilde(x_fine,G_C,G_E,f2s);
- dataAniso = [dataAniso type sqrt(sum(ind)) xe_fine];
+ dataAniso = [dataAniso type(i) sqrt(sum(ind)) xe_fine];
end
time(2) = toc;
[coordinates_fine,elements_fine,neigh_fine,f2s,er]=refineQuad(G_C,G_E,G_N,2);
time(1) = toc;
+ b = sqrt(sum(quadNorm(coordinates_fine,elements_fine,'w').^2,2));
+
tic
dataIso = size(G_E,1);
- for i = type
+ for i = 1:length(type)
A_fine = mex_build_AU(coordinates_fine,elements_fine,mu(i),type(i));
- b = sqrt(sum(quadNorm(coordinates_fine,elements_fine,'w').^2,2));
-
x_fine = A_fine\b;
xe_fine = x_fine'*A_fine*x_fine;
ind = computeEstSlpMuTilde(x_fine,G_C,G_E,f2s);
- dataIso = [dataIso type sqrt(sum(ind)) xe_fine];
+ dataIso = [dataIso type(i) sqrt(sum(ind)) xe_fine];
end
time(2) = toc;
\r
int i, j, k; //Schleifenindizes\r
double tmp; //Zwischenspeicherung der Einzelnen Werte\r
+ int count;\r
\r
//Sicherheitsabfragen zu Datengroessen\r
if ((nrhs != 4))\r
double * E = mxGetPr(prhs[1]);\r
\r
double mu = *(mxGetPr(prhs[2]));\r
- int type = *(mxGetPr(prhs[3]));\r
+ int type = (int) *(mxGetPr(prhs[3]));\r
\r
//Initialisieren der Hilfsvektoren\r
\r
//LageInformationen\r
int rx, rxa, rxb, ry, rya, ryb;\r
\r
+ cout << " Progress: #";\r
+ count = 0;\r
//Ausrechnen\r
for (j = 0; j < em; ++j) {\r
x0[0] = C[(int) E[j] - 1];\r
}\r
}\r
\r
- for (k = 0; k < em; ++k) {\r
+ for (k = j; k < em; ++k) {\r
y0[0] = C[(int) E[k] - 1];\r
y0[1] = C[cm + (int) E[k] - 1];\r
y0[2] = C[2 * cm + (int) E[k] - 1];\r
\r
}\r
A[(k * em) + j] = 1. / (4 * M_PI) * tmp;\r
+ if(k!=j)\r
+ A[(j * em) + k] = 1. / (4 * M_PI) * tmp;\r
+ if(count++ > ((em*(em+1))/2)/10){\r
+ count = 0;\r
+ cout << "#";\r
+ cout.flush();\r
+ }\r
\r
}\r
\r
}\r
+ cout << endl;\r
//Rueckgabe (eventuell zurueck schreiben)\r
//mxFree(x0);\r
//mxFree(x1);\r