У вас вопросы?
У нас ответы:) SamZan.net

Лабораторная работа 5 Тема Численное решение задачи Дирихле для у

Работа добавлена на сайт samzan.net: 2015-07-10

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 2.2.2025

Лабароторная работа № 5

по курсу «Методы вычислений»

Математический факультет, 5 семестр

Лабораторная работа

5

Тема

Численное решение задачи Дирихле для уравнения Пуассона

попеременно- треугольным методом.

Ф.И.О.

Гуптор Александр Сергеевич

Группа

442(а)

Вариант

9

Дата сдачи

Постановка задачи.

-Uxx - Uyy = f(x,y), D = { (x,y) : 0<x<A, 0<y<B }

UГ = v(x,y) на Г - границе области D, где v(x,y), f(x,y) - заданные функции.

Разностная схема.

, где E - единичный оператор,

,

,

Nx, Ny, hx = A/Nx, hy =B/Ny - число разбиений и шаги сетки по осям X и Y соответственно;

i,j - нумерация узлов.

Реализация схемы.

Rk = Uk - f,  (E + R1)Wk = Rk, (E + R2)W1k = Wk,  Uk+1 = Uk - k+1W1k, k=0,1, ...

Более подробно:

Rk[i,j] = Uk[i,j] - f(x[i],y[j]) =

1 i Nx-1,  1 j Ny,    UГ = v.

Wk[i,j] = alWk[i-1,j] + beWk[i,j-1] + caRk[i,j],

Wk[0,j]= 0,    Wk[i,0] =0,   i =1,2, . . . ,N1 -1,  j =1,2, . . . ,N2 -1,

W1k[i,j] = alW1k[i+1,j] + beW1k[i,j+1] + caWk[i,j],

W1k[N1,j]= 0,    W1k[i,N2] =0,   i =1,2, . . . ,N1 -1,  j =1,2, . . . ,N2 -1,

Uk+1[i,j] = Uk[i,j] - k+1W1k[i,j], i = 1,2, . . . ,N1 -1,  j =1,2, . . . ,N2 -1.

a =

be =

ca =

Z = hx2hy2+(hx2+hy2),

ds =

db =

et =

=

g1 =

g2 =

t0  =

dz =

r0 =

r1 =

N =                   - число итераций,

k =   k = 1,2, . . . ,N.

вариант №9

x=sym('x');

y=sym('y');

f=x+y^3;

a=3;

b=1;

%задаем разбиение и погрешность

nx=13;

ny=13;

hx=a/nx;

hy=b/ny;

xnx=0:hx:a;

yny=0:hy:b;

ep=0.01;

eps=0.0001-0.00001;

tt1=100;

%вычисляем чё то

db=4/(hx*hx)+4/(hy*hy);

ds=4*(((sin(pi*hx/(2*a)))^2)/(hx^2)+((sin(pi*hy/(2*b)))^2)/(hy^2));

om=2/sqrt(ds*db);

z=hx*hx*hy*hy+om*(hx*hx+hy*hy);

al=om*hy*hy/z;

be=om*hx*hx/z;

ca=hx*hx*hy*hy/z;

et=ds/db;

g1=1/(1+sqrt(et));

g2=1/(2*om);

t0=1/(g1+g2);

dz=g1/g2;

r0=(1-dz)/(1+dz);

r1=(1-sqrt(dz))/(1+sqrt(dz));

n=((log(2/eps))/(log(1/r1)))+1;

for i=1:(round(n)+1)

   TAU(i)=t0/(1+r0*cos(((2*i-1)*pi)/(2*n)));

end;

%считаем U

for i=1:(nx+1)

   for j=1:(ny+1)

       U(i,j)=(hx*(i))*(2-(hy*(j))^2);

   end;

end;

%считаем значения на границе

for k=0:(round(n-1))

%считаем W и W1 на границе

   for i=1:nx+1

       W(i,1)=0;

       W1(i,ny+1)=0;

   end;

   for j=1:ny+1

       W(1,j)=0;

       W1(nx+1,j)=0;

   end;

   for i=2:nx

       for j=2:ny

           R(i,j)=-(U(i-1,j)-2*U(i,j)+U(i+1,j))/(hx^2)-(U(i,j-1)-2*U(i,j)+U(i,j+1))/(hy^2)-(2*hx*(i-1));

       end;

   end;

   for i=2:nx

       for j=2:ny

           W(i,j)=al*W(i-1,j)+be*W(i,j-1)+ca*R(i,j);

       end;

   end;

   for i=2:nx

       for j=2:ny

           W1(i,j)=al*W1(i+1,j)+be*W1(i,j+1)+ca*W(i,j);

       end;

   end;

   for i=2:nx

       for j=2:ny

           U(i,j)=U(i,j)-TAU(k+1)*W1(i,j);

       end;

   end;    

