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

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

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

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

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

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

от 25%

Подписываем

договор

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

Скидка 25% при заказе до 6.6.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. варианте эпистемологической относительности однако таком значение которого неизмеримо возросло в совреме
6. летнему возрасту
7. Тема 2 Политикоправовая мысль в Древней Греции и Древнем Риме
8. Бюджетирование как элемент управленческого учета на малых предприятиях
9. РЕСЕЙ НУО КАЗАХСТАНСКО
10. реферат дисертації на здобуття наукового ступеня кандидата географічних наук3