From: treecity Date: Tue, 13 Mar 2012 12:42:12 +0000 (+0000) Subject: [doc] Beispiele Eingebunden \ X-Git-Url: https://git.leopard-lacewing.eu/?a=commitdiff_plain;h=2f6bc407124e8d0f6a928c524997d96d4f238a03;p=bacc.git [doc] Beispiele Eingebunden \ [src] test_sol noch mal modifiziert zum testen auf sol\ [src] export_mesh speichert tex Tabellen und eps git-svn-id: https://drops.fb12.tu-berlin.de/svn/bacc/trunk@101 26120e32-c555-405d-b3e1-1f783fb42516 --- diff --git a/src/A_plots.m b/src/A_plots.m index 0fbf3d8..b4e06a1 100644 --- a/src/A_plots.m +++ b/src/A_plots.m @@ -7,13 +7,15 @@ X = []; leg1 = {}; leg2 = {}; leg3 = {}; +leg4 = {}; + for i = 1:length(files) load(files{i}); [m n] = size(data); - step = round(n/3); + step = round(n/4); if step<1 disp (['Error: No Data to show. : ' i]) continue; @@ -28,25 +30,27 @@ for i = 1:length(files) end G_D = [G_D data(:,2:end)]; - X = [X repmat(data(:,1),1,step*3)]; + X = [X repmat(data(:,1),1,step*4)]; p1 = find(files{i}=='/',1,'last')+1; p2 = find(files{i}(p1:end)=='_',1); l0 = [files{i}(p1:p1+p2-2) ' ']; - l1 = {type2str{data(1,[2+(0:step-1)*3])}}; + l1 = {type2str{data(1,[2+(0:step-1)*4])}}; l2 ={}; l3 ={}; l4 ={}; for i = 1:step l2{i} = [ l0 l1{i}]; - l3{i} = ['\mu ' l0 l1{i}]; - l4{i} = ['error ' l0 l1{i}]; + l3{i} = ['C^{-1}\mu ' l0 l1{i}]; + l4{i} = ['\mu ' l0 l1{i}]; + l5{i} = ['error ' l0 l1{i}]; end leg1 = {leg1{:} l2{:}}'; leg2 = {leg2{:} l3{:}}'; leg3 = {leg3{:} l4{:}}'; + leg4 = {leg4{:} l5{:}}'; end @@ -57,7 +61,7 @@ if step<1 disp ('Error: No Data to show.') else - data((end-8):end,[1 3 4]) + data((end-8):end,[1 3 4 5]) sol = interp1(1./X((1):(end-2),3)',G_D((1):(end-2),3)',0,'spline') % sol = 8.28466; @@ -65,22 +69,24 @@ else figure(4) loglog(X(:,[2+(0:step-1)*3]),G_D(:,[2+(0:step-1)*3]),'--o') hold on +loglog(X(:,[3+(0:step-1)*3]), G_D(:,3+(0:step-1)*3)*G_D(1,2)/G_D(1,3),':x') +loglog(X(:,[4+(0:step-1)*3]), sqrt(abs(sol -G_D(:,4+(0:step-1)*3)))*G_D(1,2)/sqrt(abs(sol-G_D(1,4))),'-*') loglog(X(:,1),[20*X(:,1).^(-1/2),6*X(:,1).^(-1/4),5*X(:,1).^(-3/4)],'-.') -loglog(X(:,[3+(0:step-1)*3]), sqrt(abs(sol -G_D(:,3+(0:step-1)*3)))*G_D(1,2)/sqrt(abs(sol-G_D(1,3))),'-*') + hold off title('Fehler') xlabel('Elemente'); ylabel('Schaetzer'); -legend({leg2{:}... +legend({leg2{:} leg3{:} leg4{:}... 'N^{-1/2}' 'N^{-1/4}' 'N^{-3/4}'... - leg3{:}} ,'location','southwest','box', 'off'); + } ,'location','southwest','box', 'off'); print('-r600','-depsc',[printt '_error.eps']) figure(5) -loglog(X(:,[3+(0:step-1)*3]),G_D(:,[3+(0:step-1)*3]),'-*',X(:,1),repmat(sol,size(X,1),1),'-.') -ylim([min(min(G_D(:,[3+(0:step-1)*3]))) 1.005*max(max(G_D(:,[3+(0:step-1)*3])))]) +loglog(X(:,[4+(0:step-1)*3]),G_D(:,[4+(0:step-1)*3]),'-*',X(:,1),repmat(sol,size(X,1),1),'-.') +ylim([min(min(G_D(:,[4+(0:step-1)*3]))) 1.005*max(max(G_D(:,[4+(0:step-1)*3])))]) title('Energie Norm') xlabel('Elemente'); ylabel('eNorm^2'); diff --git a/src/A_run.m b/src/A_run.m index d3a5131..be5943d 100644 --- a/src/A_run.m +++ b/src/A_run.m @@ -27,12 +27,12 @@ for i = 1:times %benötigte Zeit Schätzen if(size(G_T,1)>2) nextF = G_T(end,1)*4; - nextS = neville2(1:size(G_T,1),G_T(:,1)',size(G_T,1)+1); + nextS = interp1(1:size(G_T,1),G_T(:,1)',size(G_T,1)+1,'slpine'); cald = size(G_T,1)+(-1:0); calc = size(G_T,1)+(-2:0); - nextTime = [nextS neville2(G_T(calc,1)',G_T(calc,2)',nextF) ... - neville2(G_T(cald,1)',G_T(cald,3)',nextF) ... - neville2(G_T(calc,1)',G_T(calc,4)',nextS)]; + nextTime = [nextS interp1(G_T(calc,1)',G_T(calc,2)',nextF,'spline') ... + interp1(G_T(cald,1)',G_T(cald,3)',nextF,'spline') ... + interp1(G_T(calc,1)',G_T(calc,4)',nextS,'spline')]; end % Ein kompletter Verfeinerungschritt diff --git a/src/A_step.m b/src/A_step.m index 6406fb9..7215497 100644 --- a/src/A_step.m +++ b/src/A_step.m @@ -63,15 +63,31 @@ time = zeros(1,3); %Lösung Berechnen x_fine = A_fine\b; - %Energienorm^2 Berechnen - xe_fine = x_fine'*A_fine*x_fine; %Fehlerschätzer aufbauen ind = computeEstSlpMuTilde(x_fine,G_C,G_E,f2s); + %Fehlerschätzer 2 aufbauen + A = mex_build_AU(G_C,G_E,mu,type(i)); + x = A\(sqrt(sum(quadNorm(G_C,G_E,'w').^2,2))); + xo_fine(f2s) = repmat(x,1,4); + xd_fine = xo_fine'-x_fine; + ind2 = xd_fine'*A_fine*xd_fine; + + + %Energienorm^2 Berechnen + xe_fine = x_fine'*A_fine*x_fine; +% xe_fine = x'*A*x; + +% sqrt(sum(ind)) +% ind2 + save_A{i} = A_fine; save_x{i} = x_fine; - data = [data type(i) sqrt(sum(ind)) xe_fine]; + + + + data = [data type(i) sqrt(sum(ind)) ind2 xe_fine]; end time(2) = toc; diff --git a/src/export_mesh.m b/src/export_mesh.m new file mode 100644 index 0000000..ff4f5b2 --- /dev/null +++ b/src/export_mesh.m @@ -0,0 +1,87 @@ +function export_mesh(coo, ele, nei, f2s, file) + +plotShape(coo,ele,'tb');view(2); +print('-r600','-depsc',['../doc/fig/' file '_ref.eps']) + +%% Koordinaten +fid = fopen(['../doc/fig/' file '_coo.tex'],'w'); +% fprintf(fid,'\\begin{figure}\n'); +fprintf(fid,'\\begin{tabular}{>{\\columncolor{gray}}rccc}\n'); +fprintf(fid,'\\rowcolor{gray}\n Index & x1 & x2 & x3\\\\'); + +[m n] =size(coo); + +for i = 1:m + if(i~=1) + fprintf(fid,'\\\\'); + end + fprintf(fid,'\n %d & %.4f & %.4f & %.4f',i,coo(i,1),coo(i,2),coo(i,3)); +end +fprintf(fid,'\n\\end{tabular}'); +% fprintf(fid,['\n\\caption{' file ' - Koordinaten}']); +% fprintf(fid,['\n\\label{' file ':coo}']); +% fprintf(fid,'\n\\end{figure}'); +fprintf(fid,'\n'); +fclose(fid); + +%% Elemente +fid = fopen(['../doc/fig/' file '_ele.tex'],'w'); +% fprintf(fid,'\\begin{figure}\n'); +fprintf(fid,'\\begin{tabular}{>{\\columncolor{gray}}rcccc}\n'); +fprintf(fid,'\\rowcolor{gray}\n Index & c1 & c2 & c3 & c4\\\\'); + +[m n] =size(ele); + +for i = 1:m + if(i~=1) + fprintf(fid,'\\\\'); + end + fprintf(fid,'\n %d & %d & %d & %d & %d',i,ele(i,1),ele(i,2),ele(i,3),ele(i,4)); +end +fprintf(fid,'\n\\end{tabular}'); +% fprintf(fid,['\n\\caption{' file ' - Elemente}']); +fprintf(fid,['\n\\label{' file ':ele}']); +% fprintf(fid,'\n\\end{figure}'); +fclose(fid); + +%% Nachbarn +fid = fopen(['../doc/fig/' file '_nei.tex'],'w'); +% fprintf(fid,'\\begin{figure}\n'); +fprintf(fid,'\\begin{tabular}{>{\\columncolor{gray}}rcccccccc}\n'); +fprintf(fid,'\\rowcolor{gray}\n Index & n1 & n2 & n3 & n4 & n5 & n6 & n7 & n8\\\\'); + +[m n] =size(nei); + +for i = 1:m + if(i~=1) + fprintf(fid,'\\\\'); + end + fprintf(fid,'\n %d & %d & %d & %d & %d & %d & %d & %d & %d',i,nei(i,1),nei(i,2),nei(i,3),nei(i,4),nei(i,5),nei(i,6),nei(i,7),nei(i,8)); +end +fprintf(fid,'\n\\end{tabular}'); +% fprintf(fid,['\n\\caption{' file ' - Nachbarn}']); +fprintf(fid,['\n\\label{' file ':nei}']); +% fprintf(fid,'\n\\end{figure}'); +fclose(fid); + +%% VaterSohn +fid = fopen(['../doc/fig/' file '_f2s.tex'],'w'); +% fprintf(fid,'\\begin{figure}\n'); +fprintf(fid,'\\begin{tabular}{>{\\columncolor{gray}}rcccc}\n'); +fprintf(fid,'\\rowcolor{gray}\n Index & e1 & e2 & e3 & e4\\\\'); + +[m n] =size(f2s); + +for i = 1:m + if(i~=1) + fprintf(fid,'\\\\'); + end + fprintf(fid,'\n %d & %d & %d & %d & %d',i,f2s(i,1),f2s(i,2),f2s(i,3),f2s(i,4)); +end +fprintf(fid,'\n\\end{tabular}'); +% fprintf(fid,['\n\\caption{' file ' - VaterSohn}']); +fprintf(fid,['\n\\label{' file ':f2s}']); +% fprintf(fid,'\n\\end{figure}'); +fclose(fid); +end + diff --git a/src/mex_build_AU.cpp b/src/mex_build_AU.cpp index 11eb404..7bc237e 100644 --- a/src/mex_build_AU.cpp +++ b/src/mex_build_AU.cpp @@ -4,35 +4,33 @@ * * */ - -#include +//#include #include -#include +//#include #include "mex.h" -#include +/*/#include //#include "gauss.hpp" - +*/ #define M_EPS 10e-8 - +/* //#include "tbb/parallel_for.h" - +*/ #include "slpRectangle.hpp" - -using namespace std; -using namespace slpR; - +/* +//using namespace std; +//using namespace slpR; +*/ int dimOfVec(double* vec) { - std::cout << ""; if (vec[2] != 0) return 2; else if (vec[1] != 0) return 1; else if (vec[0] != 0) return 0; - else { - cerr << "dimOfVec : (" << vec[0] << " " << vec[1] << " " << vec[2] - << ") alle Werte 0 \n"; + else {/* +// cerr << "dimOfVec : (" << vec[0] << " " << vec[1] << " " << vec[2] +// << ") alle Werte 0 \n";*/ return -1; } @@ -43,10 +41,10 @@ inline int dimOfThird(int a, int b) { } void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[]) { - +/* // initeQuad(); // cout << Quad[1].nod[0]; - +*/ int i, j, k; //Schleifenindizes double tmp; //Zwischenspeicherung der Einzelnen Werte int count; @@ -62,13 +60,13 @@ void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[]) { int cn = mxGetN(prhs[0]); if (cn != 3) mexErrMsgTxt("expected coordinates (Nx3)"); - cout << " Koordinaten:" << cm << endl; +// cout << " Koordinaten:" << cm << endl; int em = mxGetM(prhs[1]); int en = mxGetN(prhs[1]); if (en != 4) mexErrMsgTxt("expected elements (Mx4)"); - cout << " Elemente:" << em << endl; +// cout << " Elemente:" << em << endl; //Auslesen der Parameter @@ -106,7 +104,7 @@ void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[]) { double*); //Art der Berechnung bestimmen - cout << " Typ:" << type << endl; +// cout << " Typ:" << type << endl; switch (type) { default: ctypeP = cParO1; @@ -270,7 +268,7 @@ void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[]) { } } - cout << endl; +// cout << endl; //Rueckgabe (eventuell zurueck schreiben) /* mxFree(x0); mxFree(x1); diff --git a/src/plotShape.m b/src/plotShape.m index 12468be..8273433 100644 --- a/src/plotShape.m +++ b/src/plotShape.m @@ -121,10 +121,15 @@ end if(t) for idx = eles current = sum(coordinates(elements(idx,[2,4])',:),1)/2; + if(e) + cola = 'w'; + else + cola = 'bla'; + end if(isempty(desc)) - text(current(1),current(2),current(3),num2str(idx),'color','w'); + text(current(1),current(2),current(3),num2str(idx),'color',cola); else - text(current(1),current(2),current(3),desc{idx},'color','w'); + text(current(1),current(2),current(3),desc{idx},'color',cola); end hold on end diff --git a/src/slpRectangle.cpp b/src/slpRectangle.cpp index 79a2dde..2048179 100644 --- a/src/slpRectangle.cpp +++ b/src/slpRectangle.cpp @@ -1,8 +1,8 @@ -#include -#include -#include -#include -#include +//#include +#include +//#include +//#include +//#include //#include @@ -11,7 +11,7 @@ #define quad 4 // Anzahl der Quadratur Auswertungstellen 2^quad -using namespace std; +//using namespace std; int sign(double); //double arsinh(double); @@ -115,11 +115,11 @@ double inline G_AY2X2(double y1, double y2, double x1, double x2, double d3) { //sol -= (x2 - y2) * g_AY(-0.5,x2,y2, sqrt((x1 - y1) * (x1 - y1) + d3 * d3)); sol += (x2 - y2) * log(sqrt(hlp) - (x2 - y2)); - if (sol != sol || fabs(sol) == numeric_limits::infinity()) { - cout << "G_AY2X2: " << sol << " isn't a Number. (" << y1 << "," << y2 - << ")(" << x1 << "," << x2 << ")(" << d3 << ")" << endl; - cout << (x2 - y2) << "__" << sqrt(hlp) << endl; - cout << (x1 - y1) * (x1 - y1) << " " << hlp << endl; + if (sol != sol /*|| fabs(sol) == numeric_limits::infinity()*/) { + // cout << "G_AY2X2: " << sol << " isn't a Number. (" << y1 << "," << y2 + // << ")(" << x1 << "," << x2 << ")(" << d3 << ")" << endl; + // cout << (x2 - y2) << "__" << sqrt(hlp) << endl; + // cout << (x1 - y1) * (x1 - y1) << " " << hlp << endl; } return sol; } @@ -154,8 +154,8 @@ double inline G_AY1Y2(double p, double y1, double y2, double x1, double x2, sol /= 2 * p + 2; } else { sol = NAN; - cout << "warning in G_AY1Y2: no case for p=" << p - << " defined. Possible: [-1.5,-0.5,0.5,...]" << endl; + // cout << "warning in G_AY1Y2: no case for p=" << p + // << " defined. Possible: [-1.5,-0.5,0.5,...]" << endl; } return sol; @@ -272,13 +272,13 @@ double inline apply0Int2( } // Berechnet das eigentliche Integral fuer parallele Elemente voll Analytisch -double slpR::calcParIntA(double b, double d, double t, double v, double d1, +double calcParIntA(double b, double d, double t, double v, double d1, double d2, double d3) { return apply0Int4(F_par, b, d, t, v, d1, d2, d3); } -double slpR::calcParIntQX1X2(double b, double d, double t, double v, double d1, +double calcParIntQX1X2(double b, double d, double t, double v, double d1, double d2, double d3) { //Fall 2 double sol = 0; @@ -304,7 +304,7 @@ double slpR::calcParIntQX1X2(double b, double d, double t, double v, double d1, } -double slpR::calcParIntQY1X1(double b, double d, double t, double v, double d1, +double calcParIntQY1X1(double b, double d, double t, double v, double d1, double d2, double d3) { //Fall 3 double sol = 0; @@ -325,8 +325,8 @@ double slpR::calcParIntQY1X1(double b, double d, double t, double v, double d1, b * gauss_nodes[quad][i].n, 0, d3) * t * b * gauss_nodes[quad][i].w * gauss_nodes[quad][j].w; - if (sol != sol || fabs(sol) == numeric_limits::infinity()) { - cout << "->(" << i << "," << j << ")" << endl; + if (sol != sol /*|| fabs(sol) == numeric_limits::infinity()*/) { +/* cout << "->(" << i << "," << j << ")" << endl; cout << "-|(" << G_AY2X2(t * gauss_nodes[quad][j].n + d1, v + d2, b * gauss_nodes[quad][i].n, d, d3) * t * b @@ -355,22 +355,22 @@ double slpR::calcParIntQY1X1(double b, double d, double t, double v, double d1, << t * b * gauss_nodes[quad][i].w * gauss_nodes[quad][j].w << ")" << endl; - cout << endl; + cout << endl;*/ return sol; } } } - if (sol != sol || sol == numeric_limits::infinity()) - cout << "calcParIntQY1X1: " << sol << " isn't a Number. (" << b << "," - << d << ")(" << t << "," << v << ")(" << d1 << "," << d2 << "," - << d3 << ")" << endl; + //if (sol != sol /*|| sol == numeric_limits::infinity()*/) + // cout << "calcParIntQY1X1: " << sol << " isn't a Number. (" << b << "," + // << d << ")(" << t << "," << v << ")(" << d1 << "," << d2 << "," + // << d3 << ")" << endl; return sol; } -double slpR::calcParIntQY1(double b, double d, double t, double v, double d1, +double calcParIntQY1(double b, double d, double t, double v, double d1, double d2, double d3) { //Fall 4 @@ -380,7 +380,7 @@ double slpR::calcParIntQY1(double b, double d, double t, double v, double d1, } -double slpR::calcParIntQ(double b, double d, double t, double v, double d1, +double calcParIntQ(double b, double d, double t, double v, double d1, double d2, double d3) { //Fall 0 @@ -405,13 +405,13 @@ double slpR::calcParIntQ(double b, double d, double t, double v, double d1, return sol; } -double slpR::calcOrtIntA(double b, double d, double t, double v, double d1, +double calcOrtIntA(double b, double d, double t, double v, double d1, double d2, double d3) { return apply0Int4(F_ort, b, d, t, v, d1, d2, d3); } -double slpR::calcOrtIntQX1X2(double b, double d, double t, double v, double d1, +double calcOrtIntQX1X2(double b, double d, double t, double v, double d1, double d2, double d3) { //Fall 2 double sol = 0; @@ -437,16 +437,16 @@ double slpR::calcOrtIntQX1X2(double b, double d, double t, double v, double d1, } -double slpR::calcParIntO0(double b, double d, double t, double v, double d1, +double calcParIntO0(double b, double d, double t, double v, double d1, double d2, double d3, double eta) { return calcParIntA(b, d, t, v, d1, d2, d3); } -double slpR::calcOrtIntO0(double b, double d, double t, double v, double d1, +double calcOrtIntO0(double b, double d, double t, double v, double d1, double d2, double d3, double eta) { return calcOrtIntA(b, d, t, v, d1, d2, d3); } -double slpR::calcParIntO1(double b, double d, double t, double v, double d1, +double calcParIntO1(double b, double d, double t, double v, double d1, double d2, double d3, double eta) { //Elmente anordnen @@ -468,7 +468,7 @@ double slpR::calcParIntO1(double b, double d, double t, double v, double d1, return calcParIntA(b, d, t, v, d1, d2, d3); } -double slpR::calcOrtIntO1(double b, double d, double t, double v, double d1, +double calcOrtIntO1(double b, double d, double t, double v, double d1, double d2, double d3, double eta) { //Elmente anordnen @@ -490,7 +490,7 @@ double slpR::calcOrtIntO1(double b, double d, double t, double v, double d1, return calcOrtIntA(b, d, t, v, d1, d2, d3); } -double slpR::calcParIntO2(double b, double d, double t, double v, double d1, +double calcParIntO2(double b, double d, double t, double v, double d1, double d2, double d3, double eta) { //Elmente anordnen @@ -518,7 +518,7 @@ double slpR::calcParIntO2(double b, double d, double t, double v, double d1, } -double slpR::calcOrtIntO2(double b, double d, double t, double v, double d1, +double calcOrtIntO2(double b, double d, double t, double v, double d1, double d2, double d3, double eta) { //Elmente anordnen @@ -540,12 +540,12 @@ double slpR::calcOrtIntO2(double b, double d, double t, double v, double d1, if ((b * b + d * d) * eta <= d1 * d1 + d2 * d2 + d3 * d3) { return calcOrtIntQX1X2(b, d, t, v, d1, d2, d3); } else { - cout << "2error"; + // cout << "2error"; return calcOrtIntA(b, d, t, v, d1, d2, d3); } } -double slpR::calcParIntO3(double b, double d, double t, double v, double d1, +double calcParIntO3(double b, double d, double t, double v, double d1, double d2, double d3, double eta) { //Achsen vertauschen @@ -573,7 +573,7 @@ double slpR::calcParIntO3(double b, double d, double t, double v, double d1, } -double slpR::calcOrtIntO3(double b, double d, double t, double v, double d1, +double calcOrtIntO3(double b, double d, double t, double v, double d1, double d2, double d3, double eta) { if (max(b, t) * eta > d1) { @@ -583,7 +583,7 @@ double slpR::calcOrtIntO3(double b, double d, double t, double v, double d1, } } -double slpR::cParO0(double b, double d, double t, double v, double d1, +double cParO0(double b, double d, double t, double v, double d1, double d2, double d3, double* eta) { double tmp = 0; @@ -613,12 +613,12 @@ double slpR::cParO0(double b, double d, double t, double v, double d1, return 0; } -double slpR::cParO1(double b, double d, double t, double v, double d1, +double cParO1(double b, double d, double t, double v, double d1, double d2, double d3, double* eta) { return calcParIntA(b, d, t, v, d1, d2, d3); } -double slpR::cParO2(double b, double d, double t, double v, double d1, +double cParO2(double b, double d, double t, double v, double d1, double d2, double d3, double* eta) { double tmp = 0; @@ -649,7 +649,7 @@ double slpR::cParO2(double b, double d, double t, double v, double d1, return 0; } -double slpR::cParO3(double b, double d, double t, double v, double d1, +double cParO3(double b, double d, double t, double v, double d1, double d2, double d3, double* eta) { double tmp = 0; diff --git a/src/slpRectangle.hpp b/src/slpRectangle.hpp index b7ff935..bcb57fa 100644 --- a/src/slpRectangle.hpp +++ b/src/slpRectangle.hpp @@ -1,7 +1,7 @@ #ifndef HILBERT3D_LAPLACE_SLPRECTANGLE_HPP_GUARD_ #define HILBERT3D_LAPLACE_SLPRECTANGLE_HPP_GUARD_ -namespace slpR { +//namespace slpR { // sol = g0(p,y,x,l); // double g_AY(double, double, double, double); @@ -84,5 +84,5 @@ namespace slpR { double*); -} +//} #endif diff --git a/src/test_sol.m b/src/test_sol.m index f0a1ce1..1081176 100644 --- a/src/test_sol.m +++ b/src/test_sol.m @@ -7,10 +7,10 @@ mex mex_build_AU.cpp slpRectangle.cpp % Test ausführen %Anzahl der Schritte -steps = 11; +steps = 40; %LShape adaptiv anisotrop -A_run('exmpl_2DLShape', steps, 0, 1, 0.5, 0.5, 'testAA_') +A_run('exmpl_2DQuad', steps, 0.7, [2 1], 0.5, 0.5, 'testAA_') %LShape adaptiv isotrop % A_run('exmpl_2DLShape', steps, 0, 0.5, 0, 0, 'testAI_') @@ -31,4 +31,4 @@ A_run('exmpl_2DLShape', steps, 0, 1, 0.5, 0.5, 'testAA_') %Ergebnis Plotten und Teil der Daten ausgeben sowie abspeichern der figure -A_plots({['meshSave/testAA_1_' num2str(steps)]},'figure') +A_plots({['meshSave/testAA_1_' num2str(steps)]},'exmplAA_2DQuad')