end;

en=0;

for k=1:nx+1

   for m=1:ny+1

       en=en+(abs(U(k,m)-(hx*(k)*(1-(hy*(m))^2))))^2;

       en=sqrt(en)/tt1;

   end;

end;

for i=1:nx+1

   for j=1:ny+1

       uu(i,j)=hx*(i)*(2-(hy*(j))^2);

   end;

end;

uu  

U

surfc(xnx,yny,uu);

hold on;

surfc(xnx,yny,U);

max(max(abs(U-uu)))

enКод программы: %вариант 14

x=sym('x');

y=sym('y');

f=1-x+y^2;

a=2;

b=1.5;

%задаем разбиение и погрешность

nx=13;

ny=13;

hx=a/nx;

hy=b/ny;

xnx=0:hx:a;

yny=0:hy:b;

ep=0.01;

eps=0.00000001;

tt1=100;

%вычисляем чё то

db=4/(hx*hx)+4/(hy*hy);

ds=4*(((sin(pi*hx/(2*a)))^2)/(hx^2)+((sin(pi*hy/(2*b)))^2)/(hy^2));

om=2/sqrt(ds*db);

z=hx*hx*hy*hy+om*(hx*hx+hy*hy);

al=om*hy*hy/z;

be=om*hx*hx/z;

ca=hx*hx*hy*hy/z;

et=ds/db;

g1=1/(1+sqrt(et));

g2=1/(2*om);

t0=1/(g1+g2);

dz=g1/g2;

r0=(1-dz)/(1+dz);

r1=(1-sqrt(dz))/(1+sqrt(dz));

n=((log(2/eps))/(log(1/r1)))+1;

for i=1:(round(n)+1)

   TAU(i)=t0/(1+r0*cos(((2*i-1)*pi)/(2*n)));

end;

%считаем U

for i=1:(nx+1)

   for j=1:(ny+1)

       U(i,j)=(hx*(i))*(2-(hy*(j))^2);

   end;

end;

%считаем значения на границе

for k=0:(round(n-1))

%считаем W и W1 на границе

   for i=1:nx+1

       W(i,1)=0;

       W1(i,ny+1)=0;

   end;

   for j=1:ny+1

       W(1,j)=0;

       W1(nx+1,j)=0;

   end;

   for i=2:nx

       for j=2:ny

           R(i,j)=-(U(i-1,j)-2*U(i,j)+U(i+1,j))/(hx^2)-(U(i,j-1)-2*U(i,j)+U(i,j+1))/(hy^2)-(2*hx*(i-1));

       end;

   end;

   for i=2:nx

       for j=2:ny

           W(i,j)=al*W(i-1,j)+be*W(i,j-1)+ca*R(i,j);

       end;

   end;

   for i=2:nx

       for j=2:ny

           W1(i,j)=al*W1(i+1,j)+be*W1(i,j+1)+ca*W(i,j);

       end;

   end;

   for i=2:nx

       for j=2:ny

           U(i,j)=U(i,j)-TAU(k+1)*W1(i,j);

       end;

   end;    

end;

en=0;

for k=1:nx+1

   for m=1:ny+1

       en=en+(abs(U(k,m)-(hx*(k)*(1-(hy*(m))^2))))^2;

       en=sqrt(en)/tt1;

   end;

end;

for i=1:nx+1

   for j=1:ny+1

       uu(i,j)=hx*(i)*(1-(hy*(j))^2);

   end;

end;

uu  

U

surfc(xnx,yny,U);

max(max(abs(U-uu)))

en

график решения:

eps = 10-4 - 10-5

Норма невязки равна 1.0134e-004, погрешность равна 0.1520

Найденное решение:

   0.3068    0.3041    0.2995    0.2931    0.2849    0.2749    0.2631    0.2494    0.2340    0.2167    0.1975    0.1766    0.1538    0.1293

   0.6136    0.6081    0.5990    0.5863    0.5699    0.5498    0.5262    0.4989    0.4679    0.4333    0.3951    0.3532    0.3077    0.2585

   0.9203    0.9122    0.8985    0.8794    0.8548    0.8248    0.7893    0.7483    0.7019    0.6500    0.5926    0.5298    0.4615    0.3878

   1.2271    1.2162    1.1980    1.1725    1.1397    1.0997    1.0523    0.9977    0.9358    0.8666    0.7902    0.7064    0.6154    0.5171

   1.5339    1.5203    1.4975    1.4656    1.4247    1.3746    1.3154    1.2472    1.1698    1.0833    0.9877    0.8830    0.7692    0.6463

   1.8407    1.8243    1.7970    1.7588    1.7096    1.6495    1.5785    1.4966    1.4037    1.3000    1.1853    1.0596    0.9231    0.7756

   2.1475    2.1284    2.0965    2.0519    1.9945    1.9244    1.8416    1.7460    1.6377    1.5166    1.3828    1.2362    1.0769    0.9049

   2.4543    2.4324    2.3960    2.3450    2.2795    2.1994    2.1047    1.9954    1.8716    1.7333    1.5803    1.4128    1.2308    1.0341

   2.7610    2.7365    2.6955    2.6381    2.5644    2.4743    2.3678    2.2449    2.1056    1.9499    1.7779    1.5894    1.3846    1.1634

   3.0678    3.0405    2.9950    2.9313    2.8493    2.7492    2.6309    2.4943    2.3396    2.1666    1.9754    1.7660    1.5385    1.2927

   3.3746    3.3446    3.2945    3.2244    3.1343    3.0241    2.8939    2.7437    2.5735    2.3832    2.1730    1.9426    1.6923    1.4219

   3.6814    3.6486    3.5940    3.5175    3.4192    3.2990    3.1570    2.9932    2.8075    2.5999    2.3705    2.1193    1.8462    1.5512

   3.9882    3.9527    3.8935    3.8107    3.7041    3.5740    3.4201    3.2426    3.0414    2.8166    2.5680    2.2959    2.0000    1.6805

   4.2949    4.2567    4.1930    4.1038    3.9891    3.8489    3.6832    3.4920    3.2754    3.0332    2.7656    2.4725    2.1538    1.8097

Точное решение:

0.3068    0.3041    0.2995    0.2931    0.2849    0.2749    0.2631    0.2494    0.2340    0.2167    0.1975    0.1766    0.1538    0.1293

0.6136    0.3088    0.3898    0.7006    0.7157    0.4458    0.3642    0.4809    0.5092    0.4781    0.4051    0.3217    0.2755    0.2585

0.9203    0.6794    0.8897    1.1414    0.9441    0.6689    0.6884    0.7576    0.7397    0.6870    0.5897    0.4900    0.4443    0.3878

1.2271    1.1100    1.3652    1.3547    1.0975    0.9918    1.0364    1.0277    0.9615    0.8889    0.7728    0.6825    0.6057    0.5171

1.5339    1.6377    1.6960    1.5200    1.3551    1.3263    1.3241    1.2499    1.1507    1.0420    0.9491    0.8627    0.7617    0.6463

1.8407    1.9093    1.8082    1.6767    1.6388    1.6204    1.5541    1.4466    1.3188    1.2404    1.1720    1.0683    0.9283    0.7756

2.1475    2.0639    1.9496    1.9490    1.9738    1.9108    1.8024    1.6657    1.5706    1.5008    1.3956    1.2422    1.0703    0.9049

2.4543    2.2814    2.2408    2.2973    2.2742    2.1625    2.0248    1.9238    1.8381    1.7144    1.5493    1.3760    1.2102    1.0341

2.7610    2.6069    2.6231    2.6330    2.5367    2.3893    2.2876    2.2162    2.0950    1.9143    1.7239    1.5527    1.3740    1.1634

3.0678    3.0124    3.0311    2.9643    2.8058    2.6734    2.6078    2.5184    2.3492    2.1357    1.9330    1.7431    1.5313    1.2927

3.3746    3.3861    3.3592    3.2268    3.0686    2.9741    2.8999    2.7645    2.5605    2.3381    2.1323    1.9247    1.6867    1.4219

3.6814    3.6771    3.6060    3.4774    3.3593    3.2680    3.1546    2.9860    2.7777    2.5643    2.3523    2.1157    1.8438    1.5512

3.9882    3.9583    3.8854    3.7821    3.6744    3.5602    3.4170    3.2352    3.0264    2.8039    2.5629    2.2922    1.9959    1.6805

4.2949    4.2567    4.1930    4.1038    3.9891    3.8489    3.6832    3.4920    3.2754    3.0332    2.7656    2.4725    2.1538    1.8097

esp= 10-8

найденное решение:

Columns 1 through 5

  0.30678197542103   0.30405097860719   0.29949931725080   0.29312699135184   0.28493400091033

  0.61356395084206   0.60810195721438   0.59899863450159   0.58625398270369   0.56986800182066

  0.92034592626309   0.91215293582157   0.89849795175239   0.87938097405553   0.85480200273100

  1.22712790168411   1.21620391442877   1.19799726900319   1.17250796540737   1.13973600364133

  1.53390987710514   1.52025489303596   1.49749658625398   1.46563495675922   1.42467000455166

  1.84069185252617   1.82430587164315   1.79699590350478   1.75876194811106   1.70960400546199

  2.14747382794720   2.12835685025034   2.09649522075558   2.05188893946290   1.99453800637233

  2.45425580336823   2.43240782885753   2.39599453800637   2.34501593081475   2.27947200728266

  2.76103777878926   2.73645880746472   2.69549385525717   2.63814292216659   2.56440600819299

  3.06781975421029   3.04050978607192   2.99499317250797   2.93126991351843   2.84934000910332

  3.37460172963132   3.34456076467911   3.29449248975876   3.22439690487028   3.13427401001366

  3.68138370505234   3.64861174328630   3.59399180700956   3.51752389622212   3.41920801092399

  3.98816568047337   3.95266272189349   3.89349112426035   3.81065088757396   3.70414201183432

  4.29494765589440   4.25671370050068   4.19299044151115   4.10377787892581   3.98907601274465

 Columns 6 through 10

  0.27492034592626   0.26308602639964   0.24943104233045   0.23395539371871   0.21665908056441

  0.54984069185253   0.52617205279927   0.49886208466090   0.46791078743741   0.43331816112881

  0.82476103777879   0.78925807919891   0.74829312699135   0.70186618115612   0.64997724169322

  1.09968138370505   1.05234410559854   0.99772416932180   0.93582157487483   0.86663632225762

  1.37460172963132   1.31543013199818   1.24715521165225   1.16977696859354   1.08329540282203

  1.64952207555758   1.57851615839782   1.49658625398270   1.40373236231224   1.29995448338644

  1.92444242148384   1.84160218479745   1.74601729631315   1.63768775603095   1.51661356395084

  2.19936276741011   2.10468821119709   1.99544833864360   1.87164314974966   1.73327264451525

  2.47428311333637   2.36777423759672   2.24487938097406   2.10559854346837   1.94993172507965

  2.74920345926263   2.63086026399636   2.49431042330451   2.33955393718707   2.16659080564406

  3.02412380518889   2.89394629039599   2.74374146563496   2.57350933090578   2.38324988620847

  3.29904415111516   3.15703231679563   2.99317250796541   2.80746472462449   2.59990896677287

  3.57396449704142   3.42011834319527   3.24260355029586   3.04142011834320   2.81656804733728

  3.84888484296768   3.68320436959490   3.49203459262631   3.27537551206190   3.03322712790168

 Columns 11 through 14

  0.19754210286755   0.17660446062813   0.15384615384615   0.12926718252162

  0.39508420573509   0.35320892125626   0.30769230769231   0.25853436504324

  0.59262630860264   0.52981338188439   0.46153846153846   0.38780154756486

  0.79016841147019   0.70641784251252   0.61538461538462   0.51706873008648

  0.98771051433773   0.88302230314065   0.76923076923077   0.64633591260810

  1.18525261720528   1.05962676376878   0.92307692307692   0.77560309512972

  1.38279472007283   1.23623122439690   1.07692307692308   0.90487027765134

  1.58033682294037   1.41283568502503   1.23076923076923   1.03413746017296

  1.77787892580792   1.58944014565316   1.38461538461538   1.16340464269458

  1.97542102867547   1.76604460628129   1.53846153846154   1.29267182521620

  2.17296313154301   1.94264906690942   1.69230769230769   1.42193900773782

  2.37050523441056   2.11925352753755   1.84615384615385   1.55120619025944

  2.56804733727811   2.29585798816568   2.00000000000000   1.68047337278106

  2.76558944014565   2.47246244879381   2.15384615384615   1.80974055530269

Точное решение:

 Columns 1 through 5

  0.30678197542103   0.30405097860719   0.29949931725080   0.29312699135184   0.28493400091033

  0.61356395084206  -0.36071219432446  -0.00695221808604   1.52371301389944   1.52143726211379

  0.92034592626309  -0.96537495785573  -0.30658833402222   0.90221326141297   0.75119612145130

  1.22712790168411  -0.78024570896771  -0.51757670959379   0.27016680976907   0.97943900210461

  1.53390987710514  -0.43106512366069  -0.17327137721338   0.98140686168330   2.24636287677018

  1.84069185252617   0.26191460399551   0.91264061364873   2.14686555885261   2.81418196731036

  2.14747382794720   1.30424458197418   1.88208031831791   2.47563362422163   2.44463885484636

  2.45425580336823   2.21603177004266   2.21207091358599   2.10284168551410   2.04325224686332

  2.76103777878926   2.96722373632090   2.51566308865265   2.00181668170200   2.03416431129849

  3.06781975421029   3.58030663126512   3.02989470732275   2.31060065036599   2.11960744940981

  3.37460172963132   3.77692533950476   3.30962696326529   2.67057804544638   2.36816637376225

  3.68138370505234   3.69528150306277   3.51340762754923   3.38547188935584   3.36865115756831

  3.98816568047337   3.94054224208873   4.05789165134855   4.19912365003042   4.15774563344584

  4.29494765589440   4.25671370050068   4.19299044151115   4.10377787892581   3.98907601274465

 Columns 6 through 10

  0.27492034592626   0.26308602639964   0.24943104233045   0.23395539371871   0.21665908056441

  0.28395349693079  -1.30190584514474  -2.19893703536925  -1.46758053292128   0.23229150150611

 -0.06260197903754  -0.90598473704792  -0.91765932168591   0.20841946251124   1.32735705938931

  1.48161199433331   1.37055295528101   0.98701504209808   0.77665519425557   0.62143967411937

  2.69220052097904   1.89012117416288   0.73803707683612   0.23063934015514   0.32546394217824

  2.29945535943516   1.12143285917471   0.58401052836575   0.97850514362114   1.32128529944644

  1.84032500615962   1.35927246623112   1.54715570324327   1.90455152672476   1.71679222346234

  2.16215177548668   2.37561926539353   2.41178443250545   2.08672279948667   1.65958730945526

  2.55075893679002   2.91602144976913   2.69974148419832   2.16337571959997   1.81027617468602

  2.40714125015931   2.63127200906729   2.52398147672060   2.28023789201049   2.08503275216990

  2.39786369932939   2.49947085397447   2.57884628718531   2.62651784472293   2.52467210850639

  3.29538655261670   3.08805335173324   2.88801794945002   2.76262149554117   2.58918435110579

  3.80906229522061   3.29507664627645   2.90097703537620   2.73051033937950   2.65163407033403

  3.84888484296768   3.68320436959490   3.49203459262631   3.27537551206190   3.03322712790168

 Columns 11 through 14

  0.19754210286755   0.17660446062813   0.15384615384615   0.12926718252162

  1.24153210948324   1.04096624826737   0.49866621693926   0.25853436504324

  1.35526291185289   0.73953156200703   0.40407903812472   0.38780154756486

  0.40469458218507   0.35408802359407   0.48585730704552   0.51706873008648

  0.52235663809077   0.67554451759062   0.74524502794226   0.64633591260810

  1.13482199046641   0.92376714642119   0.88336758402759   0.77560309512972

  1.26716233294647   1.10158412160507   1.06622761900728   0.90487027765134

  1.48384068954122   1.43788181196459   1.27341581762474   1.03413746017296

  1.70383084912235   1.59323961263727   1.39406016415776   1.16340464269458

  1.91876896882121   1.74537995399385   1.54167150040664   1.29267182521620

  2.24864555446091   1.94013039166321   1.67321848767727   1.42193900773782

  2.32367814235554   2.05379465258786   1.80996517214457   1.55120619025944

  2.51988094426563   2.29427021542469   2.00215940231433   1.68047337278106

  2.76558944014565   2.47246244879381   2.15384615384615   1.80974055530269




1. Реферат- Лучевая диагностика неотложных состояний в пульмонологии
2. РУССКИЙ СЛОВАРЬ СОКРАЩЕНИЙ ТРАНСПОРТНОЭКСПЕДИТОРСКИХ И КОММЕРЧЕСКИХ ТЕРМИНОВ И ВЫРАЖЕНИЙ ФИАТА
3. Передача подакцизного товара с акцизного склада в магазин розничной торговли для последующей реализации в
4. Прийняття та зміна Конституції Угорщини
5. Лабораторная работа 9
6. Проектирование швейного цеха по изготовлению костюма женского, состоящего из жакета и юбки
7. Формирование федеративных отношений в российской федерации- опыт, проблемы, перспективы развития
8. Тема- Створення і робота зі зведеними таблицями оброблення економічної інформації
9. 900 дней проекция кинохроники в формате 3D на фасад здания Главного штаба Молодежная акция памяти Непобежд
10. Возникновение и развитие науки химии