274

HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21
Page 2: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

HYRJE

Teksti “ Fizika Llogartëse” mbulon lëndën e Fizikës Llogaritëse që

zhvillohet në degën Fizikë 5-vjeçare , në vitin e tretë.

Ai përbëhet nga dy pjesë. Pjesa e parë përmban disa nga metodat bazë të

analizëa numerike, që përdoren në Fizikë. Ndërsa pjesa e dytë përmban shembuj

të zbatimit të këtyre metodave në probleme të ndryshme të Fizikës. Shembujt

prekin pothuaj të gjitha pjesët e një kursi të plotë të Fizikë së Përgjithëshme dhe

një pjesë të Fizikës teorike.

Teksti është paisur me programet në dy variante gjuhësh të programimit në

BASIC dhe FORTRAN. Ato mund të ekzekutohen me ndryshime të vogla nga

çdo kompjuter i paisur me kompilatorët e këtyre gjuhëve. Pjesa vizualizuse e

programeve ekzekutohet vetëm në Personal Compjuter (PC ), që kanë

kompilatorin QBASIC.

Në fund të çdo paragrafi apo kapitulli jepen ushtrime , një pjesë e të cilave

janë paisur edhe me përgjigjet.

AUTORI

Bejo DUKA

Page 3: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

1

PJESA I

HYRJE NE ANALIZEN NUMERIKE

KAPITULLI I

VEPRIMET BAZË MATEMATIKE

Operacionet bazë të modelimit numerik të proceseve të ndryshme fizike janë tre

operacione numerike : diferencimi (derivimi) numerik, integrimi (kuadratura) numerik dhe

gjetja e rrënjëve të një funksioni. Ne do ti shqyrtojmë ato pas një hyrje të shkurtër mbi

saktësinë e paraqitjes dhe manipulimit të numrave në kompjuter, ku siç dihet çdo gjë kryhet

nëpërmjet numrave.

I-1 Gabimet përafrimit të numrave

Çdo algoritëm për zgjidhjen numerike të problemeve të ndryshëm, në ordinator sillet në

veprime arithmetike me numrat.

Në ordinatorët e sotëm përdoren numrat e paraqitur në sisteme të ndryshme numurimi si

psh sistemet me baze 2,8,16. Sistemi i zakonshem me bazë 10 përdoret kryesisht për

regjistrimin e informacionit dhe shfaqjen e rezultateve. Sistemi i numurimit me bazë 2

përdoret për rujtjen e numrave dhe operacionet me ta në njësitë e kujteses së kompjuterave

sepse paraqitja e numrave nëpërmjet zeros dhe njëshit është i përshtatëshëm në qarqet

elektronikë që funksionojnë me llogjikën “po” dhe “jo” ose “poshtë” dhe “lart”, që

përfaqëson edhe njësinë e matjes së kujtesës 1 bit .

Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23

+ 0 22 +

0 21

+ 1 20 ose shkurt ai paraqitet me shifrat 0 dhe 1 të sistemit me bazë dy në formën 1001 ,

pra shkruhen shifrat para dyshave duke filluar nga dyshi në fuqinë më të lartë. Me këtë

llogjikë mund të paraqesim çdo numër të sistemit me bazë 10, psh:

17 paraqitet në sistemin me bazë 2 në formën : 10001

184,624 paraqitet në sistemin me bazë 2 në formën : 10111000,10111111

Pra, shifra e parë i takon termit me fuqi më të lartë të 2 dhe shifrat mbas presjes i takojnë

fuqive negative të 2 , ashtu sikurse në sistemin e numurimit me bazë 10 ku shifra e parë i

takon fuqisë më të lartë të 10 ndërsa shifrat mbas presjes i takojnë fuqive negative të 10:

37845,87 = 3 104 + 7 10

3 + 8 10

2 + 4 10

1 + 5 10

0 + 8 10

-1 + 7 10

-2

Në përgjithësi një numër çfardo real X, në sistemin e numërimit me bazë b , paraqitet në

trajtën:

X = ± ( a1be-1

+ a2 be-2

+ ... an be-n

+ ...) , (1-1)

ku e është fuqia më e lartë që i takon shifrës që do ishtë e para a1, psh në shembujt e mësipërm

tek numri 17 (në paraqitjen me bazë b=2) e=5 ose tek numri 184,628 e=8 . Shpesh në

ordinatorë numrat realë paraqiten në trajtën e “ pikës- notuese” (“floating-point”) , dmth :

X = (sign X) (0,a1a2 .... at)b be (1-2)

ku sign X është shenja e numrit X , ai (i=1,2..t) janë shifrat në sistemin e numërimit me bazë

b , 0 ai b-1 dhe a1 0 .

Page 4: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

2

Pjesa fraksionale 0,a1a2 ....at quhet mantisë e numrit X , ndërsa e quhet eksponent ose

karakteristikë e numrit X dhe si rregull e është brenda kufinjve të plotë m dhe M që lejon

kapaciteti i ordinatorit :

m e M ,

ku në përgjithësi m = -M ose m = -M ± 1 (psh në ëorkstation-in Vax në single precision m = -

36 , M = 37) .

Mantisa e paraqitur në ordinator përmban një numër të caktuar shifrash që varen nga

ordinatori dhe çdo numër që e ka mantisën më të gjatë shkurtohet sipas rregullave të caktuara.

Në serinë 300 dhe 4300 të makinave të IBM në single-precision shënja e numrit është një

shifër binare (0 ose 1) pra zë një bit , ndërsa eksponenti jepet në sistemin e numërimit me bazë

16 dhe zë 7 bit ndërsa mantisa jepet në sistemin e numërimit me bazë 2 dhe zë 24 bit .

Meqënëse 24 shufrave binare u korespondjnë 6 deri në 7 shifra dhjetore, ne mund të themi që

numri në këto kompjutera numri ka të paktën 6 shifra të sakta kur paraqitet në “floating-

point”. Ndërsa eksponenti(karakteristika) me 7 shifra binare paraqet eksponentë nga 0 deri në

27-1 = 127 . Por, duke përdorur eksponentë vetëm pozitivë nuk mund të paraqesim me të

njëjtën saktësi numrat e vegjël, prandaj karakteristikës së çdo numri i hiqet 64 dhe intervali i

eksponentëve bëhet nga -64 deri në +63. Le të shohim psh një numër makine:

0 1000010 101100110000010000000000

Bit-i i parë majtas është 0 që tregon se numri është pozitiv. 7 bit-e që pasojë 1000010, janë

ekuivalent me një numër decimal:

1·26 + 0·2

5 + 0·2

4 + 0·2

3 + 0·2

2 + 1·2

1 + 0·2

0 = 66

që paraqesin karakteristikën 1666-64

. Ndërsa 24 bit-et e fundit tregojnë që mantisa është:

1· 2-1

+ 0·2-3

+ 1·2-4

+ 1· 2-7

+ 0·2-8

+ 1·2-14

Pra ky numër makine paraqet saktësisht numrin decimal:

[1· 2-1

+ 0·2-3

+ 1·2-4

+ 1· 2-7

+ 0·2-8

+ 1·2-14

]·1666-64

= 179.015625

Por, numri makënës më i vogël më i afërt me të është:

= 179.01560974112109375

dhe numri makinës më i madh më i afërt me të është

= 179.0156402587890625

Kjo dmth që numri makinës që morëm në fillim duhet të paraqesë jo vetëm numrin :

179.015625 , por edhe çdo numër real që ndodhet midis dy numrave më të afërt të makinës.

Për të siguruar unicitetin e paraqitjes së numrave dhe për ta patur ata të gjithë saktësinë e

vlefëshme për këtë sistem paraqitjeje bëhet një marrëveshje normalizimi në paraqitjen e

mantisës e tillë : të paktën njera nga 4 shifrat e para majtas e mantisës së numrit makinës të

jetë 1 . Pra numri më i vogël pozitiv i makinës është

= 16-65

10-78

,

dhe numri më i madh është:

1663

1076

.

Në intervalin midis këtyre dy numrave makina përdor një numër të fundëm numrash makine

të formës:

0 1000010 101100110000001111111111

0 1000010 101100110000010000000001

0 0000000 000100000000000000000000

0 1111111 111111111111111111111111

Page 5: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

3

0.a1 a2 ... a7 16e1 e2 .. e7

për të paraqitur të gjithë numrat realë.

Numrat që nga llogaritjet dalin me vlerë absolute më të vogël se 16-65

quhen underfloë dhe

zakonisht konsiderohen si zero. ndërsa numrat më të mëdhenj se 1663

quhen overfloë dhe

shkaktojnë ndaljen e kompjuterit, prandaj duhet patur kujdes ne algoritma që përdorin numra

të mëdhenj. Në mikrokomjuterat e IBM në double precision numrat e makinës e kanë

mantisën me 52 bit me marveshjen që shifra e parë majtas të jetë 1 (që zakonisht nuk ruhet në

kujtesë, pra ruhen vetëm shifrat mbas 1) dhe eksponentin me 11 bit duke i zbritur 1023 për të

paraqitur qoftë numrat e mëdhenj qoftë ata të vegjël. Kjo mënyrë jep precizion deri në 15 - 16

shifra dhjetore në intervalin (range) numerik të makinës:

10-308

- 10308

.

Një numër real pozitiv mund të normalizohet në sistemin decimal në formë:

y = 0.d1 d2 ... dk dk+1 dk+2 ... 10n .

Nëqoftëse y është brenda range-it numerik të makinës, forma “floating point” e tij që do ta

shënojmë fl(y) merret duke përfunduar mantisën e y deri në k shifra decimale . Ka dy mënyra

për ta kryer këtë përfundim. Një metodë që quhet “chopping” eshtë thjeshtë të fshihen shifrat

dk+1 dk+2 ...dhe të merret :

fl(y)= 0.d1 d2 ... dk 10n

Një metodë tjetër është ajo që i referohen si rumbullakim (“rounding”) i numrit, pra nëse dk+1

5 atëhere i shtohet 1 shifrës dk për të marë fl(y) dhe nëse dk+1 < 5 atëhere thjeshtë fshihen

shifrat pas dk .

Psh. numri ka një paraqitje decimale të pafundme në formën = 3.14159265...

I shkruar në formë të normalizuar decimale është: = 0.314159265... 101 .

Forma “floating-point” me 5 shifra e duke përdorur metodën “chopping” është

fl ( ) = 0.31415 101 =3.1415,

ndërsa duke përdorur metodën e rumbullakimit është

fl ( ) = 0.31416 101 =3.1416,

Gabimet që rezultojnë nga zëvëndësimi i numrit me formën e tij “floating-point” quhen

gabimet e rrumbullakimit (round-off error) . Këto gabime janë të pavarura nga gabimet e

algoritmit që përdoret për zgjidhjen e një problemi numerikisht ose nga gabimet e

parametrave që janë matur në eksperiment dhe futen si të dhëna fillestare në algoritëm.

Në vlerësimin e tyre përdoret kuptimi i gabimit absolut dhe relativ të një numri të përafërt:

Kur p’ është numri i përafërt i p , gabimi absolut është | p - p’ | dhe gabimi relativ është :

| - |

| |

p p

p

', kur p 0 .

Psh,

a) Nëqoftë se p=0.3000 101 dhe p’ = 0.3100 10

1 , gabimi absolut është 0.1 dhe gabimi

relativ eshtë 0.333... 10-1

.

b) Nëqoftë se p=0.3000 10-3

dhe p’ = 0.3100 10-3

, gabimi absolut është 0.1 10-4

dhe

gabimi relativ eshtë 0.333... 10-1

.

c) Nëqoftë se p=0.3000 104 dhe p’ = 0.3100 10

4 , gabimi absolut është 0.1 10

4 dhe

gabimi relativ eshtë 0.333... 10-1

.

Në këto shembuj duket se gabimi relativ i njejtë për disa raste gabimesh absolute të ndryshme.

Pra, si masë e saktësisë të parqitjes së numrave është mirë të përdoret gabimi relativ. Gjatë

paraqitjes së numrave me pikë-notuese psh në sistemin decimal me metodën “chopping” deri

në shifrën k-të , gabimi relativ është:

Page 6: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

4

y fl y

y

d d d d d d d

d d

d d

d d

k k

n

k

n

n

k k k( ) . ... ... . ...

. ...

. ...

. ...

0 10 0 10

0 10

0

0101 2 1 1 2

1 2

1 2

1 2

,

meqë d1 1 , vlera më e vogël e emëruesit është 0.1, prandaj

y fl y

y

k k( )

.

1

0110 10 1

Në mënyrë të ngjashme merret kufiri i gabimit relativ kur përdoret përafrimi i numrit me anë

të rrumbullakimit të tij deri në k shifra:

y fl y

y

k( ).05 10 1

Pra, kufiri i gabimit relativ nuk varet nga numri që paraqitet. Kjo ndodh për arsye sepse forma

eksponenciale e karakteristikës përdor të njëjtin numër decimal të makinës për të paraqitur

çdo numër të intervaleve [0.1,1] , [1,10] dhe [10,100]. Në fakt , brenda kufijve të makinës,

numri i numrave decimalë të makinës në intervalin [10n,10

n+1 ] është konstanat për çdo n

(numër i plotë).

Si rezultat i pasaktësisë së paraqitjes së numrave, arithmetika e kryer në kompjuter nuk

është e saktë. Gjatë arithmetikës në kompjuter manipulohet me shifrat binare nëpërmjet shiftit

(zhvendosjes) ose operacioneve llogjike. Meqënëse kjo mekanikë e operimeve nuk është

esenciale për vlerësimin e gabimeve, ne duhet ta vlerësojmë vetë përfërsinë e arithmetikës së

kompjuterit. Le ti parqesim veprimet arithmetike me simbolet : , , , .

Ne do supozojmë se arithmetika e kompjuterit jepet nga barazimet :

x y = fl( fl(x) + fl(y) ) , x y = fl( fl(x) fl(y)) .

x y = fl( fl(x) - fl(y) ) , x y = fl( fl(x) / fl(y)).

Kjo arithmetikë i korespondon arithmetikës së saktë me paraqitjet e numrave x dhe y me pikë

notuese dhe pastaj rezultati i tyre paraqitet me pikë notuese me numër të fundëm shifrash. Psh,

numrat x =1/3 dhe y = 5/7 do paraqiten me ndërprerjen deri në 5 shifra :

fl(x)=0.33333 100 dhe fl(y)=0.71428 10

0 për llogaritjet arithmetike që janë paraqitur në

tabelën 1.1.

Tabela 1.1

veprimi

arithmetik

rezultati vlera e saktë gabimi absolut gabimi relativ

x y 0.10476 101 22/21 0.190 10

-4 0.182 10

-4

x y 0.38095 100 8/21 0.238 10

-5 0.625 10

-5

x y 0.23809 100 5/21 0.524 10

-5 0.220 10

-4

x y 0.21428 101 15/7 0.571 10

-4 0.267 10

-4

Në këtë shembull gabimi relativ maksimal është 0.267 10-4

, pra arithmetika e kompjuterit

jep rezultat të saktë deri në 5 shifra. Nëqoftëse do kishim tre numra të tjerë :

u = 0.714251 , v = 98765.9 dhe ë = 0.111111 10-4

, pra që fl(u)= 0.714251 100 ,

fl(v)= 0.98765 105 dhe fl(ë)= 0.11111 10

-4 , atëhere do kishim rezultatet e paraqitura në

tabelën 1.2.

Page 7: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

5

Tabela 1.2

veprimi

arithmetik

rezultati vlera e saktë gabimi absolut gabimi relativ

y u 0.30000 10-4

0.34714 10-4

0.471 10-5

0.136

(y u) ë 0.27000 101 0.31243 10

1 0.424 0.136

(y u) v 0.29629 101 0.34285 10

1 0.465 0.136

u v 0.98765 105 0.98766 10

5 0.161 10

1 0.163 10

-4

ku duket se y u ka një gabim të vogël absolut por ka gabim të madh relativ, ndërsa

pjestimi me një numër të vogël ë që pason këtë veprim ose shumëzimi me një numrër të

madh v e rrit gabimin absolut pa e ndryshuar gabimin relativ. Pra mbledhja e numrave të

vegjël ose të mëdhenj prodhon gabim të madh absolut por jo gabim të madh relativ.

Një nga rastet që ndeshet rëndom në llogaritjet që prodhojnë gabim është gjatë fshirjes së

shifrave sinjifikative kur zbriten numra thuajse të barabartë. Supozojmë se dy numra të afërt x

dhe y , kanë paraqitjen me k shifra:

fl(x)=0.d1 d2 ...dp p+1 p+2 ... k 10n ,

fl(x)=0.d1 d2 ...dp p+1 p+2 ... k 10n .

Forma me pikë notuese e (x - y ) është :

fl(fl(x)-fl(y))=0. p+1 p+2 ... k 10n-p

,

ku 0.d1 p+1 p+2 ... k = 0. p+1 p+2 ... k - 0. p+1 p+2 ... k .

Paraqitja me pikë notuese e (x - y ) ka vetëm k - p shifra sinjifikative, por në shumicën e

pajisjeve llogaritëse (x - y ) do të shënohet me k shifra duke u dhënë vlerë zero ose të rastit p

shifrave të fundit. Në llogaritjet e mëtejëshme që përdorin (x - y ) mbetet problemi që ka

vetëm k - p shifra sinjifikative, kështu që në një varg llogaritjesh nuk mund të pritet të kemi

saktësi më të madhe.

Gjithashtu pjestimi me numra të vegjël (ose shumëzimi me numra të mëdhenj) e zmadhon

gabimin. Psh, supozojmë që një numër z e ka paraqitjen me numër të fundëm shifrash me një

gabim , pra ne përdorim në llogaritjet e mëtejshme numrin z + . Pjestimi i tij me një 0

rezulton:

z / fl((z+ ) / (fl( )) .

Po të jetë = 10-n

, ku n > 0 , atëhere :

z / = z 10n dhe fl((z+ ) / (fl( )) = (z + ) 10

n .

Kështu që gabimi absolut në këtë përafrim z + 10n është i brarabartë më gabimin absolut

fillestar i shumëzuar me faktorin 10n .

Kjo humbje e saktësisë si rezultat i rrumbullakimit të numrave mund të mënjanohet duke i

renditur me kujdes operacionet në mënyrë që operacionet (siç ishte mbledhja e numrave të

afërt ose pjestimi me numra të vegjël) që mbartin gabime mundësisht të shmangen ose të jenë

në fund të vargut të operacioneve.

Ushtrime:

1. Të gjendet intervali më i gjerë në të cilin përafrimi p’ i numrit p duhet të ndodhet në mënyrë

që gabimi relativ të jetë deri në 10-4

nëqoftëse p është:

a) b) e c) 2 d) 73

2. Supozojmë se p’ duhet të përafrojë p me gabim relativ deri në 10-3

. Gjeni intervalin në të

cilin p’ duhet të ndodhet në qoftëse p është:

Page 8: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

6

a) 150 b) 900 c) 1500 d) 90 .

3. Të llogaritet gabimi absolut dhe relativ në përafrimet që vijojnë të p me p’ :

a) p = , p’ = 22/7 b) p = , p’ =3.1416 c) p = e , p’ = 2.718

d) p= 2 , p’ =1.414 e) p = e10

, p’ =22000 e) p = 10 , p’ = 1400

g) p = 10 , p’ =39900

4. Të kryhen llogaritjet e mëposhtëme (I) ekzaktësisht, (II) duke përdorur arithmetikës me

ndërprerje deri në tre shifra , (III) duke përdorur arithmetikën e rumbullakosjes deri në në tre

shifra. Pastaj llogaritni gabimet relative për rastet (II) dhe (III).

a) 4/5 + 1/3 b) 4/5 · 1/3 c) (1/3 -3/11) + 3/20 d) (1/3 + 3/11) - 3/20

5. Tre termat e parë të serisë që përafron funksionin arctg janë : x - x3 /3 + x

5 /5 .

Të llogariten gabimet absolute dhe relative për përafrimet e mëposhtëme të kur përdoret

polinomi i mësipërm në vënd të arctg :

a) 4 [arctg(1/2) + arctg(1/3)] b) 16 arctg(1/5) - 4 arctg(1/239)

6. Numri e përcaktohet ndonjëherë si e =1

0nn !, ku n! = n(n-1)...2.1, n.q.s n 0

Llogaritni gabimin absolut dhe relativ në përafrimet e mëposhtëme të e :

a) e =1

0

5

nn !, b) e =

1

0

10

nn !

7. Të gjendet numri ekuivalent decimal i numrave të makinës me pikë notuese ( formati i

IBM):

a) 0 1000011 101010010011000000000000

b) 1 1000011 101010010011000000000000

c) 0 0111111 010001111000000000000000

d) 0 0111111 010001111000000000000001

8. Të gjenden numrat e makinës më të afërt më i vogël dhe më i madh në formë decimale për

numrat e dhënë në ushtrimin 7.

9. Supozojmë se fl(y) është përafrimi i y me rumbullakosje deri në k shifra.Tregoni që :

y fl y

y

k( ).05 10 1

10. Koeficientët binormalë janë:

Cm

k m kk

m !

!( )! ,

dhe numrat decimalë të makinës janë në formën :

0.d1 d2 d3 d4 10n , 1 d1 9 , 0 di 9 dhe -15 n 15.

Sa është vlera më e madhe e m për të cilën koeficentët binormalë Cm

3 mund të llogariten pa

shkaktuar overfloë në makinë.

Përgjigjet:

1. Intervalet më të gjerë janë:

a) (3.1412784, 3.1419068) b) (2.7180100, 2.7185536) c)(1.4140721, 1.4143549)

d) (1.9127398, 1.9131224).

3. Gabimet absolute janë:

a) 0.001264 , b) 7.346 10-6

, c) 2.818 10-4

, d) 2.136 10-4

, e) 2.647 101 ,

f) 1.454 101 g) 420 h) 3.343 10

3 ,

gabimet relative janë:

a) 4.025 10-4

, b) 2.338 10-6

, c) 1.037 10-4

, d) 1.510 10-4

, e) 1.202 10-3

,

Page 9: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

7

f) 1.050 10-2

, g) 1.042 10-2

, h)9.213 10-3

5. a) përafrimi: 3.14557613, gabimi relativ: 3.983 10-3

, gabimi absolut : 1.268 10-3

b) përafrimi: 3.14162103, gabimi relativ: 2.838 10-5

, gabimi absolut : 9.032 10-6

.

7. a) 2707 , b) -2707 , c) 0.0174560546875 , d) 0.0174560584130

1.2 Diferencimi numerik

Supozojmë se njohim vlerat e një funksioni f(x) në një varg vlerash të baraslarguara të

argumentit x , të cilat janë:

fn = f(xn) , xn = n.h ,

ku n=0, 1, 2, 3, 4 .... dhe h është hapi midis pikave të këtij vargu.

Kërkojmë të llogaritim përafërsisht derivatin e funksionit në një pikë p.sh. f’(0) në varësi të

vlerave fn (fig.2.1).

Duke zbërthyer funksionin në serinë e Tejlorit

përreth vlerës f(0)=f0 :

f(x)=f0 +x.f’(0)+x2 /2 .f’’(0)+x

3 /6 .f’’’(0)+...

(2.1)

mund të shprehim vlerat e funksionit në pikat

afër x=0:

f 1=f(x= h)=f0 h.f’+h2 /2 .f’’ h

3 /6.f’’’+O(h

4)

(2.2a)

f 2=f(x= 2h)=f0 2h.f’+2h2 /2 .f’’ 4h

3 /3.f’’’

+O(h4) (2.2b)

Ku O(h4) tregon terma p.m.v të rendit h

4 e lart.

Mund të supozohet se funksioni f dhe derivatet e tij janë të rend madhësie siç ndodh

për shumicën e funksioneve të njohur në Fizikë. Duke zbritur f-1 nga f1 , gjejmë :

f’(0)= (f1 -f-1 )/2h - h2 f’’’ /6 + O(h

4) (2.3a)

e cila për h shumë të vogla bëhet:

f’(0) (f1 -f-1 )/2h (2.3b)

Kjo quhet formula e “3 pikave” . Ajo do të ishte e saktë (jo e përafruar) kur funksioni f do të

ishte një polinom i rendit II . Pra, në thelb në formulën (2.3b) është supozuar se funksioni f

është interpeluar (përafruar) me një polinom të rendit II në intervalin (-h,+h).

Ndërsa në të ashtuquajturat formulat e dy pikave:

f’(0) (f1 -f0 )/2h + O(h) (2.4a)

f’(0) (f1 -f0 )/2h + O(h) (2.4b)

janë bazuar në supozimin që funksioni f është përafruar me një funksion linear (polinom i

gradës I) në intervalin : x= h

Barazimi (2.3b) është një rezultat i natyrëshëm që na kujton formulat që përdoren për

përcaktimin e delivateve në llogarijet e zakonëshme matematike. Termi i gabimit (i rendit h2 )

, në parim mund të bëhet sa të duam i vogël duke zvogëluar vlerën e hapit h.

Shembull 1. Le ta zemë se f(x)=sin(x), derivati i të cilit është i njohur f’(x)=cos(x) dhe pë x=1

, ai merr vlerën f’(x=1)=0.540302. Programi i mëposhtëm në Fortarn (chap1a.for) ose në

Basic(chap1a.bas) e llogarit këtë derivat sipas formulës (2.3b), ku vlera e h është si input në

program si dhe gabimin që bëhet nga llogaritja numerike.

x

f(x)

x=-2h x=-h x=0 x=h x=2h

f-2 f-1 f0 f1 f2

Fig. 2.1

Page 10: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

8

Prgrami chap1a.for

c chap1a.for

X=1.

EXACT=COS(X)

10 PRINT *, 'FUT VLEREN E H (OSE 0 PER TA NDALUR)'

READ *, H

IF (H .LE. 0) STOP

FPRIME=(SIN(X+H)-SIN(X-H))/(2*H)

DIFF=EXACT-FPRIME

PRINT 20,H,DIFF

20 FORMAT (' H=',E15.8,5X,'ERROR=',E15.8)

GOTO 10

END

Prgrami chap1a.bas

10 Rem programi chap1a.bas

20 X=1.

30 EXACT=COS(X)

40 PRINT “FUT VLEREN E H(OSE 0 PER TA NDALUR)”

50 INPUT H

60 IF H < 0 OR H=0 THEN 110

70 FPRIME=(SIN(X+H)-SIN(X-H))/(2*H)

80 DIFF=EXACT-FPRIME

90 PRINT H,DIFF

100 GOTO 10

110 STOP

120 END

Programi mund të përdoret edhe për formulat (2.4a dhe b) të dy pikave duke ndryshuar në

program vetëm reshtin ky bëhet derivati i funksionit. Duke ekzekutuar programin për vlera të

ndryshme të h do të vini re se rezultati përmirësohet duke zvogëluar h , por deri në një farë

pike pas të cilës rezultati keqësohet. Kjo ndodh për arësye se arithmetika në kompjuter kryhet

vetëm me një precizion të caktuar (5-6 shifra dhjetore për variablat BASIC me single

precision), kështu që kur bëhet diferenca në numurues në formulat (2.3 ose 2.4) nëse h është

shumë i vogël dhe

f1 ndryshon shumë pak nga f2 atëhere gabimet e “rumbullakimit” nga precizioni i makinës

dalin shumë të mëdha. P.sh., në qoftë se h=10-6

, atëhere :

f1=sin(1.000001)=0.841472; f-1 =sin(0.999999)=0.841470, dhe f1-f-1 =0.000002 dhe formula

(2.3b) jep f’ 1.000000 , i cili është një rezultat shumë i gabuar. Por nëse arithmetika e

kompjuterit ka precizion deri në 10 shifra dhjetore atëhere rezultati do dilte f’ 0.540300 që

është shumë afër vlerës ekzakte. Pra diferencimi numerik është një proces jostabël në thelb (jo

i përcaktuar mirë në limitin kur h 0) dhe duhet kryer me kujdes në varësi të precizionit të

kompjuterit.

Mund të përmirësohet më tej formula e tre pikave (2.3b) duke e lidhur f’ edhe me pika të

tjera të vargut të larguara më tej nga x=0. P.sh. , duke përdorur ekuacionin (2.2) mund të

nxirret lehtë formula e “5-pikave”:

f’ 1/12 h .[f-2 -8f-1 +8f1 -f2]+O(h4) (2.5)

Llogaritja e derivateve me këtë formulë do të thotë që funksioni f është përafruar me një

polinom të gradës së 4 në intervalin e 5-pikave [-2h,2h] . Megjithëse kërkon më shumë

llogaritje kjo formulë jep vlera më të sakta se sa formula (2.3b), ajo arin saktësinë e formulës

Page 11: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

9

(2.3b) për një hap 10 herë më të madh. Kjo është shumë e rëndësishme kur duhen të ruhen në

kompjuter shumë vlera të f , një saktësi më e madhe lejon një varg më të rralluar për tu ruajtur

në kujtesën e kompjuterit , pra e kursen këtë kujtesë. Megjithatë , meqënë formulën (2.5) ka

më shumë operacione matematike sesa (2.3b) dhe ka shuarje të konsiderueshme midis

termave (ato kanë edhe koeficientë pozitivë edhe negativë) do të lindin problemet e

precizionit për vlera të vogla të h më shpejt (pra me h më të mëdha) sesa në formulën (2.3b) .

Mund të gjenden formulat për derivate të rendeve më të lartë duke marë një përafrim të

përshtatëshëm në barazimin (2.2). Për shëmbull, është lehtë të kuptohet që :

f1 - 2f0 + f -1 = h2 f’’ + O(h

4) , (2.6)

pra një përafrim i mirë i derivatit të rendit të dytë me saktësi të rendit h2 , është:

f’’ (f1 - 2f0 + f -1 )/h2

(2.7)

Formulat me diferenca për derivatet e rendeve të ndryshme për rastet me 4 dhe 5-pika jepen

në tabelën 2.1

Tabela 2.1

----------------------------------------------------------------------------------------------------

4-pika 5-pika

----------------------------------------------------------------------------------------------------

h f’ 1/6 .(-2f 1 -3f0 +6f 1 - f 2 ) 1/12 (f-2 -8f-1 +8f1 -f2)

h2

f’’ f-1 -2f0 +f1 1/12 (-f-2 + 16f-1 -30f0 +16f1 -f2 )

h3

f’’’ (-f 1 + 3f0 -3f +f 2 ) 1/2 (-f-2 +2f-1 -2f1 +f2)

h4

f(IV)

..... f-2 - 4f-1 + 6f0 -4f1 +f2

----------------------------------------------------------------------------------------------------

Ushtrimi 2.1 Duke përdorur një funksion çfardo që ja dini derivatin analitikisht, të studiohet

saktësia e formulave të tabelës 1.1 , për vlera të ndryshme të h.

1.3 Integrimi numerik

Me kuadraturë ose integrim numerik ne kuptojmë llogaritjen e integralit të një funksioni

të përcaktuar midis dy kufijve a dhe b ku a<b. E ndajmë intervalin (a,b) në një numër çift N

intervalesh të vegjël të barabartë më madhësi h , d.m.th. :

N= (b-a)/h

Atëhere integrali nga a në b mund të ndahet në N/2 integrale në formën:

f x dx f x dx f x dx f x dxa

b

a

a h

a h

a h

b ha

b

( ) ( ) ( ) ..... ( )

2

2

4

2

(3.1)

Pra , mjafton që të gjemë një formulë për integrimin në një interval nga -h në +h.

Ideja bazë e të gjitha formulave të kuadraturës që do shohim është përafrimi i funksionit f

në intervalin (-h,+h) me një funksion që mund të integrohet me saktësi, d.m.th që integrohet

analitikisht. P.sh. , Përafrimi më i thjeshtë është që në intervalet [-h,0] dhe [0,+h] funksioni të

konsiderohet linear në secilin interval veçmas (shih figurën 2.1). Gabimi që bëhet gjatë këtij

përafrimi (interpolimi) është i rendit h2f’’ , kështu që integrali përafrohet me :

f x dxh

f f f O hh

h

( ) ( ) ( ),2

21 0 1

3 (3.2)

e cila njihet si regulli i njohur i trapezit.

Një përafrim më i mirë mund të bëhet duke kuptuar që seria e Tejlorit (1-1) mund të na

japë interpolime më të mira të f . Duke përdorur formulat e diferencave (2.3b) dhe (2.7) për f’

dhe f’’ respektivisht, për |x|<h kemi:

Page 12: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

10

f x ff f

h

f f f

hx O x( ) ( )0

1 1 1 0 1

2

2 3

2

2

2 , (3.3)

dhe mund të integrohet analitikisht në intervalin (-h,+h) duke marë:

f x dxh

f f f O hh

h

( ) ( ) ( )3

41 0 1

5 . (3.4)

Ky quhet rregulli i Simpsonit, i cili është dy rende më i saktë se sa formula trapezoidale

(3.2). Gabimi është dy rende më i vogël se sa çmund të pritej nga formula (3.3) për arësye se

termi x3 nuk kontribuon në integral. Duke kombinuar këtë formulë me barazimin (3.1) ,

gjejmë:

f x dxh

f a f a h f a h f a h f b h f bh

h

( ) [ ( ) ( ) ( ) ( ) ... ( ) ( )]3

4 2 2 4 3 4 (3.5)

Si shembull , në programin chap1b llogaritet integrali :

e dx ex

0

1

1 1718282. ,

duke përdorur rregullin e Simpsonit . Në program vlera e N=1/h është si variabël input

c chap1b.for

FUNC(X)=EXP(X) |funksioni që do integrohet

EXACT=EXP(1.)-1.

30 PRINT *,'ENTER N EVEN (.LT. 2 TO STOP)'

READ *, N

IF (N .LT. 2) STOP

IF (MOD(N,2) .NE. 0) N=N+1

H=1./N

SUM=FUNC(0.) |Kontributi prej x=0

FAC=2 |Faktori i rregullit të Simpsonit

DO 10 I=1,N-1 |Cikli për shumimin

IF (FAC .EQ. 2.) THEN |Ndryshimi i faktorit

FAC=4

ELSE

FAC=2.

END IF

X=I*H |Vlera e i-të e x

SUM=SUM+FAC*FUNC(X) |Kontributi i termit të i-të në integral

10 CONTINUE

SUM=SUM+FUNC(1.) |Kontributi prej x=1

XINT=SUM*H/3.

DIFF=EXACT-XINT

PRINT 20,N,DIFF

20 FORMAT (5X,'N=',I5,5X,'ERROR=',E15.8)

GOTO 30 |Rifillon me një vlerë të re të N

END

1 rem Programi chap1b.bas

Page 13: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

11

10 EXACT=EXP(1.)-1.

20 PRINT “Jep nje vlere cift te N”

30 input N

40 if N<2 then 170

50 H=1./N

60 SUM=exp(0)

70 FAC=2

80 for J=1 to N-1

90 if FAC =2 THEN FAC=4 ELSE FAC=2

100 X=J*H

110 SUM=SUM+FAC*exp(X)

120 next j

130 SUM=SUM+exp(1.)

140 XINT=SUM*H/3.

150 DIFF=EXACT-XINT

160 PRINT “N=“;N,”H=“;H,”ERROR=“;DIFF

165 goto 20

170 end

Në se zëvëndësojmë rregullin e Simpsonit me atë të trapezit në program , do të duket se

rezultatet për të njëjtën vlerë të h janë më pak të sakta . Sa më i vogël të jetë intervali h (sa më

i madh N) aq mq i saktë është rezultati; gabimet e rumbullakimit (si pasojë e precizionit të

kompjuterit) nuk ndikojnë pasi vlerat e funksionit f hyjnë në formulën e shumimit me të

njëjtën shenjë, në të kundërt të derivimit numerik.

Në integrimin numerik ka rëndësi të dihet se sa i vogël duhet të jetë h në mënyrë që

intëgrali të llogaritet me një saktësi të caktuar. Megjithëse është e mundur që nxirren kufijtë e

gabimeve me saktësi , gjëja më e thjeshtë është praktika në kompjuter duke ekzekutuar

programin me h gjithnjë e më të vogël dhe duke parë ndryshimet e rezultatit.

Duke përdorur serinë Tejlor (2.1) me më shumë terma për të interpoluar funksionin f dhe

duke marë përafrime më të mira për derivatet, mund të merren formula kuadrature të rendeve

më të larta. Përgjithësimet e rregullit të Simpsonit duke përdorur polinome të rendit të tretë

dhe të rendit të katërt janë:

f x dxh

f f f f O hx

x

( ) ( ) ( )

0

33

83 30 1 2 3

5 (3.6a)

f x dxh

f f f f f O hx

x

( ) ( ) ( )

0

32

457 32 12 32 70 1 2 3 4

7 (3.6b)

që quhen edhe regulli me 3/8 i Simpsonit dhe rregulli i Bode -s.

Duke zbatuar programin e mësipërm me tre rregulla: regulli i trapezit (3.2), rregulli i

Simpsonit (3.6a) dhe regulli i Bode-s (3.6b) do të shikoni që rregulli i fundit jep rezultate më

të sakta edhe për numur të vogël të N (i cili për këtë rregull duhet të jetë shumëfish i 4 ) p.sh.

4 . Mund të mendohej se duke marë interpelime me polinome të rendeve akoma më të larta do

të ishte më e përshtatëshme. Por polinomet e rendeve më të larta tentojnë të oshilojnë dhe

çojnë në interpolim të pasaktë. Nga ana tjetër koeficientët e vlerave të f në pikat e ndryshme të

rjetës mund të hyjnë me shenja pozitive ose negative në formulat e rendeve më të lartë duke

krijuar edhe problemin e rumbullakimit nga precizioni i kompjuterit. Kështu që është më e

sigurtë të përdoren formula të rendeve më të ulta duke bërë h sa më të vogël. Formulat e

Page 14: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

12

kuadraturës të përshtatëshme për rende më të larta mund të nxirren kur heqim dorë nga

kërkesa që intervali të ndahet në segmente të barabartë.

Ushtrimi 3.1

Duke përdorur ndonjë funksion integralin e të cilit mund ta llogaritni analitikisht, të studiohet

saktësia e formulave të ndryshme të kuadraturës që janë gjetur më lart për vlera të ndryshme të

h.

Duhet patur kujdes në përdorimin e formulave të kuadraturës në dy aspekte:

Së pari, në integralet që kanë kufirin e sipërm shumë të madh është mirë që të ndryshohet

variabli. P.sh. në integralin:

dx x g x

b

. ( )2

1

,

ku g(x) është konstant për x të mëdha, formula e Simpsonit do jepte një shumë që do të

konvergjonte shumë ngadalë kur b bëhet e madhe dhe h të ishte e fiksuar (do të kërkonte një

kohë të gjatë për kompjuterin). Por , po të ndryshojmë variablin me t=x-1

, integrali sillet:

b

g t dt1

1

1( ) ,

i cili mund të vlerësohet nga çdo formulë kuadrature.

Se dyti, pikat singulare në integrim (pika ku funksioni nën integral shkon në infinit ose ka

vlerë të papërcaktur) mund të manipulohen përsëri me anë të zëvëndësimit të variablave. P.sh.

integrali:

dx x g x.( ) ( )/1 2 1 2

0

1

,

ka një singularitet të integrueshëm në x=1 (nëse funksioni g(x) është i rregullt në këtë pikë) i

cili meqë f(x=1)= do të jipte në rezultat nga formulat e kuadraturës. Një rezultat i saktë

mund të merret duke zëvëndësuar variablin t=(1-x)1/2

. Pas këtij zëvëndësimi merret:

2 2 12 1 2

0

1

2dt t g t.( ) ( )/ ,

i cili mund të përafrohet pa shqetësim.

Singularitetet e integrueshme mund të kalohen duke nxjerrë formula kuadrature të

përshtatëshme për to. Supozojmë se duam të llogaritim integralin:

f x dx f x dx f x dx

h

h

( ). ( ). ( ).00

1 1

,

ku f(x) sillet si Cx-1/2

afër x=0, ku C është konstante. Integrali nga h në 1 është i rregullt , pra

llogaritet lehtë nga kuadratura, ndërsa integrali nga 0 në h mund të përafrohet me 2Ch1/2

=2h.f(h).

Ushtrimi 3.2 Të shkruhet programi për llogaritjen e integralit:

t t dt2 3 1 3

0

1

1 21 2 3/ / /( ) / ,

duke përdorur njërën nga formulat e kuadraturës që janë dhënë më lart dhe të studiohet

saktësia e saj për vlera të ndryshme të h (Udhëzim: të ndahet intervali i integrimit në dy pjesë

dhe të bëhet ndryshimi i variavlave i ndryshëm për dy intervalet e ndryshme me qëllim për të

mënjanuar singularitetet).

Page 15: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

13

1.4 Gjetja e rrënjëve

Operacioni i tretë elementar që përdoret zakonisht është gjetja e rrënjëve të një funksioni f(x) i

cili është i njohur për çdo x. Një metodë e sigurtë është kur njihet përafërsisht lokalizimi i një

rrëje psh x0 . Në këtë rast zgjidhet një vlerë çfardo e x që të jetë më e vogël se rrënja x0 dhe

pastaj rritet kjo vlerë me hapa pozitivë të vegjël duke përsëritur procesin me përgjysmim hapi

çdo herë që funksioni f ndryshon shenjë. Vlera e x e gjeneruar në këtë mënyrë natyrisht

konvergjon tek x0 , kështuqë kërkimi i rrënjës mund të ndalet kur hapi bëhet më i vogël se sa

një tolerancë e kërkuar. Programi Chap1c gjen rrënjën pozitive të funksionit f(x)=x2 -5 , për të

cilin njihet rrënja e saktë x0=51/2

=2.236068, me një tolerancë të rendit 10-6

duke përdorur x=1

si vlerë fillestare të hamëndur dhe një hap fillestar 0.5:

Chap1c.for

FUNC(X)=X*X-5. |fuksioni rrënja e të cilit kërkohet

TOLX=1.E-06 |toleranca për kërkimin e rrënjës

X=1. |rrënja e hamëndur

FOLD=FUNC(X) |vlera fillestare e funksionit

DX=.5 |hapi fillestar

ITER=0 |fillimi i iteracioneve

10 CONTINUE

ITER=ITER+1 |rritja e numrit të iteracionit

X=X+DX |vlera tjetër e x

PRINT *,ITER,X,SQRT(5.)-X |shtyp vlerat korrente

IF ((FOLD*FUNC(X)) .LT. 0) THEN

X=X-DX |nëse ndryshon shenja kthehet mbrapa dhe

DX=DX/2 | përgjysmohet hapi

END IF

IF (ABS(DX) .GT. TOLX) GOTO 10

STOP

END

Chap1c.bas

10 FUNC(X)=X*X-5.

20 TOLX=1.E-06

30 X=1.

40 FOLD=FUNC(X)

50 DX=.5

60 ITER=0

70 ITER=ITER+1

80 X=X+DX

90 PRINT ITER,X,SQR(5.)-X

100 IF FOLD*FUNC(X)>0 goto 130

110 X=X-DX

120 DX=DX/2

130 IF ABS(DX) > TOLX GOTO 70

140 END

Page 16: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

14

Me hapin e zgjedhur përgjigja (përfundimi i programit) arrihet pas 33 iteracionesh duhet patur

kujdes kur përdoret kjo metodë sepse kur përdoret një hap fillestar shumë i madh të

kapërxehet rrënja e kërkuar dhe të gjënden rrënjë tjetër nëse funksioni f ka disa rrënjë.

Ushtrimi 4.1

Ekzekutoni programin e mësipërm për vlera të ndryshme të tolerancës, vlerës fillestare të

hamendur, dhe hapit fillestar. Vini re që ndonjë herë ju mund të gjeni një rrënjë negative

(-51/2

). Vini re çfarë ndodh nëse vlera e hamendur fillestare është -3 dhe hapi fillestar është 6?

Një algoritëm tjetër më efektiv, i ashtuquajtur Njuton-Raphson, përdoret në rastin kur ne

njohim edhe derivatin e f për çdo x. Kjo metodë gjeneron një sekuencë vlerash xi që

konvergjojnë tek x0 me supozimin që f është lokalisht linear afër x0 (shih figurën 4.1).

Figura 4.1

Pra,:

xi+1

=xi - f(x

i)/f’(x

i). (4.1)

Me këtë metodë arrihet një konvergjencë e

shpejtë (pas 5 iteracionesh në shembullin e

mësipërm). Ky është një algoritëm që

zakonisht përoret në kompjutera për vlerësimin

e rrënjës katrore .

Një metodë tjetër është ajo e sekantes. Nëse

derivati në ekuacionin (4.1) shprehet nëpërmjet

diferencave të fundme(2.4b):

f’(xi) [f(x

i)-f(x

i-1)]/(x

i-x

i-1), dhe atëhere merret

një formulë rekurence që lidh xi+1

me xi dhe

xi-1

(shih fig. 4.12):

xi+1

= xi -f(x

i).(x

i-x

i-1 )/[f(x

i)-f(x

i-1)] (4.2)

Cdo dy vlera afër x0 mund të përdoren si x0 dhe x

1 për të filluar algoritmi, i cili përfundon

kur ndryshimi i x nga një iteracion në tjetrin është më i vogël se një tolerancë e kërkuar. Po qe

se vlerat fillestare të hamendura janë afër rrënjës së vërtetë, konvergjenca e këtij algoritmi

është më e shpejtë se sa në algoritmin Neëton-Raphson.

Ushtrimi 4.1 Shkruani programin për gjetjen e rrënjëve pozitive të x2 - 5 duke përdorur

metodën e Neëton-Raphson dhe metodën e sekantes. Studioni sjelljen e metodës së fundit

duke ndryshuar hamendjen e rrënjës fillestare.

Kur funksioni nuk ka sjellje të mirë afër rrënjës së tij (p.sh. ka një pikë infleksioni afër

x0) ose kur ai ka disa rrënjë , metodat e Neëton-Raphson dhe e sekantes mund të konvergjojnë

në vlera të gabuara nëse vlera e hamendur e rrënjës nuk është zgjedhur mirë.

1.5 Kuantizimi gjysëm klasik i lëkundjeve të molekulave

Si shembull ku kombinohen të tre operacionet e mësipërme të analizës numerike kemi

zgjedhur problemin e lëkundjeve të një molekule dyatomike si psh O2 ,që ka dy bërthama të

lidhura prej elektroneve që vërtiten rreth tyre. Meqë bërthamat janë shumë më të rënda se

elektronet mund të supozojmë se elekronet i axhustohen në çast ndryshimeve të pozicionit të

Xi

Xi+1

X0

Xi

Xi+1

Xi-1

X0

Page 17: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

15

bërthamave (përafrimi Born-Oppenheimer) duke lëvizur shumë shpejt. Atëhere problemi sillet

në lëvizjen e bërthamve në një potencial V që varet vetëm nga r -distanca midis tyre. Ky

potencial është tërheqës për distanca të vogla dhe shtytës në distanca të mëdha . Ai merret

zakonisht në formën e potencialit Lennard-Jones ose siç quhet ndryshe potenciali 6-12:

V r Va

r

a

r( ) [( ) ( ) ]4 0

12 6 , (5.1)

i cili ka formën e treguar në pjesën e sipërme të figurës 5.1, minimumi arihet në rmin=21/6

a dhe

ka thellësinë V0 .

Figura 5.1

(lart)- Potenciali Lennard-Jones dhe pikat e

kthimit të brëndëshme e të jashtme për një

energji negative Vija me pika-pika tregon

përafrimin parabolik të potencialit.

(poshtë)- Trajektorja përkatëse në hapësirën

fazore.

Zgjidhja e saktë e problemit bëhet me anë të ekuacionit një-dimensional të

Shroedingerit :

[ ( )]h2 2

22m

d

drV r En n n . (5.2)

Ku m është masa e reduktuar e dy bërthamave , n funksioni valor në gjendjen me energji En .

Qëllimi ynë është të gjejmë pikërisht nivelet energjetike En duke konsideruar lëvizjen e

bërthamave nga pikpamja e mekanikës klasike e duke zbatuar “rregullat e kuantizimit” të

përafrimit të Bohr-it.

Nga pikpamja e mekanikës klasike lëvizja në potencialin V(r) mund të ndodhë për energji

-V0<E<0. Bërthamat lëkunden periodikisht midis pikave të kthimit të brendëshme e të

jashtëme rin dhe rout , siç tregohet në figurën 5.1 . duke shënuar p impulsin relativ të

bërthamave ( impulsin e grimcës hypotetike me masë sa masa e reduktuar m në lidhje me

qendrën e masës), atëhere energjia e plotë që është konstante, është:

E=p2 /2m + V(r) (5.3)

Trajektorja në hapësirën fazore (kordinatat p dhe r ) është e mbyllur si në figurë dhe ekuacioni

i trajektores është:

p(r)= [2m(E-V(r))]½ (5.4)

Lëvizja klasike ndodh për çdo energi midis -V0 dhe 0. Nga pikpamja klasike ajo ndodh vetëm

për energji të përcaktuar En për të cilat integrali i veprimit nëpër trajektoren e mbyllur fazore :

S Ep r

dr( )( )

h, (5.5)

merr vlera të kuantuara në mënyrë të tillë që për vlerat e lejuara të energjisë En integrali të jetë

një gjysëm-shumëfishi i 2 (h është konstantja e Plankut). Duke zëvëndësuar p nga (5.4) në

integral e duke patur parasysh që për çdo vlerë të r trajektorja kalon dy herë (një herë me vlerë

pozitive të p dhe një herë me vlerë negative të p) , kemi:

Page 18: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

16

S Em

E V r dr nn

r

r

in

out

( ) ( ) [ ( )] ( )/ /22 1

22

2

1 2 1 2

h , (5.6)

ku n është numër i plotë jonegativ. Në kufijtë e integrimit , madhësia nën integral bëhet zero.

Për të patur një formulë pa dimensione , futim madhësitë :

E

Vx

r

a

ma V

0

2

0 1 22, , ) / = (

2h ,

dhe atëhere formula (5.6) shkruhet:

S S V v x dx nn n

x

x

in

out

( ) ( ) [ ( )] ( )/1

2

1

20

1 2 (5.7)

ku v xx x

( ) ( )41 112 6

është potenciali pa dimensione.

Madhësia është pa dimensione dhe karakterizon natyrën kuantike të problemit. Në limitin

klasik (h e vogël dhe m e madhe ) , bëhet e madhe. Duke njohur momentin e inercisë të

molekulës (nga energjia e rotullimit) dhe energjinë e disocimit (energjia që duhet për ta ndarë

molekulën në dy atomet përbërës), është e mundur që të përcaktohen nga vrojtimet parametrat

a dhe V0 dhe rjedhimisht madhësinë e . Për molekulën e H2 =21.7, ndërsa për molekulën

HD =24.8, dhe për molekulën e O2

=150 . Këto vlera të larta tregojnë se përafrimi gjysëm-klasik për lëvizjen lëkundëse të

këtyre molekulave është i vlefshëm.

Programi EXMPL1 llogarit vlerat e n brenda një tolerance të zgjedhur në fillim ,

shërben si variabël input.

10 rem programi exmpl1.bas llogarit nivelet energjetike ne perafrimin

20 rem gjysemklasik te lekundjeve te molekulave (poenciali Lennard-xhonson)

22 DIM F3(10000)

23 OPEN "EXMPL.DAT" FOR OUTPUT AS FILE #1%

25 GAMA=21.7

30 tolx=.00005

40 tolE=.00005

45 DEF FN1(X,EN)=1/X^12-1/X^6-EN/4

50 FOR N=0 TO 10

60 read EN

70 DEN=.001

90 X1=1+1/(N+1)/100

100 X2=2^(1/6)+(N+1)/100

110 DX1=.005

120 DX2=.005

130 F1OLD=FN1(X1,EN)

140 F2OLD=FN1(X2,EN)

145 REM PRINT F1OLD,F2OLD

150 ITER1=0

160 ITER1=ITER1+1

165 REM PRINT ITER1

170 X1=X1+DX1

175 F1NEË=FN1(X1,EN)

180 IF F1OLD*F1NEË<0 THEN 190 ELSE 210

Page 19: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

17

190 X1=X1-DX1

200 DX1=DX1/2

210 IF ABS(DX1)>TOLX GOTO 160

220 rem PRINT "X1=";X1

230 ITER2=0

240 ITER2=ITER2+1

245 REM PRINT ITER2

250 X2=X2+DX2

255 F2NEË=FN1(X2,EN)

260 IF F2OLD*F2NEË<0 THEN 270 ELSE 290

270 X2=X2-DX2

280 DX2=DX2/2

290 IF ABS(DX2)>TOLX GOTO 240

300 rem PRINT "X2=";X2

500 NN=10

510 H=(X2-X1)/NN

520 SN=SQR(EN-4*(1/(X1+h)^12-1/(X1+h)^6))

530 FAK=2

540 FOR I=2 TO NN-2

550 IF FAK=2 THEN FAK=4 ELSE FAK=2

560 X=X1+I*H

570 SN=SN+FAK*SQR(EN-4*(1/X^12-1/X^6))

580 NEXT I

590 SN=GAMA*(SN+SQR(EN-4*(1/(X2-h)^12-1/(X2-h)^6)))*h/3

600 F3OLD=SN-(N+1/2)*3.14159

610 REM ITER3=0

620 ITER3=ITER3+1

625 rem print iter3,en,den

630 F3(ITER3)=F3OLD

640 EN=EN+DEN

650 IF ITER3=1 GOTO 90

660 IF F3(ITER3)*F3(ITER3-1)<0 THEN 670 ELSE 690

670 EN=EN-DEN

680 DEN=DEN/2

690 IF ABS(DEN)>TOLE GOTO 90

700 PRINT N,"EN=";EN

750 iter3=0

710 NEXT N

1000 data -.8,-.85,-.75,-.65,-.55,-.48,-.4,-.33,-.26,-.2,-.15

Ushtrimi 5.1

Për të testuar programin mund të zgjidhet një potencial për të cilin ekuacioni i Shredingerit

(1-17) ka zgjidhje analitike. Të ndryshohet programi duke zgjedhur një potencial parabolik të

formës v(x)=(x-21/6

)-1 (pa dimensione).Ekuacioni i Shredingerit për këtë potencial jep një seri

vlerash të energjisë të baraslaguara nga njera tjetra ku niveli më i ulët i energjisë është mbi

minimumin e potencialt me madhësinë sa gjysma e distancës midis niveleve energjetikë. Për

Page 20: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

18

disa vlera të të krahasohen vlerat e rezultatit numerik me ato që merren duke zgjidhur

analitikisht ekuacionin (5.7).

Ushtrimi 5.2

Ekzekutoni programin për potencialin e Lennard-Jones kur =50. Do vini re që niveli i parë i

eksituar (niveli i dytë energjetik) është tre herë më sipër nga fundi i gropës potenciale se sa

është niveli bazë energjetik (niveli i paeksituar) dhe se distanca midi niveleve të fillimit është

pothuaj e njëjtë . Kjo ndodh për arsye se potenciali Lennard -Jones është thuajse parabolik

përreth minimumit të tij (shih fig.1.3) Duke llogaritur derivatin e dytë të V në minimumin e tij

, të gjëndet “konstantja elastike” dhe të tregohet se frekuenca e lëkundjeve të vogla është

h

V0

5 66 2 10 691/ . (5.8)

Të verifikohet që kjo është në përputhje me rezultatin numerik . A mund ta kuptoni pse

nivelet energjetike më të larta për potencialin Lennard-Jones janë më të dendura (më afër njeri

tjetrit) se sa në potencialin parabolik ?

Ushtrimi 5.3

Ndryshoni tolerancën në algoritmin numerik për pikat e kthimit dhe për kërkimin e energjisë

ose të numrit të pikave në regullin e Simpsonit dhe shikoni efektet mbi rezultatet.

Ushtrimi 5.4

Zëvëndësoni metodën e kërkimit të pikave të brëndëshme dhe të jashtëme të kthimit me

metodën Neëton-Raphson ose me metodën e sekantes.Zëvëndësoni regullin e kuadraturës së

Simsonit me me ndonjë rregull të rendit më të lartë dhe shikoni se si përmirësohen rezultatet.

Ushtrimi 5.5

Vizatoni grafikun n ( ) duke ekzekutuar programin për vlera të ndrysme të

nga 20 deri në 200 dhe interpretoni rezultatin.

Ushtrimi 5.6

Për molekulën e H2 , vrojtimet tregojnë se V0 =4.747 dhe rmin=0.74166 A . Këto madhësi

bashkë me ekuacionin (5.6) japin një frekuencë lëkundjesh h =0.492V0= 2.339 eV, e cila

është 4 herë më e madhe se diferenca e nivelit të parë energjetik të eksitiar me nivelin bazë

energjetik të vrojtuar që është 0.515 eV. Pra Potenciali Lennard-Jones nuk ka formë të

përshtatëshme për molekulën e H2 . Një difekt tjetër është se numri i niveleve që del nga

llogaritja me potencialin L-J është 6 ndërsa në fakt njihen 15. Një formë më e mirë analitike e

potencialit me mëshumë parametra është i ashtuquajturi potenciali i Morse-it :

V r V e r r( ) [( ) ]( )min

0

21 1 (5.9)

i cili mund të integrohet analitikisht. Potenciali i Morse-it ka një minimum në një pikë rmin dhe

parametri zgjidhet në mënyrë të tillë që të përputhet kurbatura e potencialit me nivelin e

parë të eksituar të energjisë . Të gjendet vlera e e përshtatëshme për molekulën e H2 ,

modifikoni programin për të përdorur potencialin Morse dhe llogaritni spektrin e niveleve

energjetike.Do të shikoni që merren më shumë nivele energjetike Krahasoni energitë me ato

që merreshin me potencialin L-J dhe interpretoni rezultatet.

1.6 Interpolimi polinomial

Shpesh ne dimë vlerat e një funksioni f(x) në një një varg pikash x1 , x2 ... xN , (të themi x1 <

x2 .. < xN ), por nuk e njohim shprehjen analitike f(x), siç ndodh shpesh kur një madhësi fizikë

f matet për vlera të ndryshme të një parametri fizik x . Problemi është të vlerësojmë f(x) për

çdo x, duke vizatuar një kurbë të lëmuar që kalon nëpër pikat xi . Nëse x është brenda

Page 21: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

19

intervalit (x1 , xN ) problemi quhet interpolim dhe nëqoftëse x është jashtë këtij intervali ,

provblemi quhet ekstrapolim.

Një nga klasat më të përdorëshme dhe më të njohura për të përafruar funksionin e vlerësuar

në një varg pikash , janë polinomet algjebrikë, pra bashkësia e funksioneve të formës:

Pn (x) = a0 + a1 x + a2 x2 + ... + an x

n ,

ku n është një numër i plotë jonegativ dhe a1 ...aN jnaë konstante reale. Kjo për arsye se

polinomet algjebrikë mund të përafrojnë sa të duam afër çdo funksion të vazhduar në një

segment sipas teoremës së njohur të Ëeierstrass-it:

Për çdo funksion f të vazhduar në [a,b] dhe çdo >0 , ekziston një polinom P i përcaktuar në

[a,b] i tillë që |f(x)-P(x)|< për të gjithë x [a,b] (fig. 6.1)

Figura 6.1

Psh, polinomet e Taylor-it përdoren shpesh për përafrimet e funksioneve. Por duhet theksuar

se këto polinome i përafrojnë funksionet vetëm në intervale shumë afër një pike të dhënë dhe

ekstapolimi tej këtyre intervalave të vogjël na jep përafrime në përgithësi të gabuara.

Ne do kërkojmë polinome përafrues të tillë që mund të përcaktohen thjeshtë nga fakti që

duhet të kalojnë nëpër një seri pikash të njohura. Psh nëpër dy pika të njohura në plan kalon

vetëm një drejtëz , pra vetëm një polinom i rendit të parë mund të kalojë në dy pika të dhëna:

(x1 , y1=f(x1)) dhe (x2 , y2=f(x2)), polinomi linear :

P xx x

x xy

x x

x xy( )

( )

( )

( )

( )

2

1 2

1

1

2 1

2 . (6.1)

Në çdo tri pika të dhëna në plan kalon vetëm një kuadratik (polinom i gradës së dytë) e kështu

me radhë . Në përgjithësi polinomi interpolues i gradës N-1 që kalon nëpër N pika të dhëna në

plan : y1 = f( x1 ) , y2 = f( x2 ) ... yN = f( xN ) jepet nga formula klasike e Lagranzhit:

P xx x x x x x

x x x x x xy

x x x x x x

x x x x x xy

x x x x x x

x x x x x xy

N

N

N

N

N

N N N N

N

( )( )( )...( )

( )( )...( )

( )( )...( )

( )( )...( )...

( )( )...( )

( )( )...( )

2 3

1 2 1 3 1

1

1 3

2 1 2 3 2

2

1 2 1

1 2 1

, (6.2)

ku janë N terma seicili një polinom i gradës N-1 dhe seicili i ndërtuar në mënyrë që të jetë

zero për të gjitha xi me pëjashtim të njerës nga xi ku duhet të jetë yi , pra:

P(xk)=f(xk) për çdo k=1,2...N

Polinomi mund te shkruhet :

P x f x L x f x L x f x L xn N N N k N kk

N

( ) ( ) ( ) . . . ( ) ( ) ( ) ( ), , ,1 11

(6.3)

Page 22: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

20

ku :

Lx x x x x x x x x x

x x x x x x x x x x

x x

x xN k

k k N

k k k k k k k N

i

k iii k

N

,

( )( ).. . ( )( ).. . ( )

( )( )... ( )( ).. . ( )

( )

( )

1 2 1 1

1 2 1 11

(6.4)

për çdo k=1,2..N dhe shpesh LN,k(x) shkruhet Lk(x).

Siç dihet kur një funksion përafrohet me serinë e Taylor-it të rendit n rretht pikës x0 atëhere

gabimi i përafrimit të tij merret në formën :

f x

nx x x x x x

n

n

( ( ( ))

( )!( )( ). . . ( )

1)

0 11

, ku f xn( ( ( ))1) është derivati i n+1-të i funksionit në

një pikë (x) të intervalit (a,b) ku përafrohet funksioni.Po ashtu formula e gabimit kur fuksioni

përafrohet me polinome të Lagranzhit të rendit N-1 do ishte :

f x

Nx x x x x x

N

N

( ( ))

!( )( )... ( )1 2 , e cila përdoret kur ne njohim kufinjtë e derivatit të

funksionit në intervalin e përafrimit të tij.

Mund të provohet lehtë që polinomi P(x) shprehet në formën

P xx x P x x x P x

x x

j j j k i i i k

i j

( )( ) ( ) ( ) ( )

( )

,.., ... ,.., ...1,2 1, 1, 1,2 1, 1,për çdo dy pika xi , xj nga seria e

pikave x1 , x2 ,...xk dhe Pm1,m2,...mk ( 1 mi k) është shënuar polinomi i Lagranzhit që

përputhet me funksionin f(x) në k-1 pikat xm1 ,xm2 , ...xmk) . Pikërisht kjo formulë është thelbi i

algoritmit të Neville-it i cili gjeneron polinomet e Lagranzhit.

Le të jetë P1 vlera e polinomit të rendit zero (pra një konstante) që kalon nëpër pikën (x1 , y1 ),

pra P1 = y1 ; dhe kështu për P2 , P3 ... PN , pra janë vlerat y2 , y3 ... yN . Le të jetë P12 polinomi i

vetëm i rendit të parë që kalon në pikat (x1 , y1 ) dhe (x2 , y2 ). Në mënyrë të ngjashme

përcaktohen polinomet e rendit të parë që kalojnë në pikat 2 dhe 3 , 3 dhe 4 etj. ,pra P23 , P34

... P(N-1)N . Në mënyrë analoge përcaktohen polinomet e rendeve më të larta deri tek polinomi i

rendit (N-1) që kalon nëpër N pika dmth polinomi i dëshiruar. Psh për N=4 , është treguar më

poshtë se si mbushet tabela 6.1 me pasardhësit nga e majta në të djathtë ku ekstremi i djathtë

na tregon polinomin e duhur:

Tablea 6.1

Algoritmi i Neville-it është një mënyrë

rekursive e mbushjes me numra të

tabelës me nga një kollonë çdo herë

duke ecur nga e majta në rë djathtë. Ky algoritëm është mbështetur në në relacionin midis një

polinomi “bir” dhe dy polinomeve “prindër” :

Px x P x x P

x xi i i m

i m i i i m i i i i m

i i m

( )...( )

( )...( ) ( )( )...( )( ) ( )1

1 1 1 2 (6.5)

Kjo rekurencë është e vërtetë pasi të dy “prindërit” janë të përputhur në pikat xi+1 , ... xi+m-1 .

Një përmirësim i rekurencës (6.5) është që të ndiqen dhe ruhen diferencat e vogla midis

“prindërve” dhe “bijve” , që përcaktohen ( për m = 1,2,.. n-1 ) :

Cm,i Pi...(i+m) -Pi...(i+m-1)

x1 : y1 = P1

P12

x2 : y2 = P2 P123

P23 P1234

x3 : y3 = P3 P234

P34

x4 : y4 = P4

Page 23: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

21

Dm,i Pi...(i+m) -P(i+1)...(i+m) (6.6)

Ku me C shënuar diferencat midis “bir-it” dhe “prindit” kur zhvendosemi djathtaz poshtë në

tabelën (6.1) dhe me D diferencat kur zhvendosemi djathtaz lart në tabelë.

Që nga mund të nxirren lehtë (duke shkruajtur formulat 6.6 edhe për Cm+1,i , Cm,,i+1 dhe Dm+1,i

relacionet e rekurencës:

Dx x C D

x x

Cx x C D

x x

m i

i m m i m i

i i m

m i

i m i m i

i i m

1

1 1

1

1

1

1

,

, ,

,

, ,

( )( )

( )( ) (6.7)

Në çdo nivel m vlerat C -së dhe D-së janë korrigjimet që e bëjnë interpolimin një rend më të

lartë. Përgjigja përfundimtare P12...N është e barabartë me shumën e çdo yi plus vargun e C-ve

ose/dhe të D-ve që formojnë rrugën nëpër pemën familjare deri tek biri më djathtas në pemë.

Më poshtë është programi në Fortran dhe Basic që realizon interpolimin polinomial ose

ekstrapolimin. Vlerat XA,YA janë pikat ku njihet funksioni , në rezultat shtypet vlera e

ekstrapoluar e funksionit në një pikë çfardo x si edhe gabimi në përafrmin në këtë vlerë që do

jetë sa korigjimi i fundit që bëhet DY.

SUBROUTINE POLINT(XA,YA,N,X,Y,DY)

PARAMETER (NMAX=10)

DIMENSION XA(N),YA(N),C(NMAX),D(NMAX)

NS=1

DIF=ABS(X-XA(1)) këtu gjendet indeksi NS i pikës më të afërt me x

DO 11 I=1,N

DIFT=ABS(X-XA(I))

IF (DIFT.LT.DIF) THEN

NS=I

DIF=DIFT

ENDIF

C(I)=YA(I)

D(I)=YA(I)

11 CONTINUE

Y=YA(NS) Ky është përafrimi fillestar i y

NS=NS-1

DO 13 M=1,N-1 Për çdo kollonë M të tabelës, bëhet cikli përgjatë vlerave të

DO 12 I=1,N-M C-ve dhe D-be duke i përmirësuar ato.

HO=XA(I)-X

HP=XA(I+M)-X

Ë=C(I+1)-D(I)

DEN=HO-HP

IF(DEN.EQ.0.)PAUSE Ky gabim ndodh vetëm kur dy pika XA janë identike

DEN=Ë/DEN

D(I)=HP*DEN Vlerat përfundimtare të C-së dhe D-së

C(I)=HO*DEN

12 CONTINUE

IF (2*NS.LT.N-M)THEN Pasi është kompletuar tabela, zgjidhet se cili nga C ose D

DY=C(NS+1) duhet shtuar tek Y dmth cilën rrugë duhet të ndjekim

ELSE nëpër tabelë (djathtaz poshtë apo djathtaz lart) në varësi

të faktit nëse NS është mbi gjysmën e sipërme të tabelës

Page 24: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

22

apo nën të,për të arritur tek maja e saj duke ndryshuar

DY=D(NS) edhe NS për të parë ku jemi.

NS=NS-1

ENDIF

Y=Y+DY DY i fundit është tregues i gabimit të përafrimit.

13 CONTINUE

RETURN

END

10 REM Programi kryen interpolimin polinomial te nje funksioni qe jepet ne N pika

11 REM XA, YA . Kur jepet vlera e variablit X ai llogarit vleren e perafruar te

12 REM funksionit Y=f(x) dhe vleresimin e gabimit DY

20 PRINT "SA ESHTE NUMRI I PIKAVE?"

30 INPUT N

35 NMAX = 10

37 DIM XA(N), YA(N), C(NMAX), D(NMAX)

40 FOR I = 1 TO N

45 PRINT "SA ESHTE VLERA E"; I; " E X,F(X)?"

50 INPUT XA(I), YA(I)

60 NEXT I

70 PRINT " SA ESHTE X?"

75 INPUT X

80 NS = 1

90 DIF = ABS(X - XA(1))

100 FOR I = 1 TO N

110 DIFT = ABS(X - XA(I))

120 IF DIFT < DIF THEN 130 ELSE 150

130 NS = I

140 DIF = DIFT

150 REM

160 C(I) = YA(I)

170 D(I) = YA(I)

180 NEXT I

190 Y = YA(NS)

200 NS = NS - 1

210 FOR M = 1 TO N - 1

220 FOR I = 1 TO N - M

230 HO = XA(I) - X

240 HP = XA(I + M) - X

250 Ë = C(I + 1) - D(I)

260 DEN = HO - HP

270 IF DEN = 0 THEN GOTO 275 ELSE 280

275 PRINT "JANE FUTUR DY VLERA TE NJEJTA XA"

277 GOTO 410

280 DEN = Ë / DEN

290 D(I) = HP * DEN

300 C(I) = HO * DEN

310 NEXT I

320 IF 2 * NS < (N - M) THEN 330 ELSE 350

Page 25: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

23

330 DY = C(NS + 1)

340 GOTO 370

350 DY = D(NS)

360 NS = NS - 1

370 REM

380 Y = Y + DY

390 NEXT M

400 PRINT "Y(X)="; Y, "GABIMI="; DY

410 END

1.7 Interpolimi “Kubik Spline”

Kur jepet një funksion i tabeluar yi = y(xi), i=1,2...N , fokusojmë vëmëndjen në një interval të

veçantë psh (xj ,, xj+1 ). Interpolimi linear në këtë interval jepet nga :

y = A yj + B yj+1 (7.1) ,

ku :

Ax x

x xB A

x x

x x

j

j j

j

j j

1

1 1

1 , (7.2)

Ekuacionet (7.1) dhe (7.2) janë rast i veçantë i formulës së interpolimit të Lagranzhit (6.1).

Supozojmë që veç vlerave të tabeluara të y kemi edhe vlerat e tabeluara të një funksioni

tjetër y’’ (më vonë do supozojmë që ky është derivati i dytë i funksionit y ).

Po i përdorim vlerat yj’’ dhe yj+1

’’ si koeficientë linearë të një polinomi kubik që përputhet me

vlerat e tabeluar yj dhe yj+1 në pikat xj , dhe xj+1 , për çfardo zgjedhje të

yj’’ dhe yj+1

’’ . Del se vetëm për një zgjedhje të koeficientëve C dhe D në shprehjen :

y = A yj + B yj+1 + C yj’’ + D yj+1

’’ (7.3)

mund të arrihet kjo përputhje. Kjo zgjedhje është:

C A A x x D B B x xj j j j

1

6

1

6

3

1

2 3

1

2( )( ) ( )( ) , (7.4)

Ku duket se varësia nga x i C dhe D është kubike. Arësyeja pse zgjedhja (7.4) është unike

është se polinomi kubik i x përmban 4 koeficientë që përcaktohen nga 4 vlerat e polinomit të

njohura në 4 pika.

Le të konsiderojmë tani që y’’ është derivati i dytë i polinomit interpolues. Duke llogaritur

derivatet e shprehjes (7.3) në lidhje me x dhe duke ditur varësitë e A,B,C,D nga x , gjejmë:

dy

dx

y y

x x

Ax x y

Bx x y

j j

j j

j j j j j j

1

1

2

1

2

1 1

3 1

6

3 1

6( ) ( )'' '' (7.5)

dhe

d y

dxAy Byj j

2

2 1

'' '' (7.6)

Me që A=1 dhe B=0 në xj , A=0 dhe B=1 në xj+1 , (7.6) tregon se y’’ është derivati i dytë

i tabeluar dhe që ai është i vazhduar në kufirin e dy intervaleve (xj-1 ,, xj ) dhe

(xj ,, xj+1 ). Pra ne mund të vendosim çdo numër për y’’

i , për zgjedhje çfardo derivati i parë

(7.5) nuk do ishte i vazhduar në kufirin e dy intervaleve. Ideja kryesore e metodës “kubik

spline” është që të kërkohet edhe vazhdushmëria e derivatit të parë për të marrë ekuacionet

për y’’

i . Kjo arrihet duke barazuar derivatin e parë (7.5) të llogaritur në x=xj të intervalit (xj-1,,

xj ) me të njëjtin derivat në pikën x = xj por të intervalit (xj , xj+1 ). Pas disa veprimesh

marrim:

Page 26: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

24

x xy

x xy

x xy

y y

x x

y y

x x

j j

j

j j

j

j j

j

j j

j j

j j

j j

1

1

1 1 1

1

1

1

1

16 3 6

'' '' '' (7.7)

ku j = 2,3.. N-1. Këtu kemi N-2 ekuacione me N të panjohura y’’

i , i=1,2..N . Kështu që ka

një familje zgjidhjesh me dy parametra. Për të marë zgjidhje të vetme duhen specifikuar edhe

dy kushte të tjera , që zakonisht zgjidhen kushtet kufitare në x1 dhe xN . Këto zgjidhen

zakonisht në dy mënyra :

- merren njera ose të dyja y’’

1 dhe y’’

N zero (kjo quhet metodë natyrore e “kubik spline”).

- merren seicili nga y’’

1 dhe y’’

N sa vlera e llogaritur nga (7.5) në mënyrë që derivati i

parë i funksionit që interpolohet të ketë vlerë të caktuar në seicilin nga kufijtë.

Një nga arsyet që “kubik spline” është shumë praktik është jo vetëm se ekuacionet (7.7) dhe

dy kushtet kufitare janë lineare , por ato janë edhe tridiagonale, pra ekuacioni për y’’

j është i

çiftuar vetëm me dy fqimjët e tij më të afërt për y’’

j+-1 dhe prandaj sistemi i ekuacioneve

zgjidhet lehtë me algoritmin tridiagonal (që do të shpjegohet në kapitullin mbi zgjidhjen e

sistemit të ekuacioneve algjebrikë)

Më poshtë janë paraqitur programet që realizojnë interpolimin e një funksioni tabelor me

metodën “kubik spline”. Në gjuhën FORTRAN janë paraqitur dy subrutina SPLINE dhe

SPLINT , nga të cilat e para llogarit derivatet e rendit të dytë në N pikat xi ndërsa në të dytën

këto derivate janë input për të llogaritur vlerën e funksionit në një pikë çfardo x .

Në programin BASIC , SPLINE.BAS llogaritjet kryhen në një program të vetëm ku si input

shërbejnë vlera e N dhe xi , yj (j=1,2...N).

SUBROUTINE SPLINE(X,Y,N,YP1,YPN,Y2)

PARAMETER (NMAX=100)

DIMENSION X(N),Y(N),Y2(N),U(NMAX)

IF (YP1.GT..99E30) THEN

Y2(1)=0.

U(1)=0.

ELSE

Y2(1)=-0.5

U(1)=(3./(X(2)-X(1)))*((Y(2)-Y(1))/(X(2)-X(1))-YP1)

ENDIF

DO 11 I=2,N-1

SIG=(X(I)-X(I-1))/(X(I+1)-X(I-1))

P=SIG*Y2(I-1)+2.

Y2(I)=(SIG-1.)/P

U(I)=(6.*((Y(I+1)-Y(I))/(X(I+1)-X(I))-(Y(I)-Y(I-1))

* /(X(I)-X(I-1)))/(X(I+1)-X(I-1))-SIG*U(I-1))/P

11 CONTINUE

IF (YPN.GT..99E30) THEN

QN=0.

UN=0.

ELSE

QN=0.5

UN=(3./(X(N)-X(N-1)))*(YPN-(Y(N)-Y(N-1))/(X(N)-X(N-1)))

ENDIF

Y2(N)=(UN-QN*U(N-1))/(QN*Y2(N-1)+1.)

DO 12 K=N-1,1,-1

Y2(K)=Y2(K)*Y2(K+1)+U(K)

Page 27: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

25

12 CONTINUE

RETURN

END

SUBROUTINE SPLINT(XA,YA,Y2A,N,X,Y)

DIMENSION XA(N),YA(N),Y2A(N)

KLO=1

KHI=N

1 IF (KHI-KLO.GT.1) THEN

K=(KHI+KLO)/2

IF(XA(K).GT.X)THEN

KHI=K

ELSE

KLO=K

ENDIF

GOTO 1

ENDIF

H=XA(KHI)-XA(KLO)

IF (H.EQ.0.) PAUSE 'Bad XA input.'

A=(XA(KHI)-X)/H

B=(X-XA(KLO))/H

Y=A*YA(KLO)+B*YA(KHI)+

* ((A**3-A)*Y2A(KLO)+(B**3-B)*Y2A(KHI))*(H**2)/6.

RETURN

END

Programi SPLINE.BAS

10 REM Programi pasi llogarit derivate e y të rendit te dyte te funksionit

15 REM te tabeluar ne pikat xj (j=1,2..N), llogarit vleren e funksionit

20 REM ne nje pike çfardo x . Te dhenat jane N vlerat e funksionit yi(xi) ku

30 REM x1<x2<x3..<xN dhe vlerat e derivatit te pare y' ne pikat x1 dhe xN.

40 PRINT "Sa eshte numri i pikave N?"

50 INPUT N

60 NMAX = 100

70 DIM X(N), Y(N), Y2(N), U(NMAX)

80 FOR I = 1 TO N

90 PRINT "Sa eshte x dhe y ne piken"; I

100 INPUT X(I), Y(I)

105 NEXT I

107 PRINT "Sa eshte vlera e derivatit te pare ne pikat 1 dhe N?"

108 INPUT YP1, YPN

110 IF YP1 > 9.9E+29 THEN GOTO 120 ELSE 150

120 Y2(1) = 0!

130 U(1) = 0!

140 GOTO 170

150 Y2(1) = -.5

160 U(1) = (3! / (X(2) - X(1))) * ((Y(2) - Y(1)) / (X(2) - X(1)) - YP1)

170 REM

180 FOR I = 2 TO N - 1

Page 28: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

26

190 SIG = (X(I) - X(I - 1)) / (X(I + 1) - X(I - 1))

200 P = SIG * Y2(I - 1) + 2!

210 Y2(I) = (SIG - 1!) / P

220 U(I) = (6! * ((Y(I + 1) - Y(I)) / (X(I + 1) - X(I)) - (Y(I) - Y(I - 1)) / (X(I) - X(I - 1))) / (X(I

+ 1) - X(I - 1)) - SIG * U(I - 1)) / P

230 NEXT I

240 IF YPN > 9.9E+29 THEN GOTO 250 ELSE GOTO 280

250 QN = 0!

260 UN = 0!

270 GOTO 300

280 QN = .5

290 UN = (3! / (X(N) - X(N - 1))) * (YPN - (Y(N) - Y(N - 1)) / (X(N) - X(N - 1)))

300 REM

310 Y2(N) = (UN - QN * U(N - 1)) / (QN * Y2(N - 1) + 1!)

320 FOR K = N - 1 TO 1 STEP -1

330 Y2(K) = Y2(K) * Y2(K + 1) + U(K)

340 NEXT K

350 PRINT "SA ESHTE VLERA E X KU DO INTERPOLOHET FUNKSIONI?"

360 INPUT X

370 KLO = 1

380 KHI = N

390 IF (KHI - KLO) > 1 THEN GOTO 400 ELSE 430

400 K = (KHI + KLO) / 2

410 IF X(K) > X THEN KHI = K ELSE KLO = K

420 GOTO 390

430 REM

440 H = X(KHI) - X(KLO)

450 IF H = 0! THEN PRINT "TE DHENAT E FUTURA JANE KEQ"

460 A = (X(KHI) - X) / H

470 B = (X - X(KLO)) / H

480 Y = A * Y(KLO) + B * Y(KHI) + ((A ^ 3 - A) * Y2(KLO) + (B ^ 3 - B) * Y2(KHI)) * (H

^ 2) / 6!

490 PRINT "VLERA E FUNKSIONIT NE PIKEN X ESHTE="; Y

500 END

Ushtrime

1. Përdorni interpolimin polinomial të rendit të parë, të dytë , të tretë dhe të katërt për të gjetur

përafërsisht vlerat e funksioneve të panjohur që jepen më poshtë:

2. Përdorni algoritmin e Nevill-it për të gjetur përafrimet e funksioneve të ushtrimit 1.

3. Gjeni përafërsisht 3 duke përdorur metodën e Nevill-it me funksionin f(x)= 3x dhe

vlerat : x0 = -2, x1 = -1, x2 = 0, x3 = 1, x4 = 2 .

4. Gjeni përafersisht 3 duke përdorur metodën e Nevill-it me funksionin f(x)= x dhe

vlerat: x0 = -0, x1 = 1, x2 = 2, x3 = 4, x4 = 5. Krahasoni saktësinë me atë të ushtrimit të

mëparshëm.

5. Të dhënat e ushtrimit 1, pikat a),b),c) dhe d) , janë gjeneruar duke përdorur funksionet e

mëposhtëme . Përdorni formulën e gabimit për të gjetur gabimet dhe krahasoni këto

Page 29: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

27

gabime me kufirin e gabimit.

a) f(x)= x ln(x)

b) f(x)=x3

+ 4.001x2 + 4.002x +1 1.101

c) f(x)= x cos(x) - 2x2 + 3x -1

d) f(x)= sin(ex -2) , përdorni vetëm n=1 dhe n=2 .

6. Përdorni interpolimin polinomial të Lagranzhit të rendit të tretë ose më pak dhe

arithmetikën e “chopping” për të përafruar funksionin cos(0.750) , duke përdorur vlerat:

cos(0.698)=0.7661, cos(0.768)=0.7193, cos(0.733)=0.7432 , cos(0,803)=0.6946.

7. Përdorni vlerat e mëposhtëme dhe arithmetikën e rrumbullakimit për të gjetur

përafrimin polinomial të rendit të tretë (metoda e Lagranzhit) të funksionit : f(1.09).

Funksioni përafrohet si f(x)=log(tg(x)) .

f(1.00)=0.1924 , f(1,05)=0.2414 , f(1.10)=0.2933 , f(1.15)=0.3492.

8. Përdorni metodën e Nevill-it për të dhënat e ushtrimit të mëparshëm.

Përgjigjet:

Page 30: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

28

9. Në tabelën e mëposhtëme janë dhënë vlerat e tabeluara të shpejtësisë dhe rrugës

që përshkon një automobil në fuksion të kohës:

Koha 0 3 5 8 13

Distanca 0 225 383 623 993

Shpejtësia 75 77 80 74 72

Duke përdorur kubik-spline të parashikohet pozicioni dhe shpejtësia e automobilit në

kohën t= 10 s.

(P. S (10)=774.85 dhe S’(10)=74.16 )

10. Duke perdorur kubik-spline për tre funksionet e tabeluar si më poshtë , të ndërtohen

grafikët e këtyre funksioneve pasi të gjenden vlerat e tyre edhe në pika ndërmjet atyre

që janë dhëne:

Page 31: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

29

Kurba 1 Kurba 2 Kurba 3

xi f (xi) f ’ (xi) xi f (xi ) f

‘ (xi) xi f (xi ) f

‘ (xi)

1 3.0 1.0 17 4.5 3.0 27.7 4.1 0.33

2 3.7 20 7.0 28 4.3

5 3.9 23 6.1 29 4.1

6 4.2 24 5.6 30 3.0 -1.5

7 5.7 25 5.8

8 6.6 27 5.2

10 7.1 27.7 4.1 -4.0

13 6.7

17 4.5 -0.67

Page 32: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

30

KAPITULLI 2

SISTEMET E EKUACIONEVE ALGJEBRIKE DHE MATRICAT

2.1 Zgjidhja numerike e sistemeve të ekuacioneve lineare

Sistemet e ekuacioneve lineare ndeshen shpesh në zbatimet e shkencave natyrore, teknike

dhe ekonomike. Prandaj, problemi i zgjidhjes numerike të tyre është një nga detyrat kryesore

të algjebrës lineare. Teorikisht ekzistojnë metoda standarte të zgjidhjes së sistemeve të

ekuacioneve lineare, por në praktikën llogaritëse në kompjuter lindin vështirësi që kanë të

bëjnë me ndërprerjen e llogaritjeve në rastin e sistemeve me matricë të pakthyeshme

( det(A)=0), me humbjen e saktësisë për arsye të arithmetikës me numra të përafërt, me

zgjatjen e kohës së llogaritjeve etj. Psh, për zgjidhjen e sistemit të ekuacioneve lineare të

rendit n me rregullin e njohur të Cramer-it duhen kryer N(n)= (n!)n veprime arithmetike , që

për n=10 del N ~ 1072

. Një sasi kaq e madhe veprimesh edhe në superkompjutera ku

shpejtësia e kryerjes së veprimeve është fantastike 1050

veprime/sek do të duheshin 1022

sekonda ( më shumë se 1014

vjet) për zgjidhjen e sistemit. Prandaj në praktikë nuk përdoret

metoda e Cramer-it për sisteme me shumë ekuacione. Në zbatimet e ndryshme në praktikë

lind nevoja e zgjidhjes së ssistemeve me 103 10

6 ekuacione , prandaj kuptohet nevoja e

përzgjedhjes së metodave të shpejta e të qëndrueshme ndaj gabimit të rrumbullakimit të

numrave.

Ka dy grupe metodash të zgjidhjes së sistemit të ekuacioneve , metodat e sakta dhe ato

iterative. Metodat e sakta janë procedura me anë të të cilave është e mundur zgjidja e saktë në

parim e sistemit të ekuacioneve A x =b ( det (A) 0) duke kryer një numër të fundëm

veprimesh arithmetike si mbledhje, zbritje, shumëzim, pjestim dhe disa veprime llogjike. Në

fakt merret një zgjidhje e përafërt për shkak të gabimeve të rumbullakimit të numrave. Për

këto metoda mund të llogaritet sasia e veprimeve që duhen kryer, pra të vlerësohet edhe

shpejtësia e kryerjes së tyre si edhe saktësia e zgjidhjes. Këto metoda parapëlqehen për

zgjidhjen e sistemit të ekuacioneve me n< 100 ekuacione, të cilat kanë matrica të plota dmth

me pak elementë zero.

Vendin kryesor në këto metoda e zë metoda e Gaussit dhe variante të saj.

2.2 Metoda e Gausit

Le të jetë sistemi i ekuacioneve lineare:

a11 x1 + a12 x2 + ...a1n xn =b1

a21 x1 + a22 x2 + ...a2n xn =b2

.............................................................. (2.1)

an1 x1 + an2 x2 + ...ann xn =bn

ose shkurt

A.x =b ,

ku A është matrica katrore me elementë aij ( i,j =1,2,... n) , x është vektori me elementë xj

(j=1,2...n) dhe b është vektori me elementë bj (j=1,2...n)

Metoda e Gausit konsiston në eliminimin e njëpasnjëshëm të të panjohurave duke

manipuluar me ekuacionet. Ekuacioni i parë i sistemit përdoret për të eliminuar të panjohurën

e parë që nga ekuacioni i dytë deri tek e kuacioni i n-të. Pastaj ekuacioni i dytë i ri shërben për

të eliminuar të panjohurën e dytë që nga ekuacioni i tretë deri tek ekuacioni i n-të. , e kështu

me radhë. Duke kryer n-1 eliminime të tilla , atëhere sistemi i ekuacioneve lineare që rezulton

Page 33: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

31

është i njëvlefshëm me sistemin e dhënë dhe është një sistem me matricë trekëndëshe që

zgjidhet me lehtësi.

Pra në hapin e parë kemi:

A(1)

. x =b(1)

Supozojmë se a11 0, dhe eliminojmë x1 nga n-1 ekuacionet e tjera duke shumëzuar

ekuacionin e parë me mi1 =a(1)

i1 / a(1)

11 dhe duke zbritur rezultatin nga ekuacioni i i-të. Si

rezultat meret sistemi i ekuacioneve : A(2)

. x =b(2)

a a aa a

a a

xx

x

bb

b

n

n

n nnn n

11

1

12

1

1

1

22

2

2

2

2

2 2

1

2

1

1

2

2

2

( ) ( ) ( )

( ) ( )

( ) ( )

( )

( )

( )

.

...

..... 0 ..... ..........................0 .....

(2.2)

pra,

aa i j n

i n j

a m a i n j n

bb ib m b i n

ij

ij

ij i ij

ii

i i

( )

( )

( ) ( )

( )( )

( ) ( )

, ..., ..

, .. , ...

, ..

2

1

1

1

1

21

1

1 1

1

1 1 20 2 3 1

2 3 2 3

12 3

për dhe për dhe

për dhe

për - për =

Le ta zemë se kemi kryer k hapa të tilla (1 k n) , atëhere sistemi i ekuacioneve është

bërë:

A(k)

. x =b(k)\

a a aa a

a a

a a

xx

x

x

bb

b

b

n

n

kk

k

kn

k

nk

k

nn

k

k

n

k

k

n

k

11

1

12

1

1

1

22

2

2

21

2

1

1

2

2

0

( ) ( ) ( )

( ) ( )

( ) ( )

( ) ( )

( )

( )

( )

( )

.............................

...

...

....

..

..... 0 .....

0 .............................0 0 ... ...

(2.3),

ku janë eliminuar të panjohurat x1 , x2 ,...xk-1

Në hapin pasardhës k+1 do të kemi:

A(k+1)

. x =b(k+1)

ku elementet e matricës dhe ana e djathtë e sistemit janë :

,

aa i k

i k j k

a m a i k k n j k k n

bb i kb m b i n

ij

kij

k

ij

k

ik kj

k

i

k i

k

i

k

ik k

k

( )

( )

( ) ( )

( )( )

( ) ( )

, .. , ,...

..

1

1

0 1

1 2 1 2

për për dhe

për dhe

për - për = k +1,k + 2

(2.4)

ku mik = a(k)

ik / a(k)

kk për i=k+1,k+2,...n dhe a(k)

kk 0

Duke vazhduar në këtë mënyrë , pas n-1 hapash marrim sistemin e ekuacioneve:

A(n)

. x =b(n)\

ku

Page 34: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

32

a a aa a

a

xx

x

bb

b

n

n

nn

n

n n

n

11

1

12

1

1

1

22

2

2

2

1

2

1

1

2

2

0

( ) ( ) ( )

( )

( )

( )

( )

( )

.

...

..... 0 ..... ..........................0 .....0,

(2.5)

Shënojmë U=A(n)

dhe f = b(n)

. Sistemi i ekuacioneve U.x=f e ka matricën trekëndëshe (pra

me elementë të ndryshëm nga zero vetëm sipër diagonales) dhe zgjidhet lehtë. Kështu nga

ekuacioni i fundit nxjerrim : xn = fn / Unn nga i parafundit nxjerrim pastaj xn-1 e kështu me

radhë duke u ngjitur më lart , pra në përgjithësi ::

x

f U x

Uk n nk

k kj j

j k

n

kk

11 2 1 për , ,... (2.6)

Në realizimin e këtij algoritmi që njihet si metoda e Gausit, nuk është nevoja të kryhen

veprime me sistemin e ekuacioneve (2.1). por mjafton që për k=1,2,..n-1 të shndrohen

koeficientët aij dhe elementët e anës së djathtë të sistmit të ekuacioneve sipas formulave (2.4)

dhe pastaj të merret zgjidhja sipas formulave (2.6).

Psh, sistemi i ekuacioneve është:

x1 + 2.x2 +x3 = 0

2.x1 +2.x2 +3.x3 = 3

- x1- - 3.x2 = 2

Veprojmë me matricën e elementeve :

1 032

2 12 2 3-1 - 3 0

, e cila pas hapit të parë (m21 =2, m31 = -1) bëhet :

1 032

2 10 - 2 10 -1 1

dhe pas hapit të dytë (m32 =1/2 ) bëhet

1 031 2

2 10 - 2 10 0 1 / 2 /

e cila është diagonalizuar dhe zgjidhja është :

x3 =1 , x2 = -1 , x1 =1

Për të siguruar ecurinë e procesit eliminues të Gausit duhet që në çdo hap të tij elementet e

diagonales kryesore a(k)

kk të jenë të ndryshëm nga zero.. Këta do ti quajmë elementë kryesorë.

Në se në ndonjë hap të algoritmit nuk plotësohet kushti a(k)

kk 0, atëhere para fillimit të hapit

pasardhës ndërrohen vendet e reshtave të matricës së radhës në mënyrë që të plotësohet kushti

i mësipërm. ky quhet proces pivotimi. Mund të ekzistojnë dy raste :

a) gjendet një element kryesor i 0 dhe vazhdohet procesi i eliminimit,

b) të gjithë elementët a(k)

ik =0 (i=k,k+1,...n) , në këtë rast nxirret përfundimi që matrica e

sistemit nuk është e ktyeshme , pra sistemi ose nuk ka zgjidhje ose ka pafundësi zgjidhjesh.

Në aspektin llogaritës mund të ndodhë që a(k)

kk 0 , por është shumë afër zeros dhe

përdorimi i këtij elementi si element kryesor sjell gabime të mëdha. Prandaj në hapin e k -të si

element kryesor mund të zgjidhet Ck = maxk i n { |a(k)

ik |} . Nëse ky maksimum del në reshtin

i0 k , ndërohet reshti i k -të me reshtin e i0 - -të dhe mndej kryhet hapi pasardhës. Kjo

mënyrë quhet “pivotim i pjesëshëm “, për ta dalluar nga rasti i “pivotimit të plotë “ kur

Page 35: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

33

kërkohet maksimumi i gjithë elementëve Ck = max { |a(k)

kk |} (k i , j n ); në këtë rast krahas

ndërimit të vendit të reshtave në hapa të ndryshme të algoritmit lind nevoja e ndërimit edhe

të vendeve të shtyllave , pra ndryshim i radhës së eliminimit të të panjohurave. kjo e rrit kohën

në ordinatorsi dhe sasinë e informacionit në ruajtje . Zakonisht matrica A “normalizohet” ,

dmth rreshtat dhe shtyllat e saj shimëzohen me konstante të përshtatëshme me qëllim që

elementet e saj të jenë pothujse të të njëjtit rend madhësie, në mënyrë që të eliminohen

gabimet e tjera veç gabimit të rumbullakimit.

Më poshtë jepet programi në BASIC për metodën e eliminimit të Gausit.

10 REM Programi zgjidh sistemin e n ekuacioneve lineare me n te panjohura me

20 REM metoden Gauss

25 PRINT "fut vleren e n"

30 INPUT n

40 DIM a(n, n), b(n), e1(n, n + 1)

50 FOR i = 1 TO n

60 FOR j = 1 TO n

65 PRINT "fut vleren e radhes se a("; i; j; ")"

70 INPUT a(i, j)

80 NEXT j

85 PRINT "fut vleren e radhes se b("; i; ") "

90 INPUT b(i)

100 NEXT i

1000 REM kthimi i matrices a ne trekendore te siperme,rezultati ne E

1060 FOR i = 1 TO n

1070 FOR j = 1 TO n

1080 e1(i, j) = a(i, j)

1130 NEXT j

1140 e1(i, n + 1) = b(i)

1150 NEXT i

1170 FOR i = 1 TO n

1190 IF e1(i, i) = 0 GOTO 1320

1270 FOR j = i + 1 TO n

1280 xm = e1(j, i) / e1(i, i)

1290 FOR k = i TO n + 1

1300 e1(j, k) = e1(j, k) - xm * e1(i, k)

1310 NEXT k

1305 NEXT j

1320 NEXT i

1330 e1(n, n + 1) = e1(n, n + 1) / e1(n, n)

1340 FOR k = n - 1 TO 1 STEP -1

1350 shum = 0

1360 FOR j = k + 1 TO n

1370 shum = shum + e1(k, j) * e1(j, n + 1)

1380 NEXT j

1390 e1(k, n + 1) = (e1(k, n + 1) - shum) / e1(k, k)

1400 NEXT k

1500 REM rezultati eshte ne kolonen e fundit te e1

2140 PRINT

Page 36: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

34

2150 PRINT "Rezultatet e metodes Gaus"

3330 FOR i = 1 TO n

3340 PRINT "x("; i; ")="; e1(i, n + 1)

3350 NEXT i

3360 REM STOP

3370 END

2.3 Metoda Gauss-Jordan

Një nga variantet e metodës së eliminimit të Gausit, është metoda Gauss-Jordan. Në thelb ajo

është e njëjtë me metodën e Gausit por dallon nga ajo në faktin që variabli xk në hapin e k -të

eliminohet jo vetëm në n-k ekuacionet e fundit të sistemit por edhe në k-1 ekuacionet e para të

tij. Pra, në hapin e k-të (k=1,2...n) zgjedhim elementin kryesor sikurse në metodën e Gausit,

pastaj njehësojmë madhësitë :

a(k+1)

kj = a(k)

kj / a(k)

kk për j=k,k+1,...n dhe b(k+1)

i =b(k)

k / a(k)

kk ,

dhe eliminohet e panjohura xk në të gjithë ekuacionet sipër dhe poshtë ekuacionit të k-të me

anë të formulave rekurente:

a(k+1)

ij = a(k)

ij - a(k)

ik ·a(k+1)

kj për i=1,2,...n (i k)

b(k+1)

i = b(k)

i - a(k)

ik ·b(k+1)

k për j=k,k+1,.. n

Duket qartë se procedura e Jordan-it realizon shndrimin e matricës së kombinuar [ A | b ] në

matricën [ I | b(n)

] , ku I është matrica katrore njësi ( që i ka një të gjithë elementët e

diagonales dhe zero të gjithë elementët e tjerë). Kështu që në përfundim të n-1 hapave të kësaj

procedure , në vektorin e kufizave të lira (b(n)

) të sistemit përftohet zgjidhja e sistemit. Me këtë

modifikim që realizon metoda e Jordan-it shmanget procesi i kundërt i metodës së Gausit për

gjetjen e zgjidhjes së sistemit. Nga kjo duket sikur metoda Jordan është më e shpejtë , por në

fakt nuk është kështu sepse kjo metodë përmban 50% më shumë shumëzime dhe pjestime.

Prandaj rekomandohet më shumë metoda e Gausit, ndërsa metoda Gauss-Jordan

rekomandohet mër gjetjen e matricës së anasjelltë meqënëse nëkëtë rast kërkohet një numër

më i vogël madhësish që duhet të ruhen gjatë procedurës ( në metodën Gauss-Jordan duhen

n(n+1) , ndërsa në metodën e Gausit duhen 2.n2 ).

Më poshtë, po japin programin në Basic dhe subrutinën përkatëse në Fortran për metodën

Gauss-Jordan.

10 REM Programi zgjidh sistemin e n ekuacioneve lineare me n te panjohura me

20 REM metoden Gauss-Jordan

25 PRINT "fut vleren e n"

30 INPUT n

40 DIM a(n, n), b(n, 1), d%(n)

41 icol1=n+1

42 jroë = n

43 jcol = 1

45 iroë = n

47 icol = n

48 rem DIM e1(iroë, icol1)

50 FOR i = 1 TO n

Page 37: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

35

60 FOR j = 1 TO n

65 PRINT "fut vleren e radhes se a(";i;j;")"

70 INPUT a(i, j)

80 NEXT j

85 PRINT "fut vleren e radhes se b(";i;") "

90 INPUT b(i, 1)

95 d%(i) = 1

100 NEXT i

105 inv1 = 2

110 gosub 1000

115 rem

120 gosub 1500

130 REM rezultati eshte ne kolonen e fundit te e1

140 PRINT

150 PRINT "Rezultatet e metodes Gaus-jordan"

160 REM Se pari kontrollohet nese ka zgjidhje

170 st% = 0

180 FOR i = 1 TO iroë

190 IF d%(i) <> 0 THEN GOTO 270

200 st% = 1

210 FOR j = iroë + 1 TO icol

220 IF e1(i, j) = 0 THEN GOTO 250

230 st% = 2

240 GOTO 310

250 NEXT j

260 REM exit normal dmth ekuacione me shume zgjidhje

270 NEXT i

280 IF st% = 0 THEN GOTO 330

290 PRINT "ky sistem ekuacionesh ka infinitet zgjidhje"

300 GOTO 360

310 PRINT "ky sistem ekuacionesh eshte jo konsistent,nuk ka zgjidhje"

320 GOTO 360

330 FOR i = 1 TO n

340 PRINT "x("; i; ")="; e1(i, n + 1)

350 NEXT i

360 rem STOP

370 goto 1750

1000 REM kthimi i matrices a ne trekendore te siperme,rezultati ne E

1010 REM iroë = n

1020 REM icol = n

1030 IF inv1 = 1 THEN icol = 2 * icol

1040 IF inv1 <> 1 THEN icol = icol + 1

1050 DIM e1(iroë, icol)

1060 FOR i = 1 TO iroë

1070 FOR j = 1 TO iroë

1080 e1(i, j) = a(i, j)

1085 rem PRINT e1(i, j)

1090 IF inv1 <> 1 GOTO 1130

Page 38: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

36

1100 REM keto rreshta perdoren nese matrica ka qene e invertuar

1110 IF i = j THEN e1(i, j + iroë) = 1

1120 GOTO 1130

1130 NEXT j

1140 IF inv1 <> 1 THEN e1(i, iroë + 1) = b(i, 1)

1145 rem PRINT e1(i, iroë + 1)

1150 NEXT i

1160 det1 = 1

1170 FOR i = 1 TO iroë

1180 IF i <> iroë THEN GOTO 1220

1190 IF e1(i, i) <> 0 GOTO 1320

1200 dt = 0

1210 GOTO 1240

1220 IF e1(i, i) <> 0 GOTO 1270

1230 GOto 1330

1240 IF dt = 0 THEN det1 = 0

1250 IF dt = 0 THEN d%(i) = 0

1260 IF dt = 0 THEN 1320

1270 FOR j = i + 1 TO iroë

1280 xm = e1(j, i) / e1(i, i)

1290 FOR k =i TO icol

1300 e1(j, k) = e1(j, k) - xm * e1(i, k)

1310 NEXT k

1315 NEXT j

1320 NEXT i

1325 goto 1460

1330 REM detektimi i determinantit 0

1340 REM pra, per te siguruar qe elementet e diagonales te mos jene 0

1350 REM gjate triangulizimit te siperm

1360 dt = 1

1370 FOR j = i + 1 TO iroë

1380 IF e1(j, i) = 0 GOTO 1430

1390 FOR k = 1 TO icol

1400 e1(i, k) = e1(i, k) + e1(j, k)

1410 NEXT k

1420 rem RETURN

1430 NEXT j

1450 dt = 0

1460 rem end

1470 return

1500 REM subrutina e triangulizimit te poshtem,input eshte matrica e1(iroë,icol)

1510 FOR ij = 1 TO iroë

1520 IF ij = iroë THEN GOTO 1600

1530 ik = iroë - ij + 1

1540 FOR i = 1 TO ik - 1

1550 IF inv1 = 1 THEN GOTO 1570

1560 IF d%(ik) = 0 THEN GOTO 1600

1570 xm = e1(i, ik) / e1(ik, ik)

Page 39: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

37

1580 FOR j = i + 1 TO icol

1590 e1(i, j) = e1(i, j) - xm * e1(ik, j)

1595 NEXT j

1597 NEXT i

1600 NEXT ij

1610 IF det1 = 0 THEN GOTO 1700

1620 REM krijon identitetin duke shumezuar cdo resht me te kundertin e

1630 REM e elementit ne diagonale te matrices se perpunuar

1640 FOR i = 1 TO iroë

1650 div = e1(i, i)

1660 FOR j = 1 TO icol

1670 e1(i, j) = e1(i, j) / div

1680 NEXT j

1690 NEXT i

1700 return

1750 end

SUBROUTINE GAUSSJ(A,N,NP,B,M,MP)

PARAMETER (NMAX=50)

DIMENSION A(NP,NP),B(NP,MP),IPIV(NMAX),INDXR(NMAX),INDXC(NMAX)

DO 11 J=1,N

IPIV(J)=0

11 CONTINUE

DO 22 I=1,N

BIG=0.

DO 13 J=1,N

IF(IPIV(J).NE.1)THEN

DO 12 K=1,N

IF (IPIV(K).EQ.0) THEN

IF (ABS(A(J,K)).GE.BIG)THEN

BIG=ABS(A(J,K))

IROË=J

ICOL=K

ENDIF

ELSE IF (IPIV(K).GT.1) THEN

PAUSE 'Singular matrix'

ENDIF

12 CONTINUE

ENDIF

13 CONTINUE

IPIV(ICOL)=IPIV(ICOL)+1

IF (IROË.NE.ICOL) THEN

DO 14 L=1,N

DUM=A(IROË,L)

A(IROË,L)=A(ICOL,L)

A(ICOL,L)=DUM

14 CONTINUE

DO 15 L=1,M

Page 40: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

38

DUM=B(IROË,L)

B(IROË,L)=B(ICOL,L)

B(ICOL,L)=DUM

15 CONTINUE

ENDIF

INDXR(I)=IROË

INDXC(I)=ICOL

IF (A(ICOL,ICOL).EQ.0.) PAUSE 'Singular matrix.'

PIVINV=1./A(ICOL,ICOL)

A(ICOL,ICOL)=1.

DO 16 L=1,N

A(ICOL,L)=A(ICOL,L)*PIVINV

16 CONTINUE

DO 17 L=1,M

B(ICOL,L)=B(ICOL,L)*PIVINV

17 CONTINUE

DO 21 LL=1,N

IF(LL.NE.ICOL)THEN

DUM=A(LL,ICOL)

A(LL,ICOL)=0.

DO 18 L=1,N

A(LL,L)=A(LL,L)-A(ICOL,L)*DUM

18 CONTINUE

DO 19 L=1,M

B(LL,L)=B(LL,L)-B(ICOL,L)*DUM

19 CONTINUE

ENDIF

21 CONTINUE

22 CONTINUE

DO 24 L=N,1,-1

IF(INDXR(L).NE.INDXC(L))THEN

DO 23 K=1,N

DUM=A(K,INDXR(L))

A(K,INDXR(L))=A(K,INDXC(L))

A(K,INDXC(L))=DUM

23 CONTINUE

ENDIF

24 CONTINUE

RETURN

END

Ushtrime:

1. Të zgjidhen me metodën e Gausit, dhe me metodën e Gaus-Jordan sistemet e

mëposhtëme të ekuacioneve:

a) 3x1 + 2x2 + 2x3 = 8 b) 4x1 + 4x2 + x3 = 10 c) 3x1 +8x2 -4x3 +x4 = 35

x2+ x3 = 4 x1 + 2x2 = 8 2x2 + x3 -3x4 = 27

x1 + 3x3 =5 x1 + x2 + x3 = 9 11x1 +5x4 = 20

Page 41: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

39

x3 + x4 = 9

Përfundimet:

a) x1=0, x2=7/3, x3=5/3 b) x1=-7.33, x2=7.667 , x3=8.67 c) x1=1.9676, x2=8.3426, x3=9.3287,

x4=-0.3287

2.4 Metoda e LU-dekompozimit

Metoda e eliminimit e Gausit dhe e Gaus-Jordani-it kanë dizavantazhin sepse ana e djathtë e

ekuacioneve të sistemit duhet transformuar para se të gjejmë të panjohurat. Metoda që do

shqyrtojmë tani nuk ka këtë dizavantazh.

Në bazë të një teoreme të algjebrës nxiret një rjedhim që ne nuk do ta provojmë këtu, por

do ta shfrytëzojmë atë. Sipas këtij rjedhimi çdo matricë e kthyeshme A (pra që e ka

determinantin të ndryshëm nga zero) mund të zbërthehet si produkt i dy matricave :

A = L·U (4.1)

ku, L është një matricë trekëndore e poshtëme (në anglisht loëer, prandaj shënohet me L), pra

që i ka zero gjithë elementët mbi diagonale; ndërsa matrica U është një matricë trekëndore e

sipërme (në anglisht : upper, prandaj shënohet me U) , pra që i ka zero të gjithë elementët

poshtë diagonales . Barazimi (4.1) do shkruhej :

11

22

12 11 12 13 1

21 22 23 2

31

21

31 32 33

n1 n2 n3

11 13

22 23

33

nn

0 0 .... 0 0 ... 0

0.........

..... 00 ..... 00 0 ...... 0..........0 0 0 .......

..... .....

...

... nn

n

n

a a a aa a a aa a a a

a a a a

n

n n n nn

32 33 3

1 2 3

.....

.....

.......... (4.2)

Ky sistem ekuacionesh, mund të shkruhet :

A·x = ( L·U)·x = L·(U·x) = b (4.3)

i cili sillet në dy sisteme ekuacionesh. Në fillim zgjidhet sistemi:

L·y = b (4.4)

mandej zgjidhet sistemi:

U·x = y (4.5)

Kjo quhet metoda e LU dekompozimit, avantazhi i saj është se të dy sistemt që zgjidhen e

kanë matricën trekëndore , pra zgjidhja e tyre është triviale, për të parin:

yb

y b y i ni

ii

i ij jj

i

1

1

111

112 3, ...... ku , ... (4.6)

ndërsa për të dytin:

xy

x y x i n nn

n

nn

i

ii

i ij jj i

i n

, ...... ku 1

1 2 11

, ,... (6.7)

Këto zgjidhje kërkojnë n2 veprime që janë shumëzime dhe mbledhje.

Problemi është se si ta ndajmë matricën si produkt i dy matricave L U = A . Këtë

produkt e shkruajmë në elementë të tij:

i1 1j + i2 2j + ... in nj = aij (4.8)

ku numri i termave në këtë sistem varet nga fakti se cili nga indekset i dhe j është më i vogël.

Ka tre raste të mundëshme:

1) i<j atëhere i1 1j + i2 2j + ... ii ij = aij sepse ii+1 , ii+2 etj janë zero

2) i=j atëhere i1 1j + i2 2j + ... ii jj = ajj sepse ii+1 , ii+1 etj janë zero

Page 42: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

40

3) i>j atëhere i1 1j + i2 2j + ... ij jj = aij sepse ij+1 , ij+2 etj janë zero

Këtu kemi gjitsejt n2 ekuacione , por të panjohura janë n(n+1) (të panjohurat janë elementët

e matricave L dhe U . Me që numri i të panjohurave është më i madh se numri i

ekuacioneve, atëhere n - të panjohura i përcaktojmë arbitrarisht dhe përpiqemi të zgjidhim të

tjerët. Në fakt është gjithnjë e mundur të marrim :

4) ii =1 , për të gjitha i =1,2,....n

Me këtë zgjedhje LU dekompozimi i matricës A bëhet i vetëm.

Ka një algoritëm që njihet si algoritmi i Crout-it , që i zgjidh n(n+1)ekuacionet 1),2),3),4) të

mësipërm duke i renditur ekuacionet si më poshtë:

- bëhet 11 =1 dhe 11 = a11 ,

prej barazimit 4) duke bërë j=1 , gjejmë : i1 = ai1 / 11 = ai1 / a11

- Për çdo j=2,3,... n kryejmë këto dy procedura:

a)për çdo i=1,2,...j , duke përdorur barazimet 1), 2), 4) , gjejmë :

ij ij ik kj

k

i

a1

1

(4.9)

(kur i=1 , në këtë shumë nuk ka terma, pra shuma është zero dhe 1j = a1j

b) për çdo i=j+1,j+2, ....n , duke përdorur barazimin 3) , gjejmë :

ij

jj

ij ik kj

k

i

a1

1

1

( ) (4.10)

Pasi i kryejmë të dy procedurat për çdo j gjenden të gjithë elementët ij dhe ij .

Psh. j

i a

i a aa

aa2

1

2

12 12

22 21 12 22

21

11

12

22

j

i a

i a

etj

2

31

41

23

22

32 31 12

22

42 41 12

42

( )

( )

....

j = 3.... etj .

Pra në çdo hap hyjnë elementë që janë gjetur në hapat parardhës. Gjithashtu vihet re se çdo

element aij përdoret në llogaritje vetëm një herë. Prandaj vlerat e elementeve ij dhe ij mund

të ruhen në vendin që zinte aij (elementët diagonalë ii nuk ruhen fare sepse dihet që janë 1).

Pra algoritmi i Crout-it mbush një matricë ku elementet janë të matricës [ ] dhe [ ]:

11 12 13 1

21 22 23 2

31 32 33 3

1 2 3

..... .....

.....

.....

n

n

n

n n n nn

.......... (4.11)

Pivotimi, dmth zgjedhja e elementit që pjeston në barizimet (4.10), është esencial për metodën

e Crout-it për stabilitetin e algoritmit . Një pivotim i pjesëshëm (ndryshimi i rreshtave) mund

të jetë efikas.Pra ne nuk dekompozojmë matricën A në LU por dekompozojmë matricën e

fituar nga A me permutim rreshtash dhe nëse ne e kemi ruajtur (ndjekur) se çfarë permutimi

Page 43: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

41

është bërë atëherdekompozimi është po aq i dobishëm sa do ishte dekompozimi i matricës

origjinale).

Vërrejmë se barazimet (4.9) në rastin kur i = j janë të njëjtë me barazimet (4.10) veçse në

këta të fundit është bërë pjestimi. Në të dy rastet kufiri i sipërm i shumimit është k = j-1

(=i-1) . Kjo dmth që ne nuk kemi nevojë të zgjedhim për element të diagonales , elementin

jj që ndodhet në diagonale qysh në fillim apo elementin (e papjestuar) ij nën të në kolonën i

=j+1, j+2,...n. Kjo mund të vendoset pasi ti kemi të gjithë kandidatët e një kollone. Siç mund

të merret me mend , ne do zgjedhim elementin më të madh të tyre si diagonal të (elementi

pivotues) dhe pastaj bëjmë pjestimet me këtë element . Ky është një pivotim i pjesëshëm . Në

programin që jepet më poshtë është bërë edhe një diçka shtesë : fillimisht gjendet elementi

më i madh në çdo resht dhe më pas (kur kërkohet elementi maksimal pivotues) shkallëzohet

krahasimi sikur ne ti kishim shkallëzuar fillimisht gjithë ekuacionetqë ta kishin koeficientin

maksimal me 1 ; ky quhet pivotim implicit. Në program bëhet dekompozimi LU i matricës

input A me n n elementë. Madhësia INDX është vektori output që ruan permutimin e

rreshtave të shkaktuar nga pivotimi i pjesëshëm., D është + ose -1 nëse numri i përkëmbimeve

të rreshtave është çift ose tek respektivisht. Rezultati është matrica A është mbushur si (4.11).

Në variantin FORTRAN të këtij programi, dekompozimi i matricës bëhet nga subrutina

LUDCMP ndërsa llogaritja e të panjohurave bëhet nga subrutina LUBKSB dhe rruga për

zgjidhjen e sistemit të ekuacioneve:

A·x = b ; është :

CALL LUDCMP(A,N,NP,INDX,D)

CALL LUBKSB(A,N,NP,INDX,B)

Rezultati për x do të dalë ne B, ndërsa matrica fillestare A do të jetë prishur.Nëse duam të

zgjidhim të sistem ekuacionesh me të njëjtën matricë A, por me anë të djthtë b të ndryshme ,

mjafton të përsëritet komanda:

CALL LUBKSB(A,N,NP,INDX,B)

natyrisht jo me matricën origjinale A si input, por me matricën A që ka dalë nga LUDCMP

LU dekompozimi në subrutinën LUDCMP kërkon rreth N3 /3 ekzekutime të ciklit të

bredëshëm , ku secili cikël ka një shumëzim dhe një mbledhje . Kështu që ka 3 herë më pak

veprime sesa metoda e Gauss-Jordan-it

Programi LUDCMP

10 REM Programi ben ndarjen e matrices A(n,n) ne LU-dekompozimin

20 REM dhe pastaj gjen te panjohurat e sistemit te ekuacioneve

30 NMAX = 100

40 TINY = 1E-20

50 PRINT "Sa eshte numri i ekuacioneve?"

60 INPUT np

65 n = np

70 DIM a(np, np), INDX(n), vv(NMAX)

74 FOR l = 1 TO n

75 FOR m = 1 TO n

76 PRINT "Sa eshte elementi"; l; m

77 INPUT a(l, m)

78 NEXT m

79 NEXT l

80 D = 1!

90 FOR i = 1 TO n

Page 44: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

42

100 AAMAX = 0!

110 FOR j = 1 TO n

120 IF ABS(a(i, j)) > AAMAX THEN AAMAX = ABS(a(i, j))

130 NEXT j

140 IF AAMAX = 0 THEN 150 ELSE 170

150 PRINT "Matrica eshte singulare"

160 GOTO 1000

170 vv(i) = 1! / AAMAX

180 NEXT i

190 FOR j = 1 TO n

200 IF j > 1 THEN 210 ELSE 310

210 FOR i = 1 TO j - 1

220 SUM = a(i, j)

230 IF i > 1 THEN 240 ELSE 290

240 FOR k = 1 TO i - 1

250 SUM = SUM - a(i, k) * a(k, j)

260 NEXT k

270 a(i, j) = SUM

290 REM

300 NEXT i

310 REM

320 AAMAX = 0!

330 FOR i = j TO n

340 SUM = a(i, j)

350 IF j > 1 THEN 360 ELSE 400

360 FOR k = 1 TO j - 1

370 SUM = SUM - a(i, k) * a(k, j)

380 NEXT k

390 a(i, j) = SUM

400 REM

410 DUM = vv(i) * ABS(SUM)

420 IF DUM > AAMAX OR DUM = AAMAX THEN 430 ELSE 450

430 IMAX = i

440 AAMAX = DUM

450 REM

460 NEXT i

470 IF j > IMAX OR j < IMAX THEN 480 ELSE 550

480 FOR k = 1 TO n

490 DUM = a(IMAX, k)

500 a(IMAX, k) = a(j, k)

510 a(j, k) = DUM

520 NEXT k

530 D = -D

540 vv(IMAX) = vv(j)

550 REM

560 INDX(j) = IMAX

570 IF j > n OR j < n THEN 580 ELSE 630

580 IF a(j, j) = 0 THEN a(j, j) = TINY

590 DUM = 1! / a(j, j)

Page 45: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

43

600 FOR i = j + 1 TO n

610 a(i, j) = a(i, j) * DUM

620 NEXT i

630 REM

640 NEXT j

650 IF a(n, n) = 0 THEN a(n, n) = TINY

700 REM Ketu fillon gjetja e te panjohurave

710 DIM b(n)

720 FOR ik = 1 TO n

730 PRINT " Sa eshte ana e djathte per ekuacionin e"; ik; "-te"

740 INPUT b(ik)

745 NEXT ik

750 II = 0

760 FOR i = 1 TO n

770 LL = INDX(i)

780 SUM = b(LL)

790 b(LL) = b(i)

800 IF II > 0 OR II < 0 THEN 810 ELSE 840

810 FOR j = II TO i - 1

820 SUM = SUM - a(i, j) * b(j)

830 NEXT j

835 GOTO 870

840 REM

850 IF SUM > 0 OR SUM < 0 THEN 860 ELSE 870

860 II = i

870 REM

880 b(i) = SUM

890 NEXT i

900 FOR i = n TO 1 STEP -1

910 SUM = b(i)

920 IF i < n THEN 930 ELSE 960

930 FOR j = i + 1 TO n

940 SUM = SUM - a(i, j) * b(j)

950 NEXT j

960 REM

970 b(i) = SUM / a(i, i)

980 NEXT i

990 FOR kk = 1 TO n

995 PRINT "x("; kk; ")="; b(kk)

997 NEXT kk

1000 END

SUBROUTINE LUDCMP(A,N,NP,INDX,D)

PARAMETER (NMAX=100,TINY=1.0E-20)

DIMENSION A(NP,NP),INDX(N),VV(NMAX)

D=1.

DO 12 I=1,N

AAMAX=0.

DO 11 J=1,N

Page 46: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

44

IF (ABS(A(I,J)).GT.AAMAX) AAMAX=ABS(A(I,J))

11 CONTINUE

IF (AAMAX.EQ.0.) PAUSE 'Singular matrix.'

VV(I)=1./AAMAX

12 CONTINUE

DO 19 J=1,N

IF (J.GT.1) THEN

DO 14 I=1,J-1

SUM=A(I,J)

IF (I.GT.1)THEN

DO 13 K=1,I-1

SUM=SUM-A(I,K)*A(K,J)

13 CONTINUE

A(I,J)=SUM

ENDIF

14 CONTINUE

ENDIF

AAMAX=0.

DO 16 I=J,N

SUM=A(I,J)

IF (J.GT.1)THEN

DO 15 K=1,J-1

SUM=SUM-A(I,K)*A(K,J)

15 CONTINUE

A(I,J)=SUM

ENDIF

DUM=VV(I)*ABS(SUM)

IF (DUM.GE.AAMAX) THEN

IMAX=I

AAMAX=DUM

ENDIF

16 CONTINUE

IF (J.NE.IMAX)THEN

DO 17 K=1,N

DUM=A(IMAX,K)

A(IMAX,K)=A(J,K)

A(J,K)=DUM

17 CONTINUE

D=-D

VV(IMAX)=VV(J)

ENDIF

INDX(J)=IMAX

IF(J.NE.N)THEN

IF(A(J,J).EQ.0.)A(J,J)=TINY

DUM=1./A(J,J)

DO 18 I=J+1,N

A(I,J)=A(I,J)*DUM

18 CONTINUE

ENDIF

Page 47: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

45

19 CONTINUE

IF(A(N,N).EQ.0.)A(N,N)=TINY

RETURN

END

SUBROUTINE LUBKSB(A,N,NP,INDX,B)

DIMENSION A(NP,NP),INDX(N),B(N)

II=0

DO 12 I=1,N

LL=INDX(I)

SUM=B(LL)

B(LL)=B(I)

IF (II.NE.0)THEN

DO 11 J=II,I-1

SUM=SUM-A(I,J)*B(J)

11 CONTINUE

ELSE IF (SUM.NE.0.) THEN

II=I

ENDIF

B(I)=SUM

12 CONTINUE

DO 14 I=N,1,-1

SUM=B(I)

IF(I.LT.N)THEN

DO 13 J=I+1,N

SUM=SUM-A(I,J)*B(J)

13 CONTINUE

ENDIF

B(I)=SUM/A(I,I)

14 CONTINUE

RETURN

END

Ushtrim: Zgjidhni ushtrimet e paragrafit të mëparshëm me metodën e LU-dekompozimit.

2.5 Inversioni i matricës dhe përcaktori i saj

Duke përdorur LU dekompozimin që u sqyrtua në paragrafin e mëparshëm, është shumë e

lehtë të gjendet matrica inverse e një matrice të dhënë, pra matrica A-1

e tillë që :

A·A-1

=I ku I është matrica diagonale njësi (pra që ka vetëm elemntët e diagonales 1 dhe të

tjerët 0). Duke ditur rregullin e produktit të dy matricave:

a aik kj ij

k

n( )1

1

(5.1)

(ku ij është simboli i Kroneker-it, ij =1 nëqoftëse i=j dhe ij =0 nëqoftëse i j ), atëhere

elementët e matricës së kundërt a(-1)

kj genden duke zgjidhur n herë sistemin e ekuacioneve

(5.1), ku çdo herë është fiksuar indeksi j ( j=1,2,3...n) dhe numurimi i ekuacioneve bëhet nga

indeksi i

(i=1,2,3...n). Në variantin BASIC të LU dekompozimit duhet hapur fillimisht cikli për që

numëron sistemet e ndryshme dhe mandej pas zgjidhjes çdo herë të sistemit duhen futur

Page 48: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

46

rezultatet e të panjohurave jo në vektorin b por në një një matricë që duhet dimensionur qysh

në fillim . Këto modifikime në program bëhen lehtë.

Ndërsa në variantin FORTRAN të LU dekompozimit, mjafton të kombinojmë subrutianat si

më poshtë:

DIMENSION A(NP,NP),Y(NP,NP),INDX(NP)

.......

DO 12 I=1,N

DO 11 J=1,N

Y(I,J)=0.

11 CONTINUE

Y(I,I)=1

12 CONTINUE

CALL LUDCMP(A,N,NP,INDX,D)

DO 13 J=1,N

CALL LUBKSB(A,N,NP,INDX,Y(I,J))

13 CONTINUE

Këtu duket se dekompozimi bëhet vetëm njëherë sepse matrica A është e njëjtë për të gjithë

sistemet ndërsa llogaritja e të panjohurave (subrutina LUBKSB) bëhet N herë dhe çdo herë

vektori Y(I,J) është kollona e J-të e matricës Y(I,J). Si përfundim matrica Y përmban

inversin e matricës origjinale A.

Në metodën e LU dekompozimit , përcaktori i matricës është thjeshtë produkti i elementeve

të diagonales :

det( )A jj

j

N

1

(5.2)

duhet të kemi parasysh që në këtë prodhim ne llogaritim jo përcaktorin e matricës origjinale ,

por përcaktorin e një matrice që është fituar nga ajo origjinale pas disa permutimesh të

rreshtave. Por në metodën e LU dekompozimit ne e dimë nëse kemi bërë një numër tek apo

çift permutimesh . Me që për çdo permutim të rreshtave shenja e përcaktorit ndryshon në të

kundërt , atëhere numri D që shumëzon përcaktorin do jetë +1 ose -1 në varësi të numrit të

permutimeve çift apo tek respektivisht. Në varianti FORTRAN , mjafton që të thirret vetëm

një herë subrutina LUDCMP për të llogaritur përcaktorin:

DIMENSION A(NP,NP),INDX(NP)

......

CALL LUDCMP(A,N,INDX,D)

DO 11 J=1,N

D=D*A(J,J)

11 CONTINUE

dhe tashmë D është përcaktori i matricës origjinale.

Ndërsa në variantin BASIC të LU dekompozimit mjafton të shtojmë reshtat përkatës pas

dekompozimit të matricës dhe para llogaritjes së të panjohurave të një sistemi ekuacionesh.

Ushtrime:

1. Të gjendet përcaktori i matricës:

3 7 59 0 10 4 3

Page 49: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

47

2. Të gjendet inversi i matricës:

a) 3 1 60 2 51 1 1

b)

6 0 9 13 2 0 21 1 0 17 4 3 8

2.6 Sisteme ekuacionesh tridiagonalë

Një rast i veçantë i sistemit të ekuacioneve lineare është sistemi i ashtuquajtur tridiagonal,

në të cilin matriac kryesore A ka të ndryshëm nga zero vetëm elementet e diagonales dhe

elementet e mbi (plus një kollonë) ose nën (minus një kollonë) diagonale dhe gjithë elementët

e tjerë i ka zero. Ky sistem ekuacionesh ndeshet shpesh në praktikë. Pra sistemi i ekuacioneve

ka formën:

ba b c

a b

a b ca b

uuu

uu

rrr

rr

N N N

N N

N

N

N

N

1

2 2

3 3

1 1 1

1

2

3

1

1

2

3

1

0

1

2

c 0 ... 0 0 0 ... 0 0 0

0 ... 0 0 0.........0 0 0....

0 0... 0

.. .. (6.1)

Vini re që a1 dhe cN nuk hyjnë në ekuacione, pra edhe në rutinat e llogaritjes që paraqiten në

BASIC(ato mind të futen zero) dhe FORTRAN:

10 REM Programi zgjidh nje sistem ekuacionesh tridiagonale

20 REM Te panjohrat jane ne vektorin U, ndersa input jane vektoret A,B,C

30 REM te cilat jane elementet e diagonales dhe mbi e nen diagonale

40 REM Ndersa R eshte vektori i anes se djathte.

50 PRINT "sa eshte numri i ekuacioneve?"

60 INPUT N

70 DIM GAM(N), A(N), B(N), C(N), R(N), U(N)

80 FOR I = 1 TO N

85 PRINT "SA JANE VLERAT E A("; I; "),B("; I; "),C("; I; "),R("; I; ")?"

90 INPUT A(I), B(I), C(I), R(I)

100 NEXT I

110 IF B(1) = 0 THEN 120 ELSE 140

120 PRINT "DUHET TA RISHKRUANI EKUACIONET E RENDIT N-1 , ME U(2) TE

ELIMINUAR"

130 GOTO 300

140 BET = B(1)

150 U(1) = R(1) / BET

160 FOR J = 2 TO N

170 GAM(J) = C(J - 1) / BET

180 BET = B(J) - A(J) * GAM(J)

190 IF BET = 0 THEN 200 ELSE 220

200 PRINT "ALGORITMI NUK ECEN"

210 GOTO 300

220 U(J) = (R(J) - A(J) * U(J - 1)) / BET

230 NEXT J

Page 50: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

48

240 FOR J = N - 1 TO 1 STEP -1

250 U(J) = U(J) - GAM(J + 1) * U(J + 1)

260 NEXT J

270 FOR I = 1 TO N

280 PRINT "U("; I; ")="; U(I)

290 NEXT I

300 END

SUBROUTINE TRIDAG(A,B,C,R,U,N)

PARAMETER (NMAX=100)

DIMENSION GAM(NMAX),A(N),B(N),C(N),R(N),U(N)

IF(B(1).EQ.0.)PAUSE

BET=B(1)

U(1)=R(1)/BET

DO 11 J=2,N

GAM(J)=C(J-1)/BET

BET=B(J)-A(J)*GAM(J)

IF(BET.EQ.0.)PAUSE

U(J)=(R(J)-A(J)*U(J-1))/BET

11 CONTINUE

DO 12 J=N-1,1,-1

U(J)=U(J)-GAM(J+1)*U(J+1)

12 CONTINUE

RETURN

END

Në algoritmin TRIDAG nuk ka pivotim . Prandaj ky algoritëm mund të dështojë edhe kur

matrica nuk është singulare: një element pivotimi zero mund të ndeshet edhe kur matrica nuk

është singulare. Por në praktikë zakonisht matrica ka elementë të tillë që plotësojnë kushtet

|bj| > |aj| + |cj|

që quhet maticë me diagonale dominuese , për të cilën algoritmi nuk mund të ndeshë ne

elementë pivot zero. Po këstu mund të ketë veti të tjera që e pengojnë ndeshjen e elementit

pivot zero. Nëse në ndonjë rast nuk ka veti të tilla dhe algoritmi nuk ecën duhet dedektuar se

ku ndeshet ky element pivot zero dhe duhet kryer procedura e eliminimeve të njëpasnjëshme.

2.7 Metodat Iterative

Metodat iterative përbëjnë një klasë të rëndësishme për zgjidhjen e sistemeve të

ekuacioneve lineare me përmasa të mëdha. Të tilla siteme lindin gjatë zgjidhjes së ekucianeve

diferenciale me derivate të pjesëshme. Zakonisht , sisteme të tilla ekiuacionesh që lindin

gëzojnë veti që e lehtësojnë zgjidhjen e tyre. Kështu psh, matricat e tyre janë të rralla dmth

vetëm një pjesë e vogël e elementeve të tyre janë të ndryshëm nga zero. Në shumicën e rasteve

ato janë simetrike dhe pozitivisht të përcaktuara. Shpesh herë elementet aij të matricës nxirren

me anë formulash të thjeshta pa patur nevojë që të ruhen gjithë vlerat e tyre. Këto veti

shfrytëzohen për zgjidhjen e sistemit të ekuacioneve.

Le të jetë sistemi i ekuacioneve: A·x = b me matricë A = ( aij )n n të kthyeshme (pra

që e ka përcaktorin të ndryshëm nga zero). Duke u nisur nga një një përafrim fillestar x(0)

, në

Page 51: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

49

përgjithësi e çfardoshme, ndërtohet vargu i vektorëve x(1)

, x(2)

, ... x(k)

me anë të formulave

rekurente:

x(k+1)

= x(k)

+C(k+1)

·( b · A · x(k)

) (7.1)

ku C(1)

, C(2)

, ... C(k)

është një varg matricash të njohura. Për zgjedhje të ndryshme të vargut

të natricave C(k)

ka metoda të ndryshme iterative, të tilla që zgjidhja e fituar pas çdo

iteracioni ti afrohet zgjidhjes së saktë, pra të konvergjojë tek zgjidhja e saktë. Psh një metodë

mund të jetë duke zgjedhur C(k)

= C= konstante. Atëhere :

x(k+1)

= T · x(k)

+ f (7.2)

ku T = I - C·A ( I është matrica diagonale njësi) dhe f = C · b , T - quhet matricë e kalimit

e metodës së zgjedhur. Krahas kushtit që A të jetë e ktyeshme do supozojmë që të gjithë

elementet e saj të diagonales të jenë të ndryshëm nga zero. E paraqesim matricën A në formën:

A = D - E - F

ku D =

aa

ann

11 0 ... 00 ... 0.....0 0 ...

22 , E =

0

0

21

1 2

0 ... 0 0 ... 0

..... ...

a

a an n

, F =

0 12 1

1

... 0 0 ... .....0 0 ... 0

a aa

n

n

Atëhere ekuacioni A · x = b shkruhet në trajtën : D · x = ( E + F ) ·x + b dhe meqë aii

( i =1,2,..n ) janë të ndryshëm nga zero, marim:

a x a x bii i

k

ij j

k

jj i

n

i

( ) ( )1

1

(7.3)

ku i=1,2,..n dhe k 0 , x(0)

i është zgjidhja fillestare, dhe

xa

ax

b

ai

k ij

ii

j

k

jj i

ni

ii

( ) ( )1

1

, ose në trajtë matricore:

x(k+1)

= D-1

· (E+F)·x(k)

+ D-1

· b (7.4)

Kjo metodë njihet si metoda iterative pikësore e Jakobit, me matricë kalimi

T = D-1

· ( E + F ).

Në këtë metodë , njehësimi i vektorit x(k+1)

kërkon të kemi të ruajtura vlerat e vektorit të

mëparshëm x(k)

. Për ta mënjanur këtë në llogaritjen e elementit x(k+1)

i përdoren jo elementët

x(k)

j (j=1,2..n) , por elementët e llogaritur më parë të metodës së Jakobit x(k+1)

j (j=1,2...i-1).

Kjo rezulton një metodë tjetër iterative:

a a x a x bi

k

ij j

k

j

i

ij j

k

j i

n

i

( ) ( ) ( )1 1

1

1

1

(7.5)

ku i=1,2...n dhe k 0 , ose në trajtë matricore :

(D - E)· x(k+1)

= F · x(k)

+ b

x(k+1)

= (D - E )-1

· F · x(k)

+ (D - E )-1

· b (7.6)

Kjo quhet metoda iterative e Gaus-Zejdel-it dhe matrica e saj e kalimit është :

T = (D - E )-1

· F

Konkretisht , algoritmi për sistemin e ekuacioneve :

a x a x a x ba x a x a x b

a x a x a x b

n n

n n

n n nn n n

11 1 12 2 1 1

21 1 22 2 2 2

1 1 2 2

......

.........

(7.7)

Page 52: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

50

përbëhet nga hapat e mëposhtëm. Supozojmë se i kemi ruajtur koeficientët para të

panjohurave xj në mënyrë të tillë që koeficienti ajj të jetë më i madh se koeficientët e tjerë të

reshtit përkatës dhe nxjerrim:

x1 = ( b1 - a12 x2 - a13 x3 - ... a1n xn )/a11.

x2 = ( b2 - a21 x1 - a23 x3 - ... a2n xn )/a22

...... (7.8)

xn = ( bn - an1 x1 - an2 x2 - ... ann-1 xn-1 )/ann

Vlerësimin e parë të të panjohurave e bëjmë sipas rradhës:

xb

ax

ab a x x

ab a x a x x

ab a x a xn

nn

n n nn n1

1

11

2

22

2 21 1 3

33

3 31 1 32 2 1 1 1 1

1 1 1, , ( ) ( ), .... ( ... )

Këto zgjidje shërbejnë si input për ti rizgjidhur ekuacionet (9.8) dhe procesi vazhdon në

mënyrë iterative deri në një sa zgjidhja e rradhës ndryshon nga zgjidhja paraardhëse nën një

tolerancë të caktuar. Procedura mund të mos konvergjojë , prandaj vendoset një limit në

numrin e iteracioneve ose kontrollohet konvergjenca. Më poshtë po japim programin në

BASIC që realizon procedurën e Gaus-Zeidel-it.

10 REM metoda Gaus-Seidel per zgjidhjen e sistemit te ekuacioneve lineare

20 PRINT "Sa eshte numri i ekuacioneve : "

30 INPUT n

40 DIM a(n, n), b(n), id(n), x(n)

50 FOR i = 1 TO n

60 FOR j = 1 TO n

65 PRINT "fut vleren e radhes se a(i,j)"

70 INPUT a(i, j)

80 NEXT j

85 PRINT "fut vleren e radhes se b(i) "

90 INPUT b(i)

100 NEXT i

110 INPUT "Sa eshte kufiri i konvergjences";e

120 PRINT

130 INPUT "A deshironi ta shihni rezultatin e cdo iteracioni?(p/j)";T$

140 REM Gjen koeficientin me te madh ne cdo ekuacion

150 FOR i = 1 TO n

160 FOR j = 1 TO n

170 IF j <> 1 THEN 210

180 maxi = ABS(a(i, j))

190 id(i) = j

200 GOTO 235

210 IF ABS(a(i, j)) < maxi THEN GOTO 240

220 maxi = ABS(a(i, j))

230 id(i) = j

235 NEXT j

240 next i

250 REM cvendosen rreshtat qe te dali vlera me e madhe ne diagonale

260 FOR i = 1 TO n - 1

Page 53: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

51

270 IF id(i) = 1 THEN GOTO 420

280 FOR ii = i TO n

290 IF id(ii) <> i THEN GOTO 320

300 jj = ii

310 GOTO 330

320 NEXT ii

330 FOR j = 1 TO n

340 d = a(jj, j)

350 a(jj, j) = a(i, j)

360 a(i, j) = d

370 NEXT j

380 d = b(i)

390 b(i) = b(jj)

400 b(jj) = d

410 id(jj) = id(i)

420 NEXT i

430 REM procedura e Gaus-Seidel-it

440 REM gjenden perfarimet fillestare

450 FOR j = 1 TO n

460 sum = 0

470 IF j = 1 GOTO 510

480 FOR i = 1 TO j - 1

490 sum = sum + x(i)

500 NEXT i

510 x(j) = (b(j) - sum) / a(j, j)

520 NEXT j

530 ik = 0

540 k% = 1

550 ik = ik + 1

560 IF ik > 100 THEN GOTO 820

570 FOR i = 1 TO n

580 sum = 0

590 FOR j = 1 TO n

600 IF i = j GOTO 620

610 sum = sum + a(i, j) * x(j)

620 NEXT j

630 xx = x(i)

640 x(i) = (b(i) - sum) / a(i, i)

650 IF ABS(xx - x(i)) > e THEN k% = 2

660 NEXT i

670 IF T$ = "j" THEN GOTO 740

680 PRINT

690 PRINT "Per iteracionin me numer ";ik

700 FOR i = 1 TO n

710 PRINT "x("; i; ")="; x(i)

720 NEXT i

730 INPUT "Shtyp tasten Return per te vazhduar";F$

740 IF k% = 2 THEN GOTO 540

750 REM Konvergjenca ka ndodhur;printohen rezultatet

Page 54: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

52

760 PRINT "Procedura ka konvergjuar"

770 PRINT "tek kjo zgjidhje"

780 FOR i = 1 TO n

790 PRINT "x("; i; ")=";x(i)

800 NEXT i

810 GOTO 830

820 PRINT "Nuk ka konvergjence pas 100 iteracionesh"

830 END

Ushtrime:

1. Të zgjidhen me metodën Gaus-Zeidel, sistemet e ekuacioneve:

a) x1 + 8x2 + 2x3 = 4 b) x1 +14x2 +3x3 +6x4 = 25 c) 2x1 +2x2 + x3 - x4 = 7

9x1 + x2 - x3 = 15 10x1 +2x2 - x3 -2x4 = 18 x1 -3x2 +2 x3 -2x4 = 5

2x2 + 6x3 = 9 -x1 - 4x2 + 12x3+2x4 = 31 3x1 +x2 - x3 + x4 = 6

2x1 + 3x2 + x3 +8x4 = 14 x1 - x2 + 2x3 +4x4 = 9

2.8 Përmirësimi iterativ i zgjidhjes së ekuacioneve lineare

Me çfardo metode të zgjidhjes së sistemit të ekuacioneve lineare , nuk mund të fitohet

zgjidhje me saktësi më të madhe se sa saktësia e përafrimit të numrave në kompjuter. Për fat

të keq, për numër të madh ekuacionesh, nuk është lehtë të arrihet as kjo saktësi . kjo për arësye

të akumulimit të gabimeve të rumbullakimit të numrave në kompjuter, tq cilat zmadhohen

sidomos kur matrica e sistemit të ekuacioneve është shumë afër matricës singulare ( matricë e

pakthyeshme).

Për të arritur saktësi të paktën sa saktësia e kompjuterit, ka një mënyrë që quhet

përmirësimi iterativ i zgjidhjes.

Supozojmë se x është zgjidhja e saktë e sistemit të ekuacioneve:

A·x = b (8.1)

Ne njohim një zgjidhje x+ x ku x është gabimi. Kur shumëzon matricën A me këtë

zgjidhje atëhere merret ana e djathtë e ndryshuar paksa:

A·(x+ x) = b+ b (8.2)

ku A · x= b dhe b=A·(x+ x)-b , pra :

A· x=A·(x+ x)-b (8.3)

Në ekuacionin (8.3) , ana e djathtë njihet plotësisht me që x+ x është zgjidhja e gjetur që

duam të përmirësojmë . Duke e zgjidhur përsëri ekuacionin (8.3), gjendet x , e cila po ti

hiqet zgjidhjes x+ x do ta përmirësojë atë pra do ta afrojë tek zgjidhja e saktë. Për zgjidhjen e

ekuacionit (8.3) thërritet një nga procedurat e njohura dhe ekzekutohet ajo disa herë derisa

zgjidhja e rradhës ndryshon nga zgjidhja parardhëse më pak se një tolerancë e zgjedhur.

ZGJIDHJA NUMERIKE E SISTEMIT TE EKUACIONEVE JOLINEARE

2.9 Iteracioni me pikë të fiksuar

Page 55: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

53

Para se të kalojmë në zgjidhjen numerike të një sistemi ekuacionesh jolinearë do të

shqyrtojmë një metodë për zgjidhjen numerike të një ekuacioni jolinear që quhet iteracioni me

pikë të fiksuar. Le të jetë ekuacioni jo linear:

f(x)=0 (9.1)

dhe le të formojmë një funksion g(x) të tillë që kur f(x)= 0 të sillet në g(x)=x, psh :

g(x)=x-f(x) ose g(x)=x+3f(x) etj.

Pikë e fiksuar e një funksioni të dhënë g(x) është një numër p i tillë që g(p)=p . Pra

problemi i gjetjes së pikës së fiksuar të funksionit g(x) është ekuivalent më zgjidhjen e

ekuacionit jolinear (9.1). Psh , ekuacioni sin x=0 sillet në gjetjen e pikës së fiksuar të

funksionit g(x)=x - sin x , i cili në segmentin [0,1] ka dy pika të fiksuara : x = 0 dhe x = 1 .

Ka një teoremë, për të cilën nuk do japim këtu vërtetimin, e cila na jep kushtet e

mjaftueshme të ekzistencës dhe unicitetit të pikës fikse.

Teoremë: Në qoftë se g(x) është një funksion i vazhduar në segmentin [a,b] dhe

g(x) [a,b], atëhere ai ka pikë fikse në këtë segment. Nëse |g’(x)| k <1, për çdo x (a,b),

atëhere pika e fiksuar në [a,b] është e vetme.

Për të gjetur numerikisht pikën fikse të funksionit g , zgjidhet një vlerë fillestare e përafërt

p0 dhe mandej gjenerohet sekuenca {pn } n=0 e tillë që pn = g(pn-1) për çdo n 1.

Nëse sekuenca konvergjon në p dhe g është i vizhdueshëm , atëhere provohet se :

p p g p g pn n n nlim (lim ) ( )1 (9.2)

dhe një zgjidhje e ekuacionit x=g(x) gjendet , në kushtet e teoremës së mësipërme kjo

zgjidhje është e vetme. Algoritmi i kësaj procedure është shkruar në programin në Basic

dhe është ilustruar në figurën (9.1)

Figura 9.1

Psh , ekuacioni x3

+ 4x2 -10 =0 ka një rrënjë të vetme në [0,1]. Ka shumë mënyra për ta sjellë

ekuacionin në formën x= g(x) , psh një mënyrë do ishte : x = ½ (10 - x )1/2

dhe për të fituar

zgjidhjen pozitive zgjedhim shenjën + . Por ka edhe mënyra të tjera disa nga të cilat janë

renditur më poshtë:

a. x = g1 (x) = x - x3 - 4x

2 + 10, b. x = g2 (x) = (10/x - 4x )

1/2 ,

Page 56: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

54

c. x = g3 (x) = ½ (10 - x3 )

1/2 , d. x = g4 (x) = [10/(4+x)]

1/2 ,

e. x = g5 (x) = x - (x3 - 4x

2 + 10)/(3x

2 +8x) .

Duke përdorur algoritmin e mësipërm të shkruar në BASIC :

10 REM Programi gjen zgjidhjen e ekuacionit p=g(p) (iteracioni me pike fikse)

20 REM duke u nisur nga një perafrim p0 me saktesine TOL. Funksioni g(x) eshte

25 REM zgjedhur ne fillim x-(x^3+4x^2-10) , por mund te ndryshohet sipas

26 REM alternativave (10/x-4x)^1/2; 1/2(10-x^3)^1/2; [10/(4+x)]^1/2; x-(x^3+4x^2-

10)/(3x^2+8x)

27 REM per te zgjidhur numerikisht ekuacionin x^3+4*x^2-10=0 ne segmentin [1,2]

30 DEF fng (x) = x - (x ^ 3 + 4 * x ^ 2 - 10)

40 tol = .0001

50 nmax = 100

60 PRINT "Sa eshte vlera fillestare e p ?"

70 INPUT p0

80 FOR i = 1 TO nmax

90 p = fng(p0)

100 IF ABS(p - p0) < tol THEN 200

110 p0 = p

120 NEXT i

130 PRINT "Metoda deshtoi pas"; nmax; "iteracionesh"

140 GOTO 250

200 PRINT "pika fikse eshte x="; p

250 END

dhe rezultatet e tij janë paraqitur në tabelë për 5 rastet e ndryshme të zgjedhjes së funksionit

g(x). Nga kjo tabelë duket se zgjedhjet (c),(d) dhe (e) japin rezultate të shpejta (për këte rast

metoda e sekantes do jepte rezultat të po asaj saktësie pas n=27 iteracionesh), për rezultatin e

saktë që është 1.365230013. Ndërsa zgjedhja (a) divergjon ,pra nuk është zgjedhje e mirë dhe

zgjedhja (b) nuk ecën sepse kërkon gjetjen e rrënjës së një numri negativ.

Page 57: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

55

2.10 Metoda e pikës fikse për sistemet e ekuacioneve jolineare

Sistemi i ekuacioneve jolineare ka formën:

f1(x1 , x2 , ... , xn )= 0

f2(x1 , x2 , ... , xn )= 0 . . (10.1) .

fn(x1 , x2 , ... , xn )= 0 ,

Ku seicili funksion fi mun të mendohet si funksion i vektorit x = (x1 , x2 , ...xn ) i hapësirës

n- dimensionale dhe sistemi i ekuacioneve (10.1) mund të shkruhet në trajtë vektoriale në këtë

hapësirë në formën:

F(x) =0 , (10.2)

ku vektori F ka për kordinata funksionet f1 , f2 , .... fn .

Limiti i funksionit f kur vektori x shkon drejt vektorit x0 quhet madhësia reale L e tillë që , për

çdo numër > 0 , ekziston një numër > 0 i tillë që:

| f (x ) - L | <

për çdo x që plotëson kushtin : 0 < || x - x0 || < . Ku me shenjën || ..|| kemi shënuar normën e

vektorit , që paërcaktohet: || x || = xii

n2

1

1 2/

. Ndërsa limitin e funksionit vektorial F(x) e

përcaktojmë si vektorin L :

lim ( , , ... , )x x0

F(x) = L = L L Ln1 2 , nëse ekzistojnë limitet:

lim x x0 fi (x ) = Li . Në mënyrë analoge me përcaktimin e pikës fikse për një funksion me një

variabël , përcaktohet pika fikse në hapësirën me n përmasa . Pra funksioni vektorai G ka

pikë fikse vektorin p nese G(p)=p . Më poshtë po japim pa vërtetim

Page 58: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

56

Teoremë: Le të jetë zona në hapësirën n-dimensionale D = {(x1, x2, ...xn ) , ku ai xi bi për

çdo i =1,2,...n } ku a1 , a2 , ..., an dhe b1 , b2 , ..., bn janë konstante dhe funksioni G është i

vazhdueshëm në këtë zonë, atëhere G ka një pikë fikse në këtë zonë. Nëse G ka edhe

derivatet e pjesëshme të vazhduar në këtë zonë të tilla që : g

x

K

n

i

j

( )x (ku K<1) për çdo

x D , për çdo j =1,2,...n dhe çdo komponent gi , atëhere sekuenca {x(k)

}k=0 e përcaktuar

nga një x(0)

arbitrar nga D dhe nga relacioni : x(k)

= G (x(k-1)

) për çdo k 1, konvergjon në një

pikë fikse të vetme: p D dhe :

x p x x( ) ( ) ( )k

kK

K1

1 0 , (10.3)

ku norma e vektorit me indeksin përcaktohet si ||x|| = max {|xi | } për i=1,2,...,n .

Shembull : Le ta zemë se kemi sistemin e ekuacioneve lineare :

3x1 - cos (x2 x3) - 1/2 = 0

x12 - 81(x2 +0.1)

2 + sinx3 + 1.06 = 0 (104)

e x x1 2 + 20x3 + (10 -3)/3 = 0

Zgjidhja e këtij sistemi sillet në problemin e gjetjes se pikës fikse :

x x x

x x x

x e x x

1 2 3

2 1

2

3

3

1

3

1

61

9106 01

1

20

10 3

601 2

cos( )

sin . . (105)

të funksionit G (g1(x),g2(x),g3(x)) në hapësirën 3-dimensionale.

g x x x x x

g x x x x x

g x x x e x x

1 1 2 3 2 3

2 1 2 3 1

2

3

3 1 2 3

1

3

1

61

9106 01

1

20

10 3

601 2

( , , ) cos( )

( , , ) sin . .

( , , )

(10.6)

Në bazë të teoremës së mësipërme ne mund të provojmë që funksioni G ka pikë fikse të

vetme në zonën D = {(x1, x2 , x3)}, -1 xi 1 , për çdo i =1,2,3} . Me të vërtetë po të

llogariten gjithë derivaet e pjesëshme në D të funksioneve g1, g2 , g3 , del se :

g

x

i

j

( ).

x0 281 , për i = 1,2,3 dhe çdo j =1,2,3

dhe kushtet e teoremës së mësipërme plotësohen me K=3*0.281=0.843.

Për të përafruar pikën fikse p , zgjedhim si x(0)

= (0.1 , 0.1 , -0.1). Sekuenca e vektorëve e

gjeneruar nga :

x x x

x x x

x e

k k k

k k k

k x xk k

1 2

1

3

1

2 1

1 2

3

1

3

1

3

1

61

9106 01

1

20

10 3

601

12

1

( ) ( ) ( )

( ) ( ) ( )

( )

cos( )

( ) sin . .

( ) ( )

,

konvergjon tek zgjidhja e vetme (10.4). Në këtë shembull sekuencat janë vazhduar deri sa:

Page 59: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

57

x x( )) ( )k k 1 510 dhe rezultatet jepen në tabelën e mëposhtëme:

Duke përdorur kufirin e gabimit (10.3) me K=0.843 , gjejmë :

x p( ) ( . )

.( . ) .5

50 843

1 0 8430 423 115,

e cila nuk tregon tamam saktësinë e x(5)

, për arsye të pasaktësisë të përafrimit fillestar. Në

fakt zgjidhja është : p = (0.5,0,- /6) (0.5,0,-0.5235987757) dhe gabimi është:

x p( )5 82 10 .

Një mënyrë për ta shpejtuar konvergjencën është që të përdorim vlerësimet e fundit x1(k)

,

x2(k)

,... xi-1(k)

në vend të x1(k-1)

, x2(k-1)

,... xi-1(k-1)

për të llogaritur xi(k)

, ashtu si veprohet tek

metoga e Gaus-Zeidel-it për sistemin e ekuacioneve lineare:

x x x

x x x

x e

k k k

k k k

k x xk k

1 2

1

3

1

2 1

2

3

1

3

1

3

1

61

9106 01

1

20

10 3

601 2

( ) ( ) ( )

( ) ( ) ( )

( )

cos( )

( ) sin . .

( ) ( )

,

me x(0)

= (0.1,0.1,-0.1); rezultatet e llogaritjeve jepen në tabelën e mëposhtëmë:

x

(4) është e saktë brenda saktësisë 10

-7 .

Ushtrime:

1. Sistemi i ekuacioneve jolineare:

x12 -10x1 + x2

2 + 8 = 0

x1 x22 + x1 - 10x2 + 8 = 0 ,

Page 60: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

58

mund të të sillet në problemin e pikës fikse:

x1 = g1 (x1 , x2 ) = (x12 + x2

2 + 8)/10

x2 = g2 (x1 , x2 ) = (x12 x2

2 + x1 + 8)/10 .

a) Provoni që funksioni G = (g1 , g2 ) ka një pikë fikse në zonën:

D = {(x1 , x2) , 0 x1 , x2 1.5}

b) Duke zbatuar skemën e iteracioneve të gjendet zgjidhja e përafërt.

(Përfundimi: me x(0)

=(0,0) del x(13)

= (0.9999973,0.9999973)

2. Sistemi jolinear :

5x12 - x2

2 = 0

x2 - o.25(sin x1 + cos x2 ) = 0 ,

ka një zgjidhje afër (1/4 , 1/4)

a) Gjeni një funksion G = (g1, g2 ) dhe një zonë dy-dimensionale D ku funksioni G ka

zgjidhje të vetme.

b) Përdorni skemën e iteracioneve për t’ju afruar zgjidhjes brenda 10-5

në || .. || normën.

3. Duke përdorur skemën iterative të gjendet zgjidhja e sistemeve të mëposhtëm jolinearë,

brenda skatësisë 10-5

në ||...| normën.

a) x12 + x2

2 - x1 = 0 b) 3x1

2 - x2

2 = 0 c) 2x1 + x2 + x3 - 4 = 0

x12

- x22 - x2 = 0 3x1 x2

2 - x1

2 -1 = 0 x1 + 2x2 + x3 - 4 = 0

x1 x2x1 - 1 = 0

d) x12 + x2 - 37 = 0 e) 3x1 - cos(x2 x3 ) - 1/2 = 0 f) x1

2 + 2x2

2 - x2 - 2x3 = 0

x1 - x22 - 5 = 0 x1

2 - 625x2

2 = 0 x1

2 - 8x2

2 +10x3 = 0

x1 + x2 + x3 - 3 = 0 e xx x1 2 20

10 3

303 x1

2 /(7x2x3) - 1 = 0

Përfundime:

a) Me G(x)= ( x x x x1 2

2

1

2

2, ) dhe x(0)

= (0.7,0.4) , gjejmë x(14)

= (0.77184647,

0.41965131)

b) Me G(x)= (x2

/ 3 1 31

3

1, ( ) / ( )x x ) dhe x(0)

= (0.4,0.75) , gjejmë x(17)

= (0.49998843,

0.86603592)

c) Me G(x)= (2-0.5x2 - 0.5x3 , 2-0.5x1-0.5x3 , x x x3 1 2/ ( ),) dhe x(0)

= (0.5,0.6,0.7) , gjejmë

x(109)

= (1.000029, 1.000029, 1.000075)

d) Me G(x)= ( 37 5 32 1 1 2x x x x, , ) dhe x(0)

= (6.0,0.5,0.5) , gjejmë x(9)

=

(6.0000001, 1.0000000,-3.9999985)

e) Me G(x)= (1/3cos(x2 x3)+1/6 ,1/25 x1 , 1

20 60 051 2e x x . ) dhe x

(0) = (0,0,0) , gjejmë x

(4)

= (0.49998176, 0.019999269, -0.52310129).

f) Me G(x)= ( 2 2 10 8 73 2 2

2

3 1

2

1

2

2x x x x x x x, ( ) / , / ( ) ) dhe x(0)

= (0.5,0.3,0.1) , gjejmë

x(38)

= (0.52915452, 0.40000181, 0.099998587).

Page 61: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

59

2.11 Metoda e Njutonit

Në rastin një-dimensional , metoda e Njutonit jep një konvergjencë kuadratike (norma ||..||2

) për problemin e pikës fikse , kur funksioni në ekuacionin :

g(x) = x - (x) f(x) , (11.1)

zgjidhet (x) = 1/ f ‘(x) me supozimin që f ‘(x) 0.

Për të zbatuar këtë metodë në rastin n-dimensional, formojmë matricën:

A

a a aa a a

a a a

n

n

n n nn

( )

( ) ( ) ( )( ) ( ) ( )

....................................( ) ( ) ( )

x

x x xx x x

x x x

11 12 1

21 22 2

1 2

... ...

...

(11.2)

ku elementet aij(x) janë funksione të vektorit x . Kërkojmë që A(x) të jetë e tillë që ekuacioni

G(x)=x-A(x)-1

.F(x) të lapë konvergjencë kuadratike të zgjidhjes së ekuacionit F(x)=0 duke

supozuar që A(x) është josingulare në pikën e fiksuar p të G.

Provohet se sekuenca e gjeneruar nga barazimi : x(k)

= G(x(k-1)

) konvergjon kuadratikisht tek

zgjidhja e ekuacionit (nëse ajo ekziston) x = G(x) , nëse matrica A(x) merret sa Jakobiani :

A(x)= J(x) =

f

x

f

x

f

xf

x

f

x

f

x

f

x

f

x

f

x

n

n

n n n

n

1

1

1

2

1

2

2

2

2

2

1 2

( ) ( ) ( )

( ) ( ) ( )

.........................................

( ) ( ) ( )

x x x

x x x

x x x

...

...

(11.3)

Prandaj funksioni G merret :

G(x) = x - J(x)-1

F(x) (11.4)

dhe procedura e iteracioneve duke zgjedhur x(0)

gjeneron për k 1 :

x(k)

= x(k-1)

- J(x(k-1)

)-1

F(x(k-1)

) (11.5)

Dobësia e metodës së Njutonit është se ajo kërkon llogaritjen dhe invertimin e

matricës J(x) në çdo hap. Në praktikë , llogarija eksplicite e matricës J(x)-1

shmanget duke e

kryer operacionin me dy hapa. Në fillim , gjendet një vektor y i tillë që

J(x(k-1)

) y = -F(x(k-1)

) (11.6)

dhe pastaj gjendet përafrimi i ri x(k)

duke i shtuar vektorit x(k-1)

vektorin y .

Shembull:

Sistemi i ekuacioneve jolineare është :

3x1 - cos (x2 x3) - 1/2 = 0

x12 - 81(x2 +0.1)

2 + sinx3 + 1.06 = 0 (11.7)

e x x1 2 + 20x3 + (10 -3)/3 = 0

Metoda e Njutonit është programuar për këtë sistem në programin e mëposhtëm. Përafrimi

fillestar është marë: x(0)

= (0.1,0.1,-0.1)

Jakobiani i sistemit është :

Page 62: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

60

J(x1, x2, x3)=

3

2 01

20

3 2 3 2 2 3

1 2 3

2 11 2 1 2

- 162(

x x x x x x

x x xx e x ex x x x

sin sin

. ) cos (11.8)

Ndërsa vektori F(x1, x2, x3) është :

- ( ) - / - ( + . ) + + . + + ( - 3) / 3

2

3 1 281 01 106

20 10

1 2 3

1

2

2 3

31 2

x x xx x xe xx x

cossin (11.9)

Sistemi i ekuacioneve (11.6) , për gjetjen e vektorit y ,është zgjidhur me metodën e Gausit.

Ndërsa iteracionet:

x(k)

= x(k--1)

+ y (11.10)

janë ndërprerë kur ndryshimi midis elementeve të x(k-1)

dhe x(k)

bëhet më i vogël se toleranca

që është zgjedhur 10-6

.

Rezultatet e ekzekutimit të pragramit janë paraqitur në tabelën që pason programin.

10 REM Metoda e Njutonit e zbatuar per sistemin e 3 ekuacioneve jolineare

20 REM a) 3x1-cos(x2.x3)-1/2=0 b)x1^2 -81(x2+0.1)^2+sin(x3)+1.06=0

30 REM c) e^(-x1.x2)+20x3+(10pi-3)/3=0

40 n = 3

45 tol = .000001

50 DIM x(3), y(3), ej(3, 3), f(3), a(3, 3), b(3), e1(3, 4)

60 x(1) = .1

70 x(2) = .1

80 x(3) = -.1

90 INPUT "numri i iteracioneve?"; itt

100 FOR it = 1 TO itt

110 ej(1, 1) = 3

120 ej(1, 2) = x(3) * SIN(x(2) * x(3))

130 ej(1, 3) = x(2) * SIN(x(2) * x(3))

140 ej(2, 1) = 2 * x(1)

150 ej(2, 2) = -162 * (x(2) + .1)

160 ej(2, 3) = COS(x(3))

170 ej(3, 1) = -x(2) * EXP(-x(1) * x(2))

180 ej(3, 2) = -x(1) * EXP(-x(1) * x(2))

190 ej(3, 3) = 20

200 f(1) = 3 * x(1) - COS(x(2) * x(3)) - 1 / 2

210 f(2) = x(1) ^ 2 - 81 * (x(2) + .1) ^ 2 + SIN(x(3)) + 1.06

220 f(3) = EXP(-x(1) * x(2)) + 20 * x(3) + (10 * 3.1415 - 3) / 3

225 GOSUB 1000

230 FOR j = 1 TO n

240 x(j) = x(j) + y(j)

250 NEXT j

255 maxy = 0

260 FOR k = 1 TO n

270 IF maxy < ABS(y(k)) THEN maxy = ABS(y(k))

280 NEXT k

290 IF maxy > tol THEN 300 ELSE 350

300 PRINT it, x(1), x(2), x(3)

310 NEXT it

Page 63: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

61

350 END

1000 REM Programi zgjidh sistemin e n ekuacioneve lineare me n te panjohura me

1020 REM metoden Gauss

1040 REM REM a(n, n), b(n), e1(n, n + 1)

1050 FOR i = 1 TO n

1060 FOR j = 1 TO n

1070 a(i, j) = ej(i, j)

1080 NEXT j

1090 b(i) = -f(i)

1100 NEXT i

1200 REM kthimi i matrices a ne trekendore te siperme,rezultati ne E

1260 FOR i = 1 TO n

1270 FOR j = 1 TO n

1280 e1(i, j) = a(i, j)

1285 NEXT j

1287 e1(i, n + 1) = b(i)

1288 NEXT i

1289 FOR i = 1 TO n

1290 IF e1(i, i) = 0 GOTO 1320

1291 FOR j = i + 1 TO n

1295 xm = e1(j, i) / e1(i, i)

1297 FOR k = i TO n + 1

1300 e1(j, k) = e1(j, k) - xm * e1(i, k)

1310 NEXT k

1305 NEXT j

1320 NEXT i

1330 e1(n, n + 1) = e1(n, n + 1) / e1(n, n)

1340 FOR k = n - 1 TO 1 STEP -1

1350 shum = 0

1360 FOR j = k + 1 TO n

1370 shum = shum + e1(k, j) * e1(j, n + 1)

1380 NEXT j

1390 e1(k, n + 1) = (e1(k, n + 1) - shum) / e1(k, k)

1400 NEXT k

1500 REM rezultati eshte ne kolonen e fundit te e1

2150 REM PRINT "Rezultatet e metodes Gaus"

2330 FOR i = 1 TO n

2340 y(i) = e1(i, n + 1)

2350 NEXT i

2360 RETURN

Page 64: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

62

Nga shembulli i mësipërm duket se metoda e Njutonit jep konvergjencë të shpejtë nëse

përafrimi i zgjedhur në fillim është afër zgjidhjes së vërtetë . Por, nuk është e lehtë të gjendet

vlera e përafërt e fillimit dhe kjo është e vetmja dobësi e metodës. Ka një metodë tjetër që e

kapërxen edhe këtë vështirësi (e ashuquajtura “zbritja e shkallëzuar sipas drejtimit të

gradientit” ) , që nuk do ta trajtojmë këtu.

Ushtrime

1. Duke përdorur metodën e Njutonit, të gjendet zgjidhja e sistemeve të ekuacioneve jolinearë

të mëposhtëm. Iteracioni të vazhdohet derisa || x(k)

- x(k-1)

|| < 10-6

.

a) 4x12 -20x1 +1/4 x2

2 + 8 = 0 b) 3x1

2 - x2

2 = 0

1/2 x1x22 + 2x1 - 5x2 + 8 = 0 3x1x2

2 - x1

3 - 1 = 0

c) ln(x12 + x2

2) - sin(x1x2) = ln2 + ln d) sin(4 x1x2) -2x2 - x1 = 0

e x xx x1 2

1 2 0 cos( ) 4 1

42 2 02

2

2

11( )e e ex exx

Përfundimet :

a) Me x(0)

= (0,0), gjejmë : x(5)

= (0.5,2.0)

b) Me x(0)

= (1,1), gjejmë : x(5)

= (0.5,0.8660254)

c) Me x(0)

= (2,2), gjejmë : x(6)

= (1.772454,1.772454)

d) Me x(0)

= (0,0), gjejmë : x(6)

= (-0.3736992,0.05626649)

2. Duke përdorur metodën e Njutonit, të gjendet zgjidhja e sistemeve të ekuacioneve jolinearë

të mëposhtëm në zonën e dhënë.

Iteracioni të vazhdohet derisa || x(k)

- x(k-1)

|| < 10-6

.

a) 15x1 + x22

- 4x3 = 13 b) x1 + cos(x1 x2 x3) - 1 = 0

x12 +10x2 - x3

= 11 (1- x1)

1/4 + x2 + 0.05x3

2 - 0.15x3 - 1 = 0

x23

- 25x3 = -22 - x12 - 0.1x2

2 + 0.01x2

+ x3 - 1 = 0

D = {(x1, x2, x3) | 0 xi 2 } D = {(x1, x2, x3) | 0 xi 1.5 }

c) x13 + x1

2x2 - x1x3 + 6 = 0 d) sinx1 + sin(x1x2) + sin(x1x3) = 0

e e xx x1 2

3 0 sinx2 + sin(x2x3) = 0

x22 - 2x1x3 = 4 sin(x1x2 x3) = 0

D = {(x1, x2, x3) | -2 x1, x2 -1, 0 x3 1} D = {(x1, x2, x3) | -2 x1, x2 -1,-6 x3 -4}

Page 65: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

63

3. Duke përdorur metodën e Njutonit, të gjendet zgjidhja e sistemeve të ekuacioneve jolinearë

të mëposhtëm. Iteracioni të vazhdohet derisa || x(k)

- x(k-1)

|| < 10-5

.

a) 6x1 - 2cos(x2x3) -1 = 0 b) cosx1 + cosx2 + cosx3 = 1

9x1 + x x1

2

3 106 0 9 0sin . . cos(x1x2) + cos(x2 x3) + cos(x1x3)=0

60x3 + 3 e x x1 2 10 - 3 = 0 cos(x1x2x3) = -1

c) 2x1 + x2 + x3 + x4 - 5 = 0

x1 +2x2 + x3 + x4 - 5 = 0

x1 + x2 + 2x3 + x4 - 5 = 0

x1x2x3x4 - 1 = 0

Gjeni zgjidhjen e ndryshme nga (1,1,1,1)

Perfundimet:

a) Me x(0)

= (0.1,-0.1,0.1) , gjejmë x(3)

= (0.4981446, - 0.1996059, - 0.5288259)

b) Me x(0)

= (1 , 2 , 3) , gjejmë x(16)

= (-0.4021187, - 0.9302338, 8.398353)

Me x(0)

= (- 0.5, -1, 2) , gjejmë x(23)

= (7.869499, 0.7214381, - 4.980240)

Me x(0)

= (- 0.5, -1, 4) , gjejmë x(14)

= (-0.6398107, - 1.102016, 4.45568)

Me x(0)

= (- 0.5, -1, 6) , gjejmë x(17)

= (-0.9302344, - 0.4021213, - 8.398351)

c) Me x(0)

= (0.5, 0.5,0.5,0.5) , gjejmë x(14)

= (0.8688753, 0.8688760, 0.8688761, 1.524497)

Page 66: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

64

KAPITULLI I TRETE

PERPUNIMI I TE DHENAVE EKSPERIMENTALE

3.1 Hyrje

Për shkak të gabimeve në matje , vlerat e matuara të çdo madhësie fizike nuk përputhen me

vlerën e saktë të saj. Pa u interesuar për natyrën e këtyre gabimeve ne do të studiojmë disa

metoda të përpunimit të vlerave të matura të madhësive të ndryshme.

Në analizën e të dhënave eksperimentale përdoren koncepte nga Statistika Matematike.

Disa nga këto koncepte që ne do ti përdorim, janë:

- Mesatarja : Le të jenë xi (i=1,2,...N) vlerat e matura të një madhësie X . Mesatare të kësaj

madhësie të matur quhet :

xN

xii

N1

1

, (1.1)

e cila shpesh shënohet edhe <x> ose E(x).

-Varianca : Var(x1 , x2 , x3 , ... xN ) = 1

1

2

1Nx xi

i

N

( ) , (1.2)

kjo çmon largësinë e vlerave nga mesatarja e tyre.

- Devijimi standart : Var x x xN

x xN ii

N

( , ,.... ) ( )1 2

2

1

1

1, (1.3)

e cila përdoret shpesh për të vlerësuar gabimin që kryhet gjatë matjes së një madhësie.

Pjestuesi N-1 merret kur mesatarja përcaktohet nga të dhënat eksperimentale. Ndërsa kur kjo

mesatare njihet më parë , ky pjestues merret N.

- Devijimi absolut mesatar : 1

Nx xi| | (1.4)

Ne do konsiderojmë që për numër të madh matjesh, shpërndarja e vlerave të matura i

bindet ligjit të shpërndarjes Normale ose siç quhet ndryshe shpërndarjes së Gausit. Kjo

shpërndarje jepet nga funksioni i shpërndarjes f(x) që paraqet probabilitetin që madhësia e

matur X të ketë vlerë x në njësiinë e intervalit (x, x+dx):

f(x) =1

2

2

22e

x x( )

dhe paraqitet grafikisht si në figurë:

Nëse kemi dy madhësi X dhe Y që maten njëkohësisht dhe vlerat e matjeve të tyre janë

xi (i=1,2,..N) dhe yi (i=1,2,..N) , atëhere kovarianca dhe devijimi standart i tyre , llogariten me

formulat:

Cov(X,Y)=1

1 1Nx x y yi i

i

N

( )( ) ; =Var X Var Y Cov X Y

N

( ) ( ) ( , )2 (1.5)

x

f(x)

E(x)

Page 67: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

65

Për të vlerësuar faktin që ka apo nuk ka lidhje midis këtyre madhësive, futet kuptimi i

koeficientit të korelacionit:

r=

( )( )

( ) ( )

x x y y

x x y y

i ii

N

ii

ii

1

2 2 , (1.6)

i cili merr vlera në kufijtë (-1,+1) . Kur koeficienti i korrelacionit merr vlerë +1 , atëhere midis

dy madhësive X dhe Y kemi korrelacion të plotë pozitiv , pra të dhënat eksperimentale në një

sistem boshtesh X,Y janë vendosur në një vijë të drejtë me pjerrësi pozitive. Po kështu është

rasti kur r=-1, korrelacioni është i plotë por negativ dhe të dhënat janë përsëri në një drejtëz

por me pjerrësi negative (Y zvogëlohet me rritjen e X). Sigurisht , sa më afër zeros të jetë

koeficienti i korrelacionit aq më pak janë të lidhura me ndonjë relacion midis tyre madhësitë

X dhe Y. Por ky koeficient nuk na jep ndonjë informacion mbishpërndarjet individuale të

vlerave të matura të madhësive X dhe Y.

Proceset e përpunimit të të dhënave eksperiimentale janë të shumta. Këtu përfshihen:

filtrimi, interpolimi, plotimi etj. Ne do të përqëndrohemi tek një proces që quhet modelimi i të

dhënave eksperimentale.

3.2 Modelimi i të dhënave eksperimentale

Me modelim të të dhënave eksperimentale ne do kuptojmë “fitting” (përqasjen) e të

dhënave tek një model i dhënë, i cili varet nga disa parametra. Vlerat e këtyre parametrave do

të gjenden të tiillë që “fitting” (përqasja) e të dhënave tek modeli të jetë sa më i mirë. Modeli

është një klasë e përshtatëshme funksionesh si p.sh. polinome të një rendi të caktuar. Për

zgjedhjen e klasës së funksioneve të modelit nuk ka ndonjë kriter të caktuar, zakonisht

modeluesi i të dhënave eksperimentale zgjedh atë klasë funksionesh që pëafron më mirë

rezultatin që pret eksperimentuesi ose duke provuar modele të ndryshme dhe duke parë se cili

model e jep përqasjen më të mirë . Mandej problemi sillet në gjetjen e atyre vlerave të

parametrave të modelit, për të cilat modeli i përqas më mirë (“best fitting”) të dhënat. Të

dhënat janë në përgjithësi jo të sakta për arësye të gabimeve në matje. Prandaj, edhe kur

modeli është i saktë të dhënat asnjëherë nuk përqasen ekzaktësisht tek modeli. Ne duam të

përcaktojmë jo vetëm vlerat e parametrave të një modeli të dhënë që përqas të dhënat, por

edhe gabimet në përcaktimin e këtyre parametrave.

Supozojmë se duam të përqasim (“fit”) tek një model i dhënë të dhënat që përfaqësohen

nga pikat ( “data points”) : (xi , yi ) , i= 1,2,3, .... N . Modeli parashikon një lidhje midis dy

madhësive që maten në mënyrë të pavarur x dhe y :

y(x) = y(x, a1 , a2 , a3 , .... aM) (2.1)

ku a1 , a2 , a3 , .... aM janë parametrat e modelit. Kuptohet që modeli i përqaset më mirë të

dhënave kur shmangiet e vlerave eksperimentale yi nga vlerat e llogaritura të modelit y(xi ) të

jenë sa më të vogla. Prandaj problemi i gjetjes së vlerave të parametrave të modelit a1 , a2 , a3

, .... aM sillet në minimizimin e madhësisë :

[ ( ; )]y y x a a a ai i Mi

N

, , , .... 1 2 31

2 (2.2)

Kjo mbështetet në faktin që gabimet e matjes së madhësisë y kanë një shpërndarje normale

(shpërndarja e Gausit) rreth një modeli të “vërtetë” y(x), me devijim standart të njëjtë në

çdo pikë matjeje. Atëhere, probabiliteti që bashkësia e matjeve të ketë vlerat që kemi matur

është sa produkti i probabiliteteve për çdo pikë matjeje:

Page 68: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

66

Py y x

yi i

i

N

{exp( )

}1

2

2

1

(2.3)

ku faktori y është në çdo term si produkt. Maksimizimi i shprehjes (2.3) është ekuivalent me

maksimizimin e logaritmit të kësaj shprehjeje ose me minimizimin e logaritmit negativ:

y y x

N yi i

i

N ( ).ln( )

2

21 2

(2.4)

dhe meqënëse N , , y janë konstante , ky minimizim është ekuivalent me minimizimin e

shprehjes (2.1). Kjo metodë e gjetjes së parametrave të modelit quhet metoda e katrorëve më

të vegjël ( - square fitting) e cila gjen parametrat e modelit nga minimizimi i 2 :

2 =

y y x a a a ai i M

ii

N ( ; ) , , , .... 1 2 3

1

2

(2.5)

Në disa raste devijimi standart i çdo matjeje i nuk njihet , atëhere supozohet që të gjitha

matjete kanë të njëjtin devijim standart i = duke zgjedhur një vlerë arbitrare për të (psh =1)

sepse vlera konstante jep të njëjtin rezultat nga minimizimi i shprehjes (2.5). Pasi gjenden nga

minimizimi vlerat e parametrave të modelit , rillogaritet devijimi standart nga formula:

2

2

1

[ ( )]y y x

N

i ii

N

(2.6)

duke i dhënë çdo pike të matjes të njëjtin devijim statndart.

Minimizimi i 2 në shprehjen (2.5) ndaj vlerave të parametrave të modelit do të thotë

që të gjendet minimumi i funksionit 2 si funksion i parametrave a1 , a2 , a3 , .... aM , pra të

barazohen me zero të gjithë derivatet e pjesëshme të 2 ndaj secilit parametër ak

(k =1,2,3...M):

y y x y x a a a

a

i i

ii

Ni M

k

( ) ( , , ,... )2

1

1 2 0 (2.7)

Merren kështu M ekuacione (k=1,2,..M) me M të panjohurat a1 , a2 ,...aM , që zgjidhen

algjebrikisht.

3.3 Regresi Linear

Rasti më i thjeshtë i modelimit të të dhënave është përqasja (fitting) e të dhënave tek një

model linear , pra një varësi linear (vijë drejtë) midis madhësive të matura , x dhe y :

y(x) = y(x; a,b) = a + b x (3.1)

Ky lloj modeli njihet në praktikë si regresi linear. Në këtë rast 2 , do të ishte:

2

21

2

y a b xi i

ii

N

(3.2)

Duke barazuar me zero derivatet e 2 në lidhje me a dhe në lidhje me b , gjejmë:

y a b xi i

ii

N

21

0

Page 69: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

67

(3.3)

( )y a b x xi i i

ii

N

21

0

Nga zgjidhja algjebrike e ekuacioneve (3.3) do të gjenden a dhe b . Për të lehtësuar zgjidhjen

bëjmë këto shënime:

S Sx

Sy

Sx

Sx y

ii

N

xi

ii

N

yi

i

xxi

i

xyi i

ii

N

i

N

i

N12

12

12

2

2 2111

, , , , (3.4)

Atëhere, ekuacionet (3.3) do të shkruhen:

a S + b Sx = Sy

a Sx + b Sxx = Sxy (3.5)

Zgjidhja e këtyre ekuacioneve është :

aS S S S

bS S S S

y xx x xy

xy x y

(3.6)

ku = S Sxx - (Sx )2 .

Ne duhet të gjejmë edhe pasaktësinë e përcaktimit të vlerave të parametrave a dhe b .

Nëse matjet janë të pavarura, atëhere çdo matje ndikon në pasaktësinë e përcaktimit të vlerave

të parametrave . Po të konsiderojmë që ky kontribut shpërndahet njëlloj për çdo matje, atëhere

provohet se varaianca e çdo parametri (ose funksioni të parametrave) është:

f i

ii

N f

y

2 2

2

1

(3.7)

Duke kryer derivatet e pjesëshme në barazimet (3.6), [ kini parasysh që në shprehjet që kanë

indekse y kemi varësi nga yi (Sy dhe Sxy ) ], gjejmë:

a

y

S S x

b

y

S x S

i

xx x i

i

i

i x

i

2

2

(3.8)

Duke zëvëndësuar këto derivate në shprehjen e përgjithëshme (3.7) një herë për parametrin a

dhe një herë për parametrin b , pasi kryejmë shumimet gjejmë këto përfundime për variancat e

përcaktimit të vlerave të parametrave a dhe b :

axx

b

S

S

2

2

(3.9)

Page 70: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

68

Mund të llogaritet edhe kovarianca e koeficientëve a dhe b , si dhe koeficienti i korelacionit

midis tyre me anë të formulave:

Cov(a,b)= - Sx / (3.10)

rab = Cov(a,b) / ( a · b ) = - Sx / S Sxx (3.11)

Më poshtë jepet varianti BASIC i programit që kryen të gjitha llogaritjet për regresin linear

të formës y = a· x + b , madje llogarit edhe një vlerë të pritëshme y që jep regresi linear për

një vlerë të çfardoshmë x .

10 PRINT "REGRESIONI LINEAR I THJESHTE"

20 REM PROGRAMI LLOGARIT A DHE B SI DHE GABIMET E TYRE NE LIDHJEN

Y=A+B.X

25 DIM x(100), Y(100), sig(100)

30 PRINT "NUMRI I MATJEVE"

40 INPUT n

50 REM -Cikli i futjes se te dhenave

100 FOR i = 1 TO n

110 PRINT "X,Y,Sig te pikes se-"; i; "-te"

120 INPUT x(i), Y(i), sig(i)

130 NEXT i

140 PRINT "Opsionet e mundeshme jane: "

150 PRINT TAB(7); "1-Listohen te dhenat e futura"

152 PRINT TAB(7); "2-Modifikohen te dhenat e futura"

154 PRINT TAB(7); "3-Kryhet analiza e regresit"

156 PRINT TAB(7); "4-interpolimi"

157 PRINT TAB(7); "5-Quit"

158 INPUT "Opsioni"; ip

160 IF ip < 1 OR ip > 5 THEN 200

170 IF ip = 1 THEN GOSUB 230

180 IF ip = 2 THEN GOSUB 360

190 IF ip = 3 THEN GOSUB 430

200 IF ip = 5 THEN GOTO 1390

205 IF ip = 4 THEN GOSUB 1300

210 GOTO 140

220 PRINT

230 REM Subroutine qe liston te dhenat

240 PRINT "Lista e te dhenave"

250 PRINT " X", " Y", " sigma"

260 ic = 1

270 FOR i = 1 TO n

280 IF i <> ic * 50 THEN 310

290 ic = ic + 1

300 INPUT "Shtyp enter per te vazhduar"; Y$

310 PRINT x(i), Y(i), sig(i)

320 NEXT i

330 RETURN

Page 71: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

69

340 REM **************

350 REM Subroutine ku modifikohen te dhenat

360 INPUT "Fut numrin e data point qe do modifikohet"; id

370 PRINT "Vlera e re per X ,Y,sigma ne piken "; id

380 INPUT x(id), Y(id), sig(i)

390 INPUT "A keni pike tjeter per te modifikuar(p/j)"; Y$

400 IF Y$ = "p" THEN 360

410 RETURN

420 REM **************

430 REM Subroutine e Regresionit

440 sx = 0

441 s = 0

442 sy = 0

444 sxx = 0

446 syy = 0

448 sxy = 0

450 FOR i = 1 TO n

455 s = s + 1 / sig(i) ^ 2

460 sx = sx + x(i) / (sig(i) ^ 2)

470 sy = sy + Y(i) / (sig(i) ^ 2)

480 sxx = sxx + x(i) ^ 2 / (sig(i) ^ 2)

490 syy = syy + Y(i) ^ 2 / (sig(i) ^ 2)

500 sxy = sxy + x(i) * Y(i) / (sig(i) ^ 2)

510 NEXT i

515 d = s * sxx - sx ^ 2

520 A = (sy * sxx - sx * sxy) / d

530 B = (s * sxy - sx * sy) / d

540 siga = SQR(sxx / d)

550 sigb = SQR(s / d)

560 ccab = -sx / SQR(s * sxx)

570 cc = (sxy - sx * sy / n) / SQR((sxx - (sx ^ 2) / n) * (syy - (sy ^ 2) / n))

580 cd = cc ^ 2

590 REM ****************

600 REM Subroutine e printimit te rezultatit

610 PRINT "Ekuacioni i Regresit"

620 PRINT "Y="; A; "+"; B; "X"

630 PRINT "Devijimi standart i a dhe b"; "Sigma a="; siga, "Sigma b="; sigb

635 PRINT "Koeficienti i korelacionit="; cc

640 PRINT "Vlera reale dhe ajo e regresit"

650 PRINT "X", "Y", "Y i llogaritur", "Gabimi"

660 ic = 1

670 FOR i = 1 TO n

680 IF i <> ic * 50 THEN 710

690 INPUT "Shtyp enter per te vazhduar"; Y$

700 ic = ic + 1

710 ey = A + B * x(i)

720 PRINT x(i), Y(i), ey, Y(i) - ey

730 NEXT i

750 INPUT "Shtyp nje tasto per te vazhduar"; Y$

Page 72: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

70

760 RETURN

770 PRINT

1300 REM ****************

1310 REM subrutine per te interpeluar nga formula e regresit

1320 PRINT "Interpolimi: (per te ndaluar programin fut x=0)"

1330 PRINT "x=";

1340 INPUT x

1349 REM Rifillon ose perfundon programin

1350 IF x = 0 THEN 1390

1360 PRINT "y="; A + B * x

1370 PRINT

1380 GOTO 1330

1384 PRINT TAB(7); "fundi i programit"

1386 RETURN

1390 END

Shënim

Edhe rastet kur varësia midis variablave të matura x dhe y pritet të jetë në formën :

y = a·xb (3.11)

mund të sillet në regresin linear. Duke kryer logaritmin në barazimin (3.11), gjemë:

ln (y) = ln (a)+ b· ln (x) (3.12)

Duke shënuar : ln (y) = y1 , ln (a) = a1 dhe ln (x) = x1 , marrim varësinë lineare:

y1 = a1 + b · x1 (3.13)

Duke zbatuar metodën e regresit linear për këtë varësi , gjemë koeficientët a1 dhe b si edhe

devijimet standarte për ta. Koeficienti a dhe devijimi standart i tij do të jenë :

a e ea a

a1 1

1 dhe a (3.14)

Ushtrime

1. Për të provuar saktësinë e llogaritjeve të koeficientëve të regresit linear, merrni një varësi të

njohur psh y = 4·x + 11 dhe futni disa vlera çfardo për x , ndërsa për y merrni vlera të afërta

me ato që jep kjo varësi . Krahasoni vlerat e koficientëve a dhe b që jep programi me vlerat e

tyre 4 dhe 11.

2. Merrni një varësi fuqie të njohur , psh y = 3· x2 . Silleni atë në një vrësi lineare siç tregohet

në shënimin e mësipërm. Modifikoni programin , në mënyrë që në rezultat të dalin vlerat e

koficientëve a dhe b (3 dhe 2) dhe devijimet standarte të tyre.

3.4 Metoda e përgjithëshme e katrorëve më të vegjël

Regresi linear është një rast i vecantë i përqasjes (fitting) së të dhënave tek një model.

Modeli në këtë rast është një mpolinom i gradës 1 ( y = a · x + b ) . Një përgjithësim i këtij

rasti do të ishte një model që është kombinim linear i M funksioneve të çfardoshme të x . P.sh.

Page 73: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

71

, funksionet mund të jenë: 1, x , x2

, x3 , .... x

M-1 . Atëhere, modeli është një kombinim linear i

këtyre funsoneve , pra një polinom i gradës M-1 :

y = a1 + a2 x + a3 x2 + ... + aM x

M-1 (4.1)

Por funksionet e modelit linear mund të jenë të çfardoshëm. Psh, nëse si funksione

marrim ato trigonometrike atëhere kombinimi linear i tyre do të ishte një seri harmonike.

Në përgjithësi funksionet e modelit do ti shënojmë Xk (x) dhe forma e përgjithëshme e një

modeli linear do të ishte:

y(x) = a X xkk

M

k1

( ) (4.2)

ku X1 (x) , X 2 (x) ...XM (x) janë funksione të njohur që quhen funksione të bazës. Theksojmë

se këto funksione mund të mos jenë linear ndaj variablit x . Këtu termi linear përdoret për

varësinë e modelit nga parametrat e tij a1 , a2 ,... aM .

Duke përgjithësuar metodën e katrorëve më të vegjël për të gjetur vlerat e parametrave

ne do të kërkojmë minimizimin e :

2 1

21

2

y a X xi k k ik

M

ii

N( )

(4.3)

ku i është devijimi standart në matjen e i -të , i cili konsiderohet i njohur . Nëse gabimet e

çdo mtjeje janë të panjohura mundt të merren konstante të njëjta , psh i = 1. Nga derivimi i 2 në lidhje me paramerat ak merret një sistem M ekuacionesh algjebrikë me M të panjohura

që quhet sistemi i ekuacioneve normalë. Zgjidhja e këtij sistemi bëhet me një nga ato metodat

që kemi shqyrtuar në kapitullin e dytë.

Shënojmë me  matricën komponentet e të cilës janë ndërtuar nga M funksionet e

bazës të vlerësuar në në N pikat e matjeve xi

AX x

X x X x X x

X x X x X x

X x X x X x

ij

j i

i

M

M

N

N

N

N

M N

N

( )

( ) ( ) ( )

( ) ( ) ( )

( ) ( ) ( )

1 1

1

2 1

1

1

1

1 2

2

2 2

2

2

2

1 2

1

.....

.....

............................................

.....

(4.4)

Kjo quhet edhe matrica e sistemit ose “design” . vërrejmë se kjo matricë ka më shumë rreshta

se sa shtylla (N M) meqënëse duhet të ketë më shumë matje se sa numri i parametrave të

panjohur të modelit . Nëse ka më pak numër matjesh se sa numrii i parametrave , problemi

nuk është i përcaktuar (underdetermined).

Përcaktojmë dhithashtu vektorin b , elementet e të cilit janë:

bi = yi / i (4.5)

i cili ka gjatësinë N (vektor rresht me N elemente) dhe vektorin a meM elemente :

a (a1 , a2 , a3 ... aM )

Duke barazuar me zero derivatet e 2 në lidhje me ak merret sistemi i ekuacioneve normalë:

Page 74: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

72

1

02

11i

i j j ij

M

i

N

k iy a X x X x( ) ( ) (4.6)

Duke shënuar me ^ ^ ^

A AT

, matricën kuadratike (me përmasa M M) që ka për elemente:

kj

j i k i

ii

N X x X x( ) ( )2

1

(4.7)

dhe me =ÂT · b vektorin me gjatësi M , që ka për elemente:

ki k i

ii

N y X x( )2

1

(4.8)

sistemi i ekuacioneve normalë , shkruhet :

kj jj

M

ka1

ose shkurt: ^

a b (4.9)

Zgjidhja e ekuacionit (4.9) në trajtë matricore do të shkruhej:

a^ 1

(4.10)

ku ^ 1

është matrica e kundërt e matricës , elementet e të cilit janë:

Cjk =^ 1

jk

(4.11)

Zgjidhja e ekuacioneve normalë me metodat e njohura jep vlerat eparametrave të panjohur:

a1 , a2 , ... aM , por jo saktësinë e llogaritjes së tyre. Për gjetjen e devijimeve kuadratike të

parametrave ka një rrugë mjaft të thjeshtë.

Le ta zemë se zgjidhja e sistemit të ekuacioneve (4.9) , është:

aj = ^ ( )

jk

kk

M

jki k i

ii

N

k

M

Cy X x

1

12

11

(4.12)

Vlerësimi për gabimet e përcaktimit të aj gjendet në bazë të formulës (3.7):

2 2

2

1

( )aa

yj i

j

ii

N

(4.13)

Duke derivuar në barazimet (4.12), gjejmë( vini re që jk , pra edhe jk-1

nuk varen

nga yi ):

a

y

C X xj

i

jk k i

ik

M ( )2

1

(4.14)

Duke zëvëndënsuar (4.14) në (4.13), gjejmë:

2 2

12

12

1 12

11

( )( ) ( ) ( ) ( )

aC X x C X x

C CX x X x

j ii

Njk k i

il

Mjl l i

ik

M

jk jll

Mk i l i

ii

N

k

M

(4.15)

Por shuma e fundit është kl klk i l i

ii

N

CX x X x1

21

( ) ( ) , prandaj (4.15) shkruhet:

2 1

11

( )a C C C Cj jk jl kll

M

k

M

jj (4.16)

Page 75: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

73

Pra elementet e diagonales së matricës [C] janë variancat (katrorët e devijimeve standarte) e

parametrave të modelit. Nuk është e vështirë të kuptohet që elementët jashtë diagonales së

matricës Cjk janë kovariancat midis parametrave aj me ak . Meqënëse në zgjidhjen e

ekuacioneve normalë na duhen jo vetëm të panjohurat aj (j=1,2...M) por edhe elementët e

matricës së kundërt të matricës [ ] duhet të përdorim ndonjë metodë të zgjidhjes së sistemit të

ekuacioneve që kryen edhe invertimin e matricës. Në programin që jepet më poshtë është

përdorur metoda e Gaus-Jordan-it.

10 REM Metoda e katroreve me te vegjel ne rastin kur modeli eshte nje bashkesi

20 REM prej m-funksionesh psh funksionet 1,x,x^2,x^3...

30 INPUT "Numri i matjeve"; n

40 INPUT "Numri i funksioneve te modelit"; m

50 DIM beta(m), alfa(m, m), c(m, m), x(n), y(n), sig(n)

60 DEF fnmodel (k, x) = x ^ (k - 1)

70 REM *********Cikli i futjes te matjeve*************

80 PRINT "Fut te dhenat ne cifte: x,y,gabimi"

90 FOR i = 1 TO n

100 PRINT "Fut x,y,sigma per piken "; i

110 INPUT x(i), y(i), sig(i)

120 NEXT i

130 REM *******Formimi i ekucioneve normale*******

140 FOR k = 1 TO m

150 FOR j = 1 TO m

170 FOR i = 1 TO n

180 alfa(k, j) = alfa(k, j) + fnmodel(j, x(i)) * fnmodel(k, x(i)) / sig(i) ^ 2

190 NEXT i

200 NEXT j

210 FOR i = 1 TO n

220 beta(k) = beta(k) + y(i) * fnmodel(k, x(i)) / sig(i) ^ 2

230 NEXT i

240 NEXT k

250 REM ******Zgjidhja e ekuacioneve me metoden e Gaus-Jordanit****

310 REM Programi zgjidh sistemin e n ekuacioneve lineare me n te panjohura me

320 REM metoden Gauss-Jordan

330 n=m

340 DIM a(n, n), b(n, 1), d%(n)

341 icol1=n+1

342 jroë = n

343 jcol = 1

345 iroë = n

347 icol = n

348 rem DIM e1(iroë, icol1)

350 FOR i = 1 TO n

360 FOR j = 1 TO n

370 a(i, j)=alfa(i,j)

380 NEXT j

390 b(i, 1)=beta(i)

395 d%(i) = 1

400 NEXT i

Page 76: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

74

405 inv1 = 2

410 gosub 1000

415 rem

420 gosub 1500

430 REM rezultati eshte ne kolonen e fundit te e1

440 PRINT

450 PRINT "Rezultatet per koeficientet e modelit dhe"

455 print "devijimet standarte te tyre, jane:"

460 REM Se pari kontrollohet nese ka zgjidhje

470 st% = 0

480 FOR i = 1 TO iroë

490 IF d%(i) <> 0 THEN GOTO 570

500 st% = 1

510 FOR j = iroë + 1 TO icol

520 IF e1(i, j) = 0 THEN GOTO 550

530 st% = 2

540 GOTO 610

550 NEXT j

560 REM exit normal dmth ekuacione me shume zgjidhje

570 NEXT i

580 IF st% = 0 THEN GOTO 630

590 PRINT "ky sistem ekuacionesh ka infinitet zgjidhje"

600 GOTO 660

610 PRINT "ky sistem ekuacionesh eshte jo konsistent,nuk ka zgjidhje"

620 GOTO 660

630 FOR i = 1 TO n

640 PRINT "a("; i; ")="; e1(i, n + 1);"+-";stdev(i)

650 NEXT i

660 rem STOP

670 goto 1750

1000 REM kthimi i matrices a ne trekendore te siperme,rezultati ne E

1010 REM iroë = n

1020 REM icol = n

1030 IF inv1 = 1 THEN icol = 2 * icol

1040 IF inv1 <> 1 THEN icol = icol + 1

1050 DIM e1(iroë, icol),stdev(n)

1060 FOR i = 1 TO iroë

1070 FOR j = 1 TO iroë

1080 e1(i, j) = a(i, j)

1085 rem PRINT e1(i, j)

1090 IF inv1 <> 1 GOTO 1130

1100 REM keto rreshta perdoren nese matrica ka qene e invertuar

1110 IF i = j THEN e1(i, j + iroë) = 1

1120 GOTO 1130

1130 NEXT j

1140 IF inv1 <> 1 THEN e1(i, iroë + 1) = b(i, 1)

1145 rem PRINT e1(i, iroë + 1)

1150 NEXT i

Page 77: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

75

1160 det1 = 1

1170 FOR i = 1 TO iroë

1180 IF i <> iroë THEN GOTO 1220

1190 IF e1(i, i) <> 0 GOTO 1320

1200 dt = 0

1210 GOTO 1240

1220 IF e1(i, i) <> 0 GOTO 1270

1230 GOto 1330

1240 IF dt = 0 THEN det1 = 0

1250 IF dt = 0 THEN d%(i) = 0

1260 IF dt = 0 THEN 1320

1270 FOR j = i + 1 TO iroë

1280 xm = e1(j, i) / e1(i, i)

1290 FOR k =i TO icol

1300 e1(j, k) = e1(j, k) - xm * e1(i, k)

1310 NEXT k

1315 NEXT j

1320 NEXT i

1325 goto 1460

1330 REM detektimi i determinantit 0

1340 REM pra, per te siguruar qe elementet e diagonales te mos jene 0

1350 REM gjate triangulizimit te siperm

1360 dt = 1

1370 FOR j = i + 1 TO iroë

1380 IF e1(j, i) = 0 GOTO 1430

1390 FOR k = 1 TO icol

1400 e1(i, k) = e1(i, k) + e1(j, k)

1410 NEXT k

1420 rem RETURN

1430 NEXT j

1450 dt = 0

1460 rem end

1470 return

1500 REM subrutina e triangulizimit te poshtem,input eshte matrica e1(iroë,icol)

1510 FOR ij = 1 TO iroë

1520 IF ij = iroë THEN GOTO 1600

1530 ik = iroë - ij + 1

1540 FOR i = 1 TO ik - 1

1550 IF inv1 = 1 THEN GOTO 1570

1560 IF d%(ik) = 0 THEN GOTO 1600

1570 xm = e1(i, ik) / e1(ik, ik)

1580 FOR j = i + 1 TO icol

1590 e1(i, j) = e1(i, j) - xm * e1(ik, j)

1595 NEXT j

1597 NEXT i

1600 NEXT ij

1610 IF det1 = 0 THEN GOTO 1700

1620 REM krijon identitetin duke shumezuar cdo resht me te kundertin e

Page 78: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

76

1630 REM e elementit ne diagonale te matrices se perpunuar

1640 FOR i = 1 TO iroë

1650 div = e1(i, i)

1655 stdev(i)=sqr(1/e1(i,i))

1660 FOR j = 1 TO icol

1670 e1(i, j) = e1(i, j) / div

1680 NEXT j

1690 NEXT i

1700 return

1750 end

Ushtrime

1. Për të verifikuar saktësinë e llogaritjeve të parametrave të modelit, merni një model me

parametra të njohur, Psh y = 4 + 5*x + 6*x2 + 7*x

3 . Kur të futni të dhënat e matjeve në

program, merrni vlerat të afërta me ato që jep ky funksion yi = y(xi ) . Krahasoni vlerat e

parametrave që nxjerr programi me vlerat e dhëna (4,5,6,7).

2. Merrni një seri matjesh (xi , yi ) dhe perpiquni te gjeni modelin që përqas më mirë matjet

tuaja. Shqyrtoni disa raste modelesh y(x)= a X xkk

M

k1

( ) psh:

a) Xk (x )= sin(k·x) ose cos(k·x)

b) Xk (x )=xk-1

c) Xk (x )=exp(k·x)

d) Xk (x )=1/xk

etj.

3.5 Regresi linear i shumëfishtë

Metoda e regresit linear mund të shtrihet edhe në rastin më të përgjithëshëm kur nuk

kemi varësinë e një variabli nga një variavël i vetëm , por kur kemi varësinë e një variabli nga

disa variabla që maten në mënyrë të pavarur nga njeri tjetri:

y = a0 + a1 · x1 + a2 · x2 + .... + am ·xm (4.1)

Konstantet e modelit: a0 , a1 , a2 ... am përcaktohen nga metoda e regresit linear në mënyrë

analoge me regresin e njëfishtë. Pra, nëse kemi N matje të vlerave të variablave:

yi , x1i , x2

i ... xm

i (i=1,2....N) , atëhere

2 0

1

21

2

y a xi j j

i

j

M

ii

N

(5.1)

ku x0i =1 .

Duke barazuar me zero derivatet e 2 në lidhje me aj , gjejmë sistemin e ekuacioneve:

( )y a x xi j j

i

j

M

j

i

ii

N0

1

21

0 (5.2)

Page 79: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

77

Duke shënuar :

Sx x

Sy x

x x

j

i

j

i

ii

N

y x

i j

i

ii

N

j j j, ,21

21

dhe (5.3)

sistemi i ekuacioneve algjebrikë (5.2) sillet në sistemin:

a S Sj x xj

M

y xj j j, ,0

1

(5.4)

zgjidhja e të cilit kryhet me metodat e njohura. Në rezultat merren vlerat e parametrave të

modelit. Programi i mëposhtëm kryen llogaritjen e parametrave të një modeli deri në 8

variabla të pavarur ( mund të shtohet ky numër duke zmadhuar përmasat e vektorëve dhe

matricës).Në program llogaritet edhe parashikimi i vlerës së variablit të varur y për një seri

vlerash të variablave të pavarur xj . ka edhe një llogaritje të koeficienti të korealacionit dhe të

devijimit standart.

10 PRINT "REGRESI LNEAR I SHUMEFISHTE"

20 PRINT

29 REM -VENDOSEN KUFIJTE E DIMENSIONEVE X(N+1),S(N+1),T(N+1),A(N+1,N+2)

30 DIM X(9), S(9), T(9), A(9, 10)

40 PRINT "NUMRI I PIKAVE TE MATJEVE";

50 INPUT N

60 PRINT "NUMRI I VARIABLAVE TE PAVARUR";

70 INPUT V

80 X(1) = 1

90 FOR I = 1 TO N

100 PRINT "PIKA"; I

110 FOR J = 1 TO V

119 REM -FUTNI VARAIBLAT E PAVARUR PER CDO PIKE

120 PRINT "VARIABLI"; J;

130 INPUT X(J + 1)

140 NEXT J

149 REM -FUTNI VARIABLIN E VARUR PER CDO PIKE

150 PRINT " VARIABLI I VARUR";

160 INPUT X(V + 2)

169 REM -MBUSHET MATRICA QE DO PERDORET PER ZGJIDHJEN E SISTEMIT TE

EKUACIONEVE

170 FOR K = 1 TO V + 1

180 FOR L = 1 TO V + 2

190 A(K, L) = A(K, L) + X(K) * X(L)

200 S(K) = A(K, V + 2)

210 NEXT L

220 NEXT K

230 S(V + 2) = S(V + 2) + X(V + 2) ^ 2

240 NEXT I

248 REM RRESHTAT 250 DERI 500 KRYEJNE ZGJIDHJEN E SISTEMIT TE

EKUACIONEVE ALGJEBRIKE LINEARE

250 FOR I = 2 TO V + 1

260 T(I) = A(1, I)

270 NEXT I

Page 80: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

78

280 FOR I = 1 TO V + 1

290 J = I

300 IF A(J, I) <> 0 THEN 340

305 J = J + 1

310 IF J <= V + 1 THEN 300

320 PRINT "NUK KA ZGJIDHJE TE VETME"

330 GOTO 810

340 FOR K = 1 TO V + 2

350 B = A(I, K)

360 A(I, K) = A(J, K)

370 A(J, K) = B

380 NEXT K

390 Z = 1 / A(I, I)

400 FOR K = 1 TO V + 2

410 A(I, K) = Z * A(I, K)

420 NEXT K

430 FOR J = 1 TO V + 1

440 IF J = I THEN 490

450 Z = -A(J, I)

460 FOR K = 1 TO V + 2

470 A(J, K) = A(J, K) + Z * A(I, K)

480 NEXT K

490 NEXT J

500 NEXT I

510 PRINT

520 PRINT "KOEFICIENTET E REGRESIT:"

525 PRINT A(1, V + 2)

530 FOR I = 2 TO V + 1

540 PRINT "VARIABLI("; I - 1; "):"; A(I, V + 2)

550 NEXT I

560 P = 0

570 FOR I = 2 TO V + 1

580 P = P + A(I, V + 2) * (S(I) - T(I) * S(1) / N)

590 NEXT I

600 R = S(V + 2) - (S(1) ^ 2) / N

610 Z = R - P

620 L = N - V - 1

640 PRINT

650 I = P / R

670 PRINT "KOEFICIENTI I KORRELACIONIT TE SHUMFISHTE ="; SQR(I)

680 PRINT "DEVIJIMI STANDART "; SQR(ABS(Z / L))

690 PRINT

699 REM - LLOGARITET VARIABLI I VARUR PER VLERA TE VARIABLAVE TE

PAVARUR QE FUTEN ME POSHTE

700 PRINT "INTERPOLIMI : (SHTYP 0 PER TA PERFUNDUAR PROGRAMIN)"

710 P = A(1, V + 2)

720 FOR J = 1 TO V

730 PRINT "VARIABLI"; J;

740 INPUT X

Page 81: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

79

749 REM - TEST PER PERFUNDIMIN E PROGRAMIT

750 IF X = 0 THEN 810

760 P = P + A(J + 1, V + 2) * X

770 NEXT J

780 PRINT "DEPENDENT VARIABLE="; P

790 PRINT

800 GOTO 710

810 END

Ushtrime

1.Në tabelën e mëposhtëme jepen të dhënat e matjeve të kryera mbi 8 fëmijë. Në rreshtin e

parë është mosha e tyre, në rreshtin e dytë është gjatësia e tyre dhe në rreshtin e tretë është

pesha e tyre. Konsideroni variabel të varur peshën e fëmijëve dhe dy të tjerat si varibla të

pavarur

Mosha 8 9 6 10 8 9 9 7

Gjatesia 48 49 44 59 55 51 55 50

Pesha 59 55 50 80 61 75 67 58

Duke kryer regresin e shumëfishtë gjeni vlerat e parametrave a0 , a1 , a2 .

Interpoloni vlerën e peshës kur dy variablat e varura janë 7 (mosha) dhe 51 (gjatësia)

2. Merrni një seri matjesh për një variabël të varur kur numri i variblave të pavarur është 5 . I

merrni në fillim vlerat e parametrave të njohura. Mandej llogaritni vlerat që ka variabli i varur

dhe futini këto si të dhëna për regresin e shumëfishtë. Krahasoni vlerat e parametrave që jep

regresi i shumëfishtë me ato që keni zgjedhur vetë.

3. 6 Modelet jolineare

Në shumë raste në praktikë të dhënat përqasen më mirë te një model jolinear, pra varësia e

variablit të varur nga variablat e pavarura është jo lineare. Pra modeli nuk varet linearisht nga

parametrat e modelit.

Le të jenë ak (k=1,2...M) parametrat e modelit, që hyjnë në një varësi jolineare të variablit

të varur y nga varaiblat e varura xk :

y=y(a1 , a2 , ... am , x1 , x2 ,...xm ) (6.1)

Për gjetjen e paramertave të modelit, kërkojmë përsëri minimizimin e 2 që është shuma e

katrorëve të devijimeve midis vlerave të matura të y dhe vlerave të y që jep modeli. Por tani

minimizimi kërkohet jo nëpërmjet barazimit me zero të derivateve siç bëhej në modelet

lineare, por kërkohet nëpërmjet një procedure iteracionesh. Pra u jepen parametrave fillimisht

vlera triviale dhe procedura e iteracioneve i përmirëson ato për sa kohë 2 i llogaritur në çdo

iteracion zvogëlohet në krahasim me iteracionin paraardhës. Procedura vazhdon derisa 2

ndalon zvogëlimin. 2 si funksion i vlearve të paramertrave :

a (a1 , a2 , ...am ) mund të përafrohet në formën kuadratike (duke u ndalur deri tek rendi i dytë

i përafrimit) në formën:

Page 82: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

80

2 (a) - d·a +½a· D

^

·a (6.2)

ku është vlera e 2 në minimumin e saj , pra vlera e saj kur modeli ka vlerat e sakta të

parametrave a (a1 , a2 , ...am ) ; d është një vektor me m përmasa (sa është numri i parametrave

të modelit) elementet e të cilit janë vlerat e derivateve të 2 në lidhje me sejcilin parametër ak

(2

ak

, k=1,2...m) në pikën ku 2 është minimum. ; D

^

- është një matricë me përmasa

m m , elementet e të cilës janë derivatet e rendit të dytë të 2 :

2 2

a aj k

, j,k=1,2,...m në pikën ku 2 është minimum. Në minumumin e

2 derivatet e

rendit të parë janë zero , pra d=0 dhe 2 =0 pra = - ½ amin· D

^

·amin . Duke shënuar

D^

·amin =b , atëhere D^

·a =b - 2

1 akk

m

ose shkurt

D^

·a =b - grad 2 (6.3)

Ky barazim tregon se përmirësimi i vlerave të parametrave a , të cilat të fillim zgjidhen apriori

bëhet kur në iteracionin e rradhës merret:

anext = acurrent - D^ 1

grad 2(acurrent) (6.5)

dhe ndryshimi i parametrave nga një iteracion në tjetrin a gjendet nga barazimi:

D^

· a = - grad 2(acurrent) (6.6)

Duke kryer derivatet e para dhe të dyta të 2

1

2

( )( ; )

aay y xi i

ii

N

në lidhje me ak :

2

21

2a

y y x y x

ak

i i

ii

Ni

k

k

( ; ) ( ; )a a dhe

2 2

2

2

1

21

a a

y x

a

y x

ay y x

y x

a ak l i

i

k

i

l

i ii

k li

N

kl

( ; ) ( ; )( ( ; ))

( ; )a aa

a ;

barazimi (6.6) shkruhet :

kl l kl

m

a1

(6.7)

Ky është një sistem ekuacionesh algjebrike që zgjidhet me metodat e njohura. Zgjidhja e këtij

sistemi jep shtesat e rradhës të parametrave al që i shtohen vlerave paraardhëse të

parametrave. Procedura e iteracioneve ndalohet kur ndryshimi i parametrave është i

papërfillshëm. Në praktikë elementët kl llogariten shpesh me formulat e thjeshtuara ku

neglizhohen derivatet e dyta të y(xi ; a):

2 2

21

21

a a

y x

a

y x

ak l i

i

k

i

li

N

kl

( ; ) ( ; )a a

Page 83: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

81

Kjo metodë e përmirësimit të zgjidhjes së parametrave të modelit varet shumë nga zgjedhja

fillestare e parametrave. Prandaj mirë është që parametrat fillestarë të mund të përcaktoheshin

me anë të ndonjë metode tjetër të saktë.

Page 84: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

KAPITULLI IV

INTEGRIMI I KUACIONEVE DIFERENCIALE

4.1 Ekuacione diferenciale me derivate tw zakonshwm

Problemet fizike qw sjellin nw ekuacione diferenciale me derivate tw zakonshwm janw

tw shumta dhe shumica e tyre janw ekucione qw nuk zgjidhen dot analitikisht. Prandaj

pwrdoren metoda numerike pwr integrimin e tyre. Nw literaturwn e sotme metodat numerike

tw zgjidhjes sw ekuacioneve diferenciale me derivate tw zakonshwm ose siç njihet me

shkurtimin ODE (Ordinary Differential Equations) janw tw shumta. Ne do tw trajtojmw kwtu

ato mw tw pwrdorwshmet.

Njw ekuacion diferencial çfardo i rendit tw parw mund tw shkruhet nw formwn:

dy

dxf x( ) (1.1)

ku f ( x ) wshtw njw funksion çfardo i njohur i variablit x. Gjithmonw , çdo ekuacion i gradws

n mund tw sillet nw njw sistem n-ekuacionesh diferenciale tw rendit tw parw. P.sh. ,

ekuacioni i gradws sw dytw:

d y

dxq x

dy

dxr x

2

2( ) ( ) (1.2)

ku q(x) dhe r(x) janw funksione tw njohura tw variablit x mund tw sillet nw sistemin e dy

ekuacioneve tw rendit tw parw:

dy

dxz x

dz

dxr x q x z x

( )

( ) ( ) ( )

(1.3)

ku funksioni i panjohur z(x ) wshtw njw variabwl i ndwrmjetwm dhe zgjidhja e sistemit tw

ekuacioneve (1.3) jep qoftw z(x) qoftw y(x). Nwse ekuacioni diferencial fillestar do ishte i

rendit n , atwhere sistemi i ekuacioneve diferenciale tw rendit tw parw ekuivalent me

ekuacionin fillestar do tw pwrmbante jo vetwm funksionin e panjohur y(x) por edhe n-1

funksione tw ndwrmjetwm tw panjohur.

Zakonisht, zgjedhja e variablave tw ndwrmjetwm bwhet nw mwnyrw qw derivati i njerit

varjabwl tw japi variablin tjetwr (siç wshtw bwrw tek sistemii 1.3) . Ka raste kur wshtw e

dobishme qw tw futet nw pwrcaktimin e varablave tw ndwrmjetwm ndonjw faktor ose fuqi e

varjablit fillestar . Kjo bwhet me qwllim qw tw zbutet sjellja singulare qw mund tw rezultojw

nag rritja e gabimeve tw rumbullakimit kur fuqitw ose faktorwt marrin vlera tw larta. Prandaj

wshtw mirw qw tw studiohet sjellja e variablave numerikisht dhe tw zgjidhen nw mwnyrw tw

tillwt qw tw varen nga vlerat e argumentit x nw mwnyrw sa mw tw butw.

Problemi i zgjidhjes sw njw ekuacioni diferencial (ODE) tw rendit n sillet nw zgjidhjen

numerike tw sistemit tw n ekuacioneve tw çiftuar ( qw lidhen me njeri tjetrin), i cili ka

formwn e pwrgjithwsme :

dy

dxf x y y yi

i n( , , , ... )1 2 (1.4)

ku i = 1,2,3.. n ; y1 , y2 ,....yn janw funksionet e panjohur (zakonisht y1 wshtw variabli i

panjohur origjinal dhe tw tjerwt janw variablat ndihmws) ; funksionet fi janw tw njohur.

Zgjidhja numerike e kwtij sistemi varet shumw nga forma e kushteve kufitare , tw cilat

janw kushte algjebrike tw vlerave qw marrin variablat yi . Nw pwrgjithwsi, kwto kushte

Page 85: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

kwnaqen nw pika diskrete tw specifikuara dhe nuk kwnaqen nw pikat midis kwtyre pikave.

Kushtet kufitare mund tw jenw tw thjeshta p.sh. jepet vlera e variablave tw ndryshwm nw

pika tw ndryshme (pra per vlera tw caktuara tw x) . Por mund tw jenw edhe tw komplikuara

si bashkwsi ekuacionesh algjebrike midis vlerave tw variablave nw pika tw caktuara.

Zakonisht wshtw natyra e kushteve kufitare qw pwrcakton edhe se cilwn metodw

numerike duhet tw pwrdorim pwr zgjidhjene e sistemit. Kushtet kufitare ndahen nw dy

kategori qw pwrcaktojnw edhe llojin e problemit:

a) Probleme me njw kusht kufitar: kur vlerate tw gjitha yi janw dhwnw nw ndonjw pikw qw

quhet dhe pika fillestare xs (start) dhe duhet tw gjenden vlerat e yi nw ndonjw pikw tjetwr

finale xf ose nw njw varg pikas diskrete xj (gjendet kwshtu funksioni i panjohur i tabeluar).

b) Probleme me dy kushte kufitare : kur kushtet kufitare janw specifikuar nw mw shumw se

njw pikw , zakonisht nw dy pika xs dhe xf .

Ne do tw pwrqwndrohemi nw fillim nw problemet e llojit tw parw.

Ideja kryesore pwr zgjidhjen e problemeve me njw kusht kufitar wshtw qw nw ekuacionet

(1.4) dy dhe dx tw merren tw fundwm shumw tw vegjwl y dhe x . atwhere ekuacionet

(1.4) sillen nw formula algjebrike pwr ndryshimet e vlerave tw funksioneve yi kur argumenti x

ndryshon me njw hap tw vogwl x . Duke e bwrw hapin shumw tw vogwl mund tw arrihet

njw pwrafrim i mirw dhe duke zbatuar vazhdimisht kwtw procedurw gjenden vlerat e

funksioneve tw panjohur nw çfardo pike. Kjo procedurw e thjeshtw njihet si metoda e Ejlerit

(ose metoda e diferencave tw fundme) pwr zgjidhjen e sistemit tw ekuacioneve diferenciale

(ODE) . Zakonisht, nuk rekomandohet tw pwrdoret kjo metodw e thjeshtw por metoda tw

tjera. Njw metodw e tillw qw pwrdoret shumw wshtw ajo e mwposhtwme.

4.2 Metoda Runge-Kutta

Le ta zemw se kemi njw ekuacion (ODE) tw gradws sw parw, i cili ne formw tw

pwrgjithwshme do shkruhej:

dy/dx = f(x , y) , (2.1)

ku f wshtw njw funksion i njohur i variablit tw pavarur x dhe variablit tw varur y.

Formula e metodws sw Ejlerit qw u pwrmennd mw lart do tw ishtw:

yn+1 = yn +h·f(xn , yn) (2.2)

Me kwtw formulw do tw gjendej zgjidhja nw pikwn xn+1 nwse dihej zgjidja nw pikwn xn nwse

hapi h nga xn nw xn+1 wshtw shumw i vogwl. Pra, formula e Ejlerit pwrdor informacion mbi

funksionin vetwm nw pikwn fillestare 1 tw intervalit h dhe gjen vlerwn vlerwn e tij nw pikw

2 tw kwtij intervali. Kjo dmth qw gabimi qw bwhet nw çdo hap wshtw e rendit O (h2) sepse

nw pwrafrimin (2.2) kemi neglizhuar termat e rendit tw dytw e lart tw vogwlsisw , po tw

konsiderojmw formulwn (2.2) si zbwrthim tw funksionit y rreth pikws sw radhws xn .

Pwr tw marw pwrafrime mw tw sakta ne duhet tw pwrdorim informacion jo vetwm pwr

fillimin e intervalit h , por edhe nw pika brenda intervalit sic wshtw pika e mesit tw kwtij

intervali. Pikwrisht, nw metodwn Runge-Kuta tw rendit tw dytw pwrdoren vlerat e x dhe y nw

fillim dhe nw mes tw intervalit h pwr tw gjetur shtesat sipas relacioneve tw mwposhtwme:

k1 = h·f (xn , yn )

k2 = h·f ( xn + ½ h , yn +½ k1 )

yn+1 = yn + k2 + O(h3) (2.3)

Ku duket se vlera e shtesws sw parw k1 nw gjysmwn e hapit (½ k1 ) pwrdoret pwr tw

gjetur mw saktw shteswn k2 pas njw hapi tw plotw (Vini re qw vlera e argumentave tw

Page 86: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

funksionit f merren nw gjysmwn e hapit) . Nw kwtw mwnyrw arrihet njw pwrafrim i njw

rendi mw tw lartw ( termat qw neglizhohen janw tw rendit tw tretw tw vogwlsisw O(h3)).

Kjo metodw quhet ndryshe edhe metoda e pikws sw mesit.

Por, metoda Runge-Kuta vazhdon edhe me pwrafrime tw rendeve mw tw larta. Psh, nw

formulat e mwposhtwme llogariten shtesat me idenw e shfrytwzimit dy herw tw pikws sw

mesit tw intervalit dhe arrihet nw metodwn Runge-Kutta tw rendit tw IV e cila pwrdoret mw

shpesh:

k1 = h·f (xn , yn )

k2 = h·f ( xn + ½ h , yn +½ k1 )

k3 = h·f ( xn + ½ h , yn +½ k2 )

k4 = h·f ( xn + h , yn + k3 )

yn+1 = yn +k1 /6 + k2 /3 + k3 /3 + k4 /6 + O(h5) (2.4)

Shembull

Nw kwtw shembull, po marrim njw ekucion diferencial tw zakonwshwm tw rendit tw dytw:

d y

dx

dy

dxx

2

22 4 (2.5)

i cili ka zgjidhje analitike dhe njw zgjidhje e veçantw e tij ka formwn : y = x2 + x (po ta

zwvwndwsoni kwtw zgjidhje nw ekuacion , atwhere ekuacioni kwnaqet). Zgjedhim njw

ekuacion tw tillw pwr tw provuar algoritmin qw do pwrdorim pwr zgjidhje numerike. Duke

krahasuar rezultatin numerik me atw analitik mund tw vlerwsohet saktwsia e zgjidhjes, ose

duhke zvogwluar hapin nw metodwn Runge-Kutta mund tw rritim saktwsinw dhe tw ndalemi

nw kwtw zvogwlim tw hapit deri sa saktwsia tw jetw e kwnaqwshme.

Ekaucioni (2.5) , sillet nw dy ekuacione tw rendit tw parw, duke futur variablat e

ndwrmjetwm , pra shwnojmw y1 = y dhe y2 = dy1/dx dhe kemi :

dy

dxy

dy

dxy x

1

2

2

22 4

(2.6)

Kushtet kufitare do ti zgjedhim nw pikwn x = 0 , ku

y1 = 0 , y2 = 1 , dy1 / dx = 1, dy2 / dx = 2 (2.7)

Nw programin e mwposhtwm kryhen llogaritjet numerike nw bazw tw formulave tw metodws

Runge-Kutta tw rendit tw katwrt (2.4) . Ekuacionet konkrete (2.6) janw futur nw subrutinwn

ku llogariten derivatet e çdo variabli (nw rastin tonw y1 dhe y2 ) . Por probrami mund tw

zbatohet edhe pwr çdo sistem tjetwr ekuacionesh diferencialw me derivate tw zakonwshwm

tw renditw tw parw.

Hapi i integrimit futet nga tastjera ndwrsa vlerat e reja tw variablave ruhen nw vektorin

yout().

Varianti Basic i programit :

10 REM PROGRAMI RK4 zgjidh nje sistem n-ekuacionesh te rendit te I

20 REM duke perdorur metoden Runge-Kutta te rendit te IV

30 INPUT "Sa eshte numri i ekuacioneve"; n

40 DIM y(n), dydx(n), yout(n), yt(n), dyt(n), dym(n), dydx0(n), y0(n)

50 OPEN "rk4new.dat" FOR OUTPUT AS #1

Page 87: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

60 INPUT "Fut vleren fillestare te x"; x

70 INPUT "Sa eshte hapi h"; h

80 FOR i = 1 TO n

90 PRINT "Sa eshte vlera fillestare e y te"; i; "-te ?"

100 INPUT y0(i)

110 PRINT "Sa eshte vlera fillestare e derivatit te y te"; i; "-te ?"

120 INPUT dydx0(i)

130 NEXT i

140 HH = h * .5

150 H6 = h / 6!

160 xh = x + HH

170 FOR i = 1 TO n

180 yt(i) = y0(i) + HH * dydx0(i)

185 y(i) = yt(i)

190 NEXT i

200 GOSUB 500

210 FOR i = 1 TO n

215 dyt(i) = dydx(i)

220 yt(i) = y0(i) + HH * dyt(i)

225 y(i) = yt(i)

230 NEXT i

240 GOSUB 500

250 FOR i = 1 TO n

260 dym(i) = dydx(i)

270 yt(i) = y0(i) + h * dym(i)

280 dym(i) = dyt(i) + dym(i)

285 y(i) = yt(i)

300 NEXT i

305 xh = x + h

310 GOSUB 500

320 FOR i = 1 TO n

330 dyt(i) = dydx(i)

340 yout(i) = y0(i)+H6*(dydx0(i)+dyt(i)+2.*dym(i))

350 rem PRINT xh, yout(i)

360 y0(i) = yout(i)

365 y(i) = yout(i)

370 NEXT i

372 print #1,xh,yout(1)

375 GOSUB 500

376 FOR i = 1 TO n

377 dydx0(i) = dydx(i)

378 NEXT i

380 x = x + h

390 IF x < 5 THEN GOTO 160

400 GOTO 550

500 REM subrutina e gjetjes se derivateve*********

510 dydx(1) = y(2)

520 dydx(2) = 2 * y(2) - 4 * xh

530 RETURN

Page 88: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

550 END

Ndwrsa mw poshtw jepet njw subrutinw nw FORTRAN pwr njw sistem ekuacionesh

diferencialw tw zakonshwm çfardo. Pwr ta kompletuar programin duhet shkruar edhe

subrutina DERIVS , ku sipas ekuacioneve konkrete duhen shkruar derivatet e çdo variabli.

SUBROUTINE RK4(Y,DYDX,N,X,H,YOUT,DERIVS)

PARAMETER (NMAX=10)

DIMENSION Y(N),DYDX(N),YOUT(N),YT(NMAX),DYT(NMAX),DYM(NMAX)

HH=H*0.5

H6=H/6.

XH=X+HH

DO 11 I=1,N

YT(I)=Y(I)+HH*DYDX(I)

11 CONTINUE

CALL DERIVS(XH,YT,DYT)

DO 12 I=1,N

YT(I)=Y(I)+HH*DYT(I)

12 CONTINUE

CALL DERIVS(XH,YT,DYM)

DO 13 I=1,N

YT(I)=Y(I)+H*DYM(I)

DYM(I)=DYT(I)+DYM(I)

13 CONTINUE

CALL DERIVS(X+H,YT,DYT)

DO 14 I=1,N

YOUT(I)=Y(I)+H6*(DYDX(I)+DYT(I)+2.*DYM(I))

14 CONTINUE

RETURN

END

4.3 Kontrolli i hapit nw metodwn Runge-Kutta

Mw lart pamw se si zbatohet metoda Runge-Kutta me hap h tw pandryshueshwm, i cili

sa mw i vogwl tw jetw aq mw i saktw wshtw rezultati. Por shpesh madhwsia e hapit duhet

ndryshuar nw varwsi tw sjelljes sw funksioneve pwr tw marrw rezultatin me sa mw pak

pwrpjekje kompjuterike. Nw vendet ku avancimi me hapa tw vegjwl nuk ndikon nw

ndryshime tw dukwshme tw funksionit mund tw merret hap mw i madh dhe kur hyjmw nw

zona ku funksioni ndryshon shpejt duhen marrw hapa mw tw vegjwl. Pra duhet mbajtur nwn

kontroll hapi h duke u bazuar nw vlerwsimin e gabimeve pwr çdo hap tw zgjedhur

Ky kontroll nw metodwn Runge-Kutta tw rendit tw 4 realizohet me teknikwn e hapit tw

dyfishtw , ku çdo hap ndwrmerret dy herw : njw herw si hap i plotw dhe njw herw si dy

gjysma hapash .

Le tw shwnojmw zgjidhjen e saktw pwr njw variabwl y , gjatw avancimit nga x nw x+2·h ,

me y(x+2h) dhe dy zgjidhjet e pwrafwrta y1 (kur wshtw bwrw njw hap 2h) dhe y2 (kur janw

bwrw dy hapa seicili me madhwsi h ) . Meqw metoda Runge-kutta jep pwrafrime deri tek

rendi i 4 , kemi kwto relacione:

y(x+2h) = y1 + (2h)5 · + O(h

6) +.....

y(x+2h) = y2 +2(h)5 · + O(h

6) +..... (3.1)

ku vlera e wshtw e njwjtw nw tw dy rastet sepse paraqet derivatin e rendit tw pestw nw

pikwn x : y(5)

(x) / 5! . Nw rastin e parw kur wshtw bwrw njw hap i plotw 2h kemi faktorin

Page 89: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

(2h)5 te derivati i rendit tw pestw dhe nw rastin e dytw kur janw bwrw dy hapa me madhwsi h

seicila, kemi faktorin 2(h)5 . Diferenca midis tw dy vlerwsimeve tw pwrafwrta :

= y2 - y1 (3.2)

wshtw njw indikator i pwrshtatwshwm. Duke operuar me dy barazimet (3.1) dhe me (3.2),

gjemw:

y(x+2h) = y2 + /15 + O(h6) (3.3)

Kjo shprehje, pavarwsisht se shkon deri tek rendi i 5 i pwrfrimeve , mund tw mos na sjellw

ndonjw pwrmirwsim tw zgjidhjes. Prandaj do ta pwrdorim madhwsinw si njw vlerwsim tw

gabimit dhe ta mbajmw atw brenda kufijve tw dwshiruar. wshtw e rendit h5 , pra nwse

marrim njw hap h1 i cili jep njw gabim 1 , ndwrsa njw hap h0 jep njw gabim 0 , lidhja

midis tyre wshtw :

h h0 1

0

1

0 2.

, ku 0.2=1/5 (3.4)

Ky barazim pwrdoret nw dy rrugw : n.q.s. 1 wshtw mw i madh se 0 nw vlerw absolute ,

barazimi na tregon se sa ta zvogwlojmw hapin kur tw riprovojmw hapin tjetwr dhe n.q.s. 1

wshtw mw i vogwl se 0 barazimi na tregon se sa mund ta rrisim hapin nw hapin tjetwr.

Problemi mbetet se si ta zgjedhim 0 pwr saktwsinw e dwshiruar pwr çdo variabwl y (nwse

kemi disa variabla y(i) wshtw njw vektor me dimesione sa wshtw numri i ekuacioneve).

Zakonisht merret 0 = · y , ku wshtw njw numwr i vogwl psh 10-6

(sa wshtw saktwsia e

rrumbullakimit tw numrave nw kompjuter). Por nwse y oshilojnw shumw merret 0 = · ymax

Mw poshtw po japim variantin BASIC pwr sistemin e ekuacioneve tw shembullit tw

paragrafit tw mwparshwm dhe rutinen nw FORTRAN pwr rastin e pwrgjithwshwm (pa

specifikuar ekuacionet).

10 REM PROGRAMI RKQC zgjidh nje sistem n-ekuacionesh te rendit te I

20 REM duke perdorur metoden Runge-Kutta te rendit te IV te modifikuar

25 REM per te monitoruar hapin

30 INPUT "Sa eshte numri i ekuacioneve"; n

40 DIM y(n), dydx(n), yscal(n), ytemp(n), ysav(n), dysav(n), yout(n), yy(n)

50 DIM yyy(n), dydxx(n), dydxxx(n)

60 INPUT "Fut vleren fillestare te x"; x

70 INPUT "Sa eshte hapi i fillimit"; htry

75 INPUT "Sa eshte epsiloni"; eps

80 FOR i = 1 TO n

90 PRINT "Sa eshte vlera fillestare e y te"; i; "-te ?"

100 INPUT y(i)

110 PRINT "Sa eshte vlera fillestare e derivatit te y te"; i; "-te ?"

120 INPUT dydx(i)

130 NEXT i

140 pgrow = -.2

150 pshrnk = -.25

155 fcor = 1! / 15

157 safety = .9

158 errcon = .0006

159 hnext = htry

160 PRINT x, y(1)

165 xsav = x

170 FOR i = 1 TO n

Page 90: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

180 ysav(i) = y(i)

185 dysav(i) = dydx(i)

187 REM yscal(i) = ABS(y(i)) + ABS(h * dydx(i))

188 yscal(i) = dydx(i)

189 IF yscal(i) = 0 THEN yscal(i) = 1

190 NEXT i

195 h = hnext

199 hh = .5 * h

200 CALL rk4(ysav(), dysav(), n, xsav, hh, ytemp())

210 x = xsav + hh

220 CALL derivs(n, x, ytemp(), dydx())

240 CALL rk4(ytemp(), dydx(), n, x, hh, y())

248 REM PRINT x, y(1)

250 x = xsav + h

260 IF x = xsav THEN PRINT "hapi i paperfillshem"

270 CALL rk4(ysav(), dysav(), n, xsav, h, ytemp())

280 errmax = 0.

320 FOR i = 1 TO n

330 ytemp(i) = y(i) - ytemp(i)

340 IF errmax < ABS(ytemp(i) / yscal(i)) THEN errmax = ABS(ytemp(i) / yscal(i))

350 NEXT i

360 errmax = errmax / eps

370 IF errmax <= 1. THEN GOTO 390

375 h=safety*h*(errmax^pshrnk)

380 GOTO 199

390 hdid = h

400 IF errmax > errcon THEN hnext = safety * h * (errmax ^ pgrow) ELSE hnext = 4 * h

410 FOR i = 1 TO n

420 y(i) = y(i) + ytemp(i) * fcor

435 REM PRINT y(i)

430 NEXT i

440 REM x = x + hdid

442 REM CALL derivs(n, x, y(), dydx())

445 IF x < 5 THEN GOTO 160

450 END

500 SUB derivs (n, xxx, yyy(), dydxxx())

510 REM DIM dydx(n)

520 dydxxx(1) = yyy(2)

530 dydxxx(2) = 2 * yyy(2) - 4 * xxx

540 END SUB

600 SUB rk4 (yy(), dydxx(), n, xx, hhh, yout())

610 DIM yt(n), dyt(n), dym(n)

620 hh = hhh * .5

630 H6 = hhh / 6!

640 xh = xx + hh

650 FOR i = 1 TO n

660 yt(i) = yy(i) + hh * dydxx(i)

Page 91: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

670 NEXT i

680 CALL derivs(n, xh, yt(), dyt())

690 FOR i = 1 TO n

700 yt(i) = yy(i) + hh * dyt(i)

710 NEXT i

720 CALL derivs(n, xh, yt(), dym())

730 FOR i = 1 TO n

740 yt(i) = yy(i) + hhh * dym(i)

750 dym(i) = dyt(i) + dym(i)

760 NEXT i

770 CALL derivs(n, xx + hhh, yt(), dyt())

780 FOR i = 1 TO n

790 yout(i) = yy(i) + H6 * (dydxx(i) + dyt(i) + 2. * dym(i))

800 NEXT i

810 END SUB

Varianti nw FORTRAN:

SUBROUTINE RKQC(Y,DYDX,N,X,HTRY,EPS,YSCAL,HDID,HNEXT,DERIVS)

PARAMETER (NMAX=10,FCOR=.0666666667,

* ONE=1.,SAFETY=0.9,ERRCON=6.E-4)

EXTERNAL DERIVS

DIMENSION

Y(N),DYDX(N),YSCAL(N),YTEMP(NMAX),YSAV(NMAX),DYSAV(NMAX)

PGROW=-0.20

PSHRNK=-0.25

XSAV=X

DO 11 I=1,N

YSAV(I)=Y(I)

DYSAV(I)=DYDX(I)

11 CONTINUE

H=HTRY

1 HH=0.5*H

CALL RK4(YSAV,DYSAV,N,XSAV,HH,YTEMP,DERIVS)

X=XSAV+HH

CALL DERIVS(X,YTEMP,DYDX)

CALL RK4(YTEMP,DYDX,N,X,HH,Y,DERIVS)

X=XSAV+H

IF(X.EQ.XSAV)PAUSE 'Stepsize not significant in RKQC.'

CALL RK4(YSAV,DYSAV,N,XSAV,H,YTEMP,DERIVS)

ERRMAX=0.

DO 12 I=1,N

YTEMP(I)=Y(I)-YTEMP(I)

ERRMAX=MAX(ERRMAX,ABS(YTEMP(I)/YSCAL(I)))

12 CONTINUE

ERRMAX=ERRMAX/EPS

IF(ERRMAX.GT.ONE) THEN

H=SAFETY*H*(ERRMAX**PSHRNK)

GOTO 1

Page 92: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

ELSE

HDID=H

IF(ERRMAX.GT.ERRCON)THEN

HNEXT=SAFETY*H*(ERRMAX**PGROW)

ELSE

HNEXT=4.*H

ENDIF

ENDIF

DO 13 I=1,N

Y(I)=Y(I)+YTEMP(I)*FCOR

13 CONTINUE

RETURN

END

4. 4 Probleme me dy kufinj

Rasti mw i shpeshtw wshtw kur kushtet kufitare jepen nw dy pika kufitare . Nw kwto

raste, po tw fillonim nga njwra pikw sikurse nw rastin e problemit me njw kusht kufitar , duke

integruar hap pas hapi deri tek pika tjetwr, zakonisht do vijmw nw njw vlerw nw pikwn e

dytw qw nuk pwrputhet me kushtin kufitar nw kwtw pikw. Prandaj, pwr problemet me dy

kufinj pwrdoren metodat iterative ose tw “relaksacionit” siç quhen ndryshe. Ne kwtu nuk do

tw trajtojmw algoritmin e plotw tw kwtyre metodave , pasi ai ngjason me ato qw pwrdoren nw

zgjidhjen numerike tw ekuacioneve diferenciale me derivate tw pjeswshwm , qw do tw

trajtohen mw poshtw. Por , po japim vetwm idenw e njw metode qw pwrdoret mw rrallw e qw

quhet metoda “shooting” (marr nw shenjw) . Nw kwtw metodw nisemi nga njera pikw

kufitare integrojmw hap pas hapi si nw rastin me njw kufi , por duke zgjedhur apriori edhe

vlerat e disa parametrave . Kur vijmw nw pikwn tjetwr natyrisht do tw marrim vlera tw

variablave qw nuk pwrputhen me kushtin e dytw kufitar. Duke zbatuar nw kwtw pikw

llogjikwn e gjetjes sw rrwnjwve axhustohen vlerat e parametrave nw mwnyrw qw tw bwjmw

zero diferencat e vlerave tw integruara tw variablave nw pikwn e dytw me vlerat qw kanw

kwto variabla nga kushti kufitar nw kwtw pikw. Kjo ngjason me atw qw bwn qitwsi gjatw

qitjes , pas sw shtwnws sw parw ai pwrmirwson shinjestrwn pwr tw kapur objektivin.

Numri parametrave , vlerat e tw cilwve merren apriori nw fillim , wshtw aq sa wshtw numri

kushteve qw na jepen pwr kufirin e dytw (zakonisht sa numri i variablave, pra numri i

ekuacioneve tw sistemit ).

Nw metodat e relaksacionit , qw pwrdoren mw shpesh, ekuacionet diferenciale

zevwndwsohen me ekuacinet e diferencave tw fundme (shih zgjidheje e ekuacioneve

diferenciale me derivate tw pjeswshwm) nw njw rjet pikash qw mbulojnw intervalin e

integrimit. Nw fillim u jepen variablave vlera tw nnjwjta nw gjithw rrjetin dhe mandej gjatw

iteracioneve vlerat e variablave duke pwrdorur ekuacionet e diferencave tw fundme .

Iteracionet vazhdojnw derisa zgjidhja tw mos ndryshojw mw (brenda kufirit tw gabimeve) .

Atwhere themio qw zgjidhja prehet (relax) nw zgjidhjen e kwrkuar.

4.4 Ekuacione diferenciale me derivate tw pjeswshme

Ekuacionet diferenciale me derivate tw pjeswswm njihen nw literaturw me shkurtimin

PDE (Partial Differential Equations). Ato pwrdoren shpesh nw situata fizike ku madhwsitw

ndryshojnw nw hapwsirw dhe nw kohw. Kwtu pwrfshihen fenomene shumw tw ndryshme si

Page 93: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

difuzioni, pawrhapja e valwve, lwvizja e fluideve (hidrodinamika), lwvizja e mikrogrimcave

(mekanika kuantike) etj. . Kwto ekuacione nuk mund tw zgjidhen analitikisht, prandaj

pwrdoren metodat numerike pwr tw marrw rezultate kuantitative. Nw njw trajtim tipik

numerik variablat e varura siç mund tw jenw temperatura, potenciali elektrik, etj pwrshkruhen

nga vlerat e tyre nw njw rrjet pikash diskrete tw variablave tw pavarura siç mund tw jenw

kordinatat hapwsinore dhe koha.Me anw tw njw diskretizimi tw pwrshtatwshwm, ekuacioni

diferencial reduktohet nw njw bashkwsi ekuacionesh algjebrikw . Nw parim kwto ekuacione

algjebrike mund tw zgjidhen me metodat e njohura (shih kapitullin e II) , por pwr dimensionet

e mwdha tw matricave tw formuara (dimensione sa numri i pikave tw rrjetit tw variablave tw

pavarura, qw arrijnw me mijwra) , metodat direkte janw jo praktike. Pwr fat , sistemet e

ekuacioneve algjebrike qw dalin nga diskretizimi janw shumw “lokalistw” ( nw çdo ekuacion

hyn vlera e variablave tw varur nw pikwn e dhwnw dhe vlerat e tyre nw pikat mw tw afwrta).

Prandaj matricat e ekuacioneve algjebrike wshtw e rrallw (“sparse”) , dmth shumica e

elementeve tw tyre janw zero. Pwr matrica tw tilla metodat iterative mund tw jenw shumw tw

efektwshme.

Shumica e PDE qw ndeshen ne Fizikw janw tw rendit tw dytw dhe klasifikohen nw

tre tipe : a) ekuacione tw tipit parabolik , b) ekuacione tw tipit eliptik , d) ekuacione tw tipit

hiperbolik . Ekuacionet e tipit parabolik pwrmbajnw derivat tw rendit tw parw nw lidhje me

njw variabwl (psh koha) dhe derivate tw rendit tw dytw nw lidhje me tw gjithw variablave tw

tjerw (psh, variablat hapsinorw). Tw tilla ekuacione janw ekuacioni i difuzionit, ekuacioni

kohor i Shredingerit etj. Ekuacionet e tipit eliptik kanw derivate tw rendit tw dytw nw lidhje

me çdo variabwl dhe kur ato grupohen nw njwrwn anw tw ekuacioni kanw tw njwjtwn

shenjw. tw tilla janw ekuacioni i Puassonit (nw rastin e veçantw tw tij ekuacioni i Laplasit),

ose ekuacioni stacionar i Shredingerit etj. Ekacionet e tipit hiperbolik pwrmbajnw derivate tw

rendit tw dytw nw lidhje me çdo variabwl por kur derivatet janw nw tw njwjtwn anw tw

ekuacionit kanw shenjw tw kundwrt derivatet hapwsinorw me ato kohorw . Tipik pwr kwtw

rast wshtw ekuacioni i pwrhapjes sw valwve nw njw mjedis. Nw kwtw kapitull ne do

trajtojmw vetwm ekuacionet diferenciale tw tipit eliptik ose hiperbolik.

4.5 Diskretizimi i zonws dhe parimi variacional

Pwr thjeshtwsi po shqyrtojmw njw ekuacion tw tipit eliptik nw rastin me dy variabla tw

pavarur dhe njw varvariabwl tw varur , siç wshtw rasti i potencialit elektrostatik nw plan, i

cili kwnaq ekuacionin:

2

2

2

2x yS x y( , ) (5.1)

ku funksioni S(x,y) karakterizon shpwrndarjen e burimeve (densiteti i ngarkesaveelektrike).

Pwr zgjidhjen e ekuacionit (5.1) duhen ditur edhe kushtet kufitare. Kushtet kufitare janw

3 llojesh : a) Kushte kufitare tw tipit Dirikle , kur jepet vlera e variablit tw varur (nw rastin

tonw potenciali) nw njw sipwrfaqe tw mbyllura (nw rastin e problemit nw plan nw kurba tw

mbyllura) dhe nw infinit (zakonisht merret zero nwse shpwrndarja e burimeve wshtw nw zona

tw fundme hapwsinore). b) Kushte kufitare tw tipit Nojman , kur jepet vlera e derivatit normal

(derivati sipas drejtimit pingul me sipwrfaqen ) nw sipwrfaqe tw mbyllura . c) Kushte kufitare

tw tipit Koshi , kur jepet vlera kombinimit linear tw variablit tw varur dhe derivatit normal nw

sipwrfaqe tw mbyllura.

Le ta zemw se nw problemi tonw jepet potenciali nw disa kurba tw mbyllura (kushtet

kufitare tw tipit Dirikle) brenda njw katrori brinjwt e tw cilit merren 1 njwsi duke konsideruar

Page 94: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

qw kwto brinjw janw shumw larg kurbave tw mbyllura , pra mund tw konsiderohen me

potencial konstant .

Rjeti i pikave nw

plan

Kushtet kufitare

jepen ne brinjwt

e katrorit dhe nw

kurbat e

mbyllura brenda

rrjetit.

Nwse h wshtw

hapi i rrjetws,

atwhere numri i

pikave tw rrjetit

wshtw

(N+1)·(N+1) , ku

N =1/h wshtw

numri i

intervaleve h nw

secilwn brinjw

tw katrorit.

Cdo pikw e

rrjetit (i,j) ka

kordinatat nw plan xi = i·h , yj =j·h , ku i,j= 0,1,2...N . Potencialin (variabli i varur nw

ekuacionin 5.1) nw çdo pikw tw tw rjetws e shwnojmw ij = (xi , yj) dhe ana e djathtw e

ekuacionit 5.1 merr vlerat Sij = S(xi , yj) nw pikat e rrjetws.

Nwqoftwse derivatet e dyta nw ekuacionin 5.1 i pwrafrojmw numerikisht me formulwn e

tre pikave (shih kapitullin e parw) , atwhere ekuacioni diferencial (5.1) sillet nw sistemin e

ekuacioneve algjebrike:

i j i j ij ij ij ij

ijh h

S1 1

2

1 1

2

2 2 (5.2)

Ekuacionin (5.1) ne mund ta nxjerrim edhe nw bazw tw parimit variacional. Pra, tw

zgjedhim njw funksional tw tillw qw minizimi ( nw pwrgjithwsi ekstremizimi) i tij tw na

sjellw nw ekuacionin (5.1) ashtu siç veprohet nw parimin e veprimit minimal pwr tw nxjerrw

ekuacionet e Lagranzhit (shih tekstin Mekanika Teorike). Le tw zgjedhim njw funksional tw

formws:

E S dxdy0

12

0

1

2( ) / (5.3)

ku wshtw gradienti i potencialit . Nw kwtw rast E pwrfaqwson energjinw e sistemit, por

kjo nuk do tw thotw qw pwr ndonjw ekuacion tjetwr funksionali E tw paraqesw enegjinw.

Variacioni i funksionalit E gjatw variacionit tw potencialit , wshtw:

Page 95: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

E S dxdy0

1

0

1

(5.4)

i cili, sipas kushtit tw ekstremumit tw E wshtw i barabartw me zero.

Duke integruar me pjesw integralin 0

1

0

1

, marrim:

E dl S dxdyC

n 2

0

1

0

1

(5.5)

ku integrali i parw wshtw nw kufijtw e zonws(brinjwt e katrorit nw rastin tonw) dhe n wshtw

vektori njwsi i normales nw kwto kufinj . Por variacioni i nw kwto kufinj wshtw zero , pasi

vlera e potencialit nw kufinjtw e zonws wshtw e pwrcaktuar ( =0) , prandaj integrali i parw

bwhet zero dhe barazimi me zero : E=0 sjell nw barazimin me zero tw shprehjes nw kllapa

nwn integraline dytw ( pwr tw çfardoshme):

2 + S = 0 ,

qw pwrputhet me ekuacionin (5.1). Prandaj pwr tw marrw njw pwrafrim diskret tw

ekuacionit (5.1), ne mund tw diskretizojmw nw fillim integralin (5.2) nw shumwn :

E h Sij i j ij ij ijj

N

i

N

1

2

1

22

11

2/ (5.6)

dhe mandej duke barazuar me zero derivatet : E

ij

0 , marrim sistemin e ekuacioneve

algjebrike (5.2). Kjo dmth tw kwrkohet ekstremumi (minimumi) i E ndaj ndryshimit tw

potencialit nw kikat e rjetws.

Sigurisht, saktwsi mw e madhe merret duke pwrdorur njw pwrafrim mw tw mirw

numerik pwr derivatet e rendit tw parw . Nw rastin e formulws (5.6) wshtw marrw pwrafrimi i

dy pikave ( shih derivimin numerik , kapitulli i I)

Deri tani nw pwrafrimin numerik nuk kemi folur se ku hyjnw kushtet kufitare. Do ishte

mirw qw sistemi kordinativ i pwrdorur t’i pwrshtatej gjeometrisw sw kushteve kufitare. Psh

nwse na jepej potenciali nw njw sferw mirw ishte qw tw pwrdorej sistemi i kordinatave

sferike. Nw rastin kur ne kemi pwrdorur kordinatat karteziane nw plan, sipwrfaqja e çrregullt

brenda katrorit (fig. 5.1) ku jepet potenciali ( nw rastin e konditave kufitare tw tipit Dirikle),

do tw pwrafrohej me bashkwsinw e pikave tw rrjetws qw bien mbi kwtw sipwrfaqe. Nw

praktikw, pwr sipwrfaqet ku jepen kushte kufitare mirw wshtw qw tw pwrdoret njw rrjet

pikash mw i dendur. Nw pikat ku jepet potenciali , ekuacionet algjebrike (6.2) shkruhen nw

formwn qw potenciali tw dalw nw anwn e djathtw tw ekuacionit ku nuk hyjnw tw panjohurat.

Psh , ekuacionet pwr pikat ngjtitur me kufirin e jashtwm tw zonws, ta zemw pranw brinjws sw

sipwrme tw katrorit (i,N-1), do shkruhej:

4· iN-1 - i+1N-1 - i-1N-1 - iN-2 = h2 ·SiN-1 + iN (5.7)

pra potenciali iN wshtw hedhur nw anwn e djathtw tw ekuacionit. Njwlloj min tw veprohet

edhe pwr sipwrfaqet e brendwshme ku mund tw jepet potenciali (kushtet kufitare Dirikle) ose

derivati normal i potencialit (kushtet kufitare Neuman) ose kombinimi i tyre (kushtet kufitare

Koshi) . Psh nwse do tw na jepej derivati normal nw brinjwn e katrorit paralel me boshtin X :

yg x( ) nw y = 1 (pra nw pikat j=N) , atwhere numerikisht do kishim barazimin:

iN - iN-1 = h·gi , gjw qw tregon se nw j=N , ekuacionet (5.2) do shkruheshin:

3 iN-1 - i+1N-1 - i-1N-1 - iN-2 = h2· SiN-1 + h·gi .

Kur marrim nw konsideratw edhe kushtet kufitare, ekuacionet afwr sipwrfaqeve ku ka

kushte kufitare do tw shkruhen ndryshe nga ekuacionet (5.2) pur pwrswri janw ekaucine

algjebrike linearw , ku nw anwn e majte hyjnw tw panjohurat qw janw vlerat e potencialit nw

Page 96: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

pikat e rrjetws. Nw fund tw fundit ne do tw merrnim njw sistem ekuacionesh algjebrike

lineare qw nw trajtw tw pwrgjithwshme shkruhen:

M S^

(5.8)

ku M wshtw matrica e sistemit -wshtw vektori elementwt e tw cilit janw vlera e potencialit

tw renditura me njw indeks , pra 11 = 1 , 12 = 2 etj.. Ndwrsa vektori S ka vlera e anws sw

djathtw tw ekuacionit (5.1) nw pikat jo kufitare dhe nw pikat kufitare merr vlera propocional

me vlerat e potencialit ose derivatit tw tij ( sipas kushteve kufitare).

Sistemi algjebrik (5.8) pwrmban zakonisht shumw ekuacione , prandaj pwr zgjidhje e tyre

pwrdoren metoda iterative.

4.6 Njw metodw iterative pwr problemet kufitare

Pwr thjeshtwsi po marrim njw problem njw dimensional, ekuacioni analog me (5.1) do

ishte :

d x

dxS x

2

2( ) (6.1)

dhe kushtet kufitare nw formwn Dirikle, pra jepen vlerat e potencialit (variablit tw varur) nw

pikat e skajeve tw segmentit [0,1] : (0) dhe (1).

Ekuacioni (6.1) meret nga ekstremizimi i funksionalit (energjisw):

E d dx S dx1 22

0

1

/ / (6.2)

i cili mund tw diskretizohet nw rrjetwn uniforme me hap : h = 1/N , duke zbatuar formulwn e

dy pikave pwr derivatin numerik:

Eh

h Si ii

N

i ii

N1

21

2

1 1

1

(6.3)

Barazimi me zero i variacionit tw E nw lidhje me i , jep ekuacionet :

2 i - i+1 - i-1 = h2 Si (6.4)

Nga kwto ekuacione ne mund ta shprehim secilwn nga tw panjohurat i nw funksion tw

vlerave nw pikat fqinje:

i = ½ [ i+1 + i-1 + h2

Si ] (6.5)

Metoda e iteracioneve konsiston nw kwtw : Zgjidhet fillimisht njw zgjidhje apriori , e cila

merret zakonisht sa vlera e potencialit nw kufinjtw e zonws. Pra merret tw gjitha i sa vlera e

(0) dhe (1) ( qw zakonisht janw tw njwjta sepse janw vlerat e potencialit nw kufinjtw e

largwt tw zonws, pra merren zero) . Mandej pwrmirwsohet vlera e i nw çdo pikw sipas

formulws (6.5) dhe kwto vlera tw pwrmirwsuara pwrdoren nw iteracionin pasardhws po sipas

formulws (6.5). Duke pwrswritur kwtw prosedurw shumw herw mund tw arrihet qw zgjidhja

i tw mos ndryshojw ( ndryshimi mw i vogwl se njw saktwsis e kwrkuar). Nw kwtw rast

themi se zgjidhja “prehet” (relax) tek zgjidhja e kwrkuar. Prandaj metoda quhet ndryshe edhe

si metoda e relaksacionit. Shpesh, pwrmirwsimi i zgjidhjes nw çdo iteracion bwhet nga

kombinimi i zgjidhjes sw vjetwr me zgjidhjen qw jep formula (6.5). Pra, potenciali nw

iteracionin pasardhws merret:

i = (1- )· i + /2 [ i+1 + i-1 + h2 Si ] (6.6)

ku wshtw njw parametwr qw mund tw rregullohet qw tw kontrollojw shpejtwsinw e

procesit tw realaksacionit . Vlera e tij zgjidhet me prova , por intervali i vlerave duhet tw jetw

0 < < 2 , sepse po tw kontrollohet diferenca e vlerave tw energisw sw diskretizuar pwr

rastin kur wshtw futur parametri i relaksacionit me rastin kur nuk wshtw futur parametri i

relaksacionit , del diferenca:

Page 97: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

E’-E= - ·(2- )[½( i+1 + i-1 + h2 Si ) - i ]

2 / (2h)

e cila wshtw negative ( pra energjia zvogwlohet) vetwm nwse 0 < < 2 dhe konvergjon drejt

minimumit.

Mw poshtw jepet programi i kwsaj metode, kur S(x)= 12 x2

dhe (0)= (1)=0 . Merret

ky rast sepse dihet edhe zgjidhja analitike e ekuacionit dhe mund tw vlerwsohet saktwsia e

algoritmit.

Varianti BASIC :

10 n = 20

20 h = 1 / n

30 omega = 1!

40 DIM phi(n), s(n)

50 FOR i = 1 TO n

60 x = i * h

70 s(i) = h * h * 12 * x * x

80 phi(i) = 0

90 NEXT i

100 FOR it = 1 TO 500

110 FOR i = 1 TO n - 1

120 phip = (phi(i - 1) + phi(i + 1) + s(i)) / 2

130 phi(i) = (1 - omega) * phi(i) + omega * phip

140 NEXT i

150 IF (it - 1) MOD 20 <> 0 THEN 230

160 PRINT USING "iteration=###"; it

170 e = 0!

180 FOR i = 1 TO n

190 e = e + ((phi(i) - phi(i - 1)) / h) ^ 2 / 2

200 e = e - s(i) / h / h * phi(i)

210 NEXT i

220 PRINT USING "energy=+##.####^^^^"; e * h

230 NEXT it

240 END

Varianti FORTRAN:

PARAMETER (NSTEP=20)

DIMENSION PHI(0:NSTEP),S(0:NSTEP)

50 PRINT *,' Enter omega (.le. 0 to stop)'

READ *, OMEGA

IF (OMEGA .LE. 0) STOP

H=1./NSTEP

DO 10 IX=0,NSTEP

X=IX*H

S(IX)=H*H*12*X*X

PHI(IX)=0.

10 CONTINUE

Page 98: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

DO 20 ITER=1,500

DO 15 IX=1,NSTEP-1

PHIP=(PHI(IX-1)+PHI(IX+1)+S(IX))/2

PHI(IX)=(1.-OMEGA)*PHI(IX)+OMEGA*PHIP

15 CONTINUE

IF (MOD(ITER-1,20) .EQ. 0) THEN

E=0.

DO 30 IX=1,NSTEP

E=E+(((PHI(IX)-PHI(IX-1))/H)**2)/2

E=E-S(IX)*PHI(IX)/H**2

30 CONTINUE

E=E*H

PRINT *,' iteration = ',iter,' energy = ',E

END IF

20 CONTINUE

GOTO 50

END

4.7 Rasti dy-dimensional

Zbatimi i metodws sw relaksacionit nw rastin dydimensional (nw plan) nw problemet

kufitare tw ekuacioneve eliptike ilustrohet me shembullin e ekuacionit tw Laplasit. Programi

wshtw marrw i gatwshwm nga literatura dhe zbatohet vetwm nw PC nw gjuhwn QBASIC pasi

janw futur komanda grafike . Programi wshtw iteraktiv dhe pwrdoruesit i kwrkohet nw çdo

hap nwpwrmjet ekranit se çfarw duhet tw bwjw dhe si futen kushtet kufirate brenda njw zone

drejtwkwndwshi ku mund tw ketw edhe kurba me potencial tw njwjtw. Subrutina kryesore ku

zbatohet metoda e relaksacionit sillon nw rreshtin 13000 , potenciali ruhet nw matricwn

dydimensionale P(ROW,COL)

10 '***************************************************************************

20 'Example 6: Solving Laplace's equation in two dimensions

21 'COMPUTATIONAL PHYSICS by Steven E. Koonin

22 'Copyright 1985 by Addison-Wesley Publishing Company

30 '***************************************************************************

40 GOSUB 15000 'display header screen

50 '

60 FIRST%=-1 'define constants, functions

70 DIM INTERIOR%(10) 'array for color of interior

80 DIM BOUNDARY%(10) 'array for color of boundary

90 DIM BUFFER%(24,80) 'gives position in screen buff

100 DIM P(24,80) 'value of potential

110 OMEGA%=-1 'flag to input omega

120 LATTICE%=-1 'flag to input lattice size

130 LSAVE%=0 'flag to save lattice size

140 BC%=0: BCSAVE%=0 'keep size, change bound cond

150 PSAVE%=0 'keep old Phi values

160 CLR%=-1 'flag to clear screen

170 '

Page 99: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

180 IF FIRST% THEN GOSUB 1000 'print cautionary message

190 IF LATTICE% AND NOT BCSAVE% THEN GOSUB 2000 'input lattice size, INIT%

200 IF OMEGA% THEN GOSUB 3000 'input OMEGA

210 IF LATTICE% THEN GOSUB 4000 'initialize P array

220 IF FIRST% THEN GOSUB 5000 'display instruction for input

230 IF LATTICE% OR BC% THEN GOSUB 6000 'input P from screen

240 IF SUBLATTICE% THEN GOSUB 9000 'input sublattice from screen

250 GOSUB 11000 'make initial guess for P

260 GOSUB 12000 'display commands

270 '

280 BC%=0: OMEGA%=0: LATTICE%=0: LSAVE%=0 'reset all flags

290 PSAVE%=0: CLR%=0: SUBLATTICE%=0: BCSAVE%=0

300 '

310 LOCATE ,,0: ITERATION%=0 'iteration count begins from 0

320 K$=INKEY$ 'accept keyboard input

330 IF NOT SUBL% THEN GOTO 370 'if there is a sublattice,then

340 X1%=SUBX1%: X2%=SUBX2% ' the limits on X and Y are not

350 Y1%=SUBY1%: Y2%=SUBY2% ' those of the whole lattice

360 '

370 WHILE K$<>"e" 'continue loop until e is typed

380 ITERATION%=ITERATION%+1

390 OLDE=ENERGY: ENERGY=0 'save previous energy

400 OLDDELP=DELTAPMAX: DELTAPMAX=0 'save previous max delta P

410 GOSUB 13000 'relax the lattice

420 '

430 K$=INKEY$ 'accept keyboard input

440 WEND

450 '

460 IF NOT SUBL% THEN GOTO 510 'if there is a sublattice,

470 X1%=XFIRST%: X2%=XLAST% ' typing e once will begin

480 Y1%=YFIRST%: Y2%=YLAST% ' the loop for the entire

490 LOCATE 25,59: PRINT SPACE$(10); ' lattice

500 SUBL%=0: GOTO 310

510 GOSUB 14000 'display options

520 GOTO 180 'begin again

530 '

1000 '*************************************************************************

1010 'subroutine to print cautionary message about POKEing

1020 'input variables: none

1030 'output variables: BOUNDARY%(I%), INTERIOR%(I%), POKING%

1040 'global variables: GRAPHICS%

1050 'local variables: ANSWER$, OPT$

1060 '*************************************************************************

1070 CLS

1080 '

1090 LOCATE 1,34,0

1100 PRINT "C A U T I O N"

1110 LOCATE 3,9

1120 PRINT "For efficient screen display this program uses the POKE command";

1130 LOCATE 5,9

1140 PRINT "which places data directly into memory. The location given in";

1150 LOCATE 7,8

1160 PRINT "POKE (syntax: POKE location,data) is an offset from the current";

1170 LOCATE 9,8

1180 PRINT "segment as given by the DEF SEG statement. This program sets the";

1190 LOCATE 11,10

1200 PRINT "segment to the beginning of either the graphics or monochrome";

1210 LOCATE 13,8

1220 PRINT "screen buffer for the IBM PC. If your memory map isn't the same";

Page 100: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

1230 LOCATE 15,8

1240 PRINT "as an IBM, POKE may write over important data in RAM. Check your";

1250 LOCATE 17,9

1260 PRINT "BASIC manual (DEF SEG statement) for the segment of the screen";

1270 LOCATE 19,8

1280 PRINT "buffer and compare with lines 1450,1540 in this program to ensure";

1290 LOCATE 21,33

1300 PRINT "smooth running.";

1310 '

1320 LOCATE 24,1 'input method of screen display

1330 PRINT "Do you wish to use 1)the POKE method, or 2)the slower and sure";

1340 INPUT; " LOCATE method";OPT$

1350 IF OPT$="1" OR OPT$="2" THEN GOTO 1400

1360 LOCATE 25,24: BEEP

1370 PRINT "Try again, the response is 1 or 2";

1380 LOCATE 24,1: PRINT SPACE$(79);

1390 GOTO 1320

1400 IF OPT$="1" THEN POKING%=-1 ELSE POKING%=0

1410 IF NOT POKING% THEN RETURN

1420 '

1430 IF NOT GRAPHICS% THEN GOTO 1540

1440 GOSUB 16000 'switch screens

1450 DEF SEG=&HB800 'set memory

1460 RESTORE 1510

1470 FOR I%=0 TO 9 'set up array for colors

1480 READ INTERIOR%(I%)

1490 BOUNDARY%(I%)=INTERIOR%(I%)+96

1500 NEXT I%

1510 DATA 4,5,1,3,2,12,13,9,11,10

1520 RETURN

1530 '

1540 DEF SEG=&HB000 'set memory

1550 FOR I%=0 TO 9 'set up arrays for colors

1560 INTERIOR%(I%)=2 ' (viz. boldface or regular

1570 BOUNDARY%(I%)=11 ' type)

1580 NEXT I%

1590 RETURN

1600 '

2000 '*************************************************************************

2010 'subroutine to input Nx, Ny, INIT%

2020 'input variables: LATTICE%, LSAVE%

2030 'output variables: INIT%, STP%, XFIRST%, XLAST%, YFIRST%, YLAST%

2040 'global variables: none

2050 'local variables: NX%, NY%

2060 '*************************************************************************

2070 CLS

2080 IF LSAVE% THEN GOTO 2380

2090 '

2100 LOCATE 3,19 'display introduction

2110 PRINT "This program solves Laplace's equation on a";

2120 LOCATE 4,19

2130 PRINT "uniform rectangular lattice of unit spacing";

2140 '

2150 LOCATE 6,18 'input NX

2160 INPUT; "Enter the number of horizontal points (<=79)";NX%

2170 IF NX%>0 AND NX%<80 GOTO 2230

2180 LOCATE 7,29: BEEP

2190 PRINT "Try again, 0 < Nx <= 79";

2200 LOCATE 6,1: PRINT SPACE$(80);

Page 101: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

2210 GOTO 2150

2220 '

2230 LOCATE 9,19 'input NY

2240 INPUT; "Enter the number of vertical points (<=23)";NY%

2250 IF NY%>0 AND NY%<=23 THEN GOTO 2310

2260 LOCATE 10,29: BEEP

2270 PRINT "Try again, 0 < Ny <=24";

2280 LOCATE 9,1: PRINT SPACE$(80);

2290 GOTO 2230

2300 '

2310 YFIRST%=(24-NY%)/2: YLAST%=YFIRST%+NY%-1 'center the lattice

2320 IF NX%>39 GOTO 2350 'if possible, let the

2330 XFIRST%=(79-2*NX%)/2: XLAST%=XFIRST%+2*(NX%-1) ' columns be separated

2340 STP%=2: GOTO 2380 ' by a space

2350 XFIRST%=(81-NX%)/2: XLAST%=XFIRST%+NX%-1

2360 STP%=1

2370 '

2380 LOCATE 12,13 'input bound value of P

2390 INPUT; "Enter the initial value for P along the boundary (1-35)";INIT%

2400 IF INIT%>=1 AND INIT%<=35 THEN GOTO 2460

2410 LOCATE 13,36: BEEP

2420 PRINT "Try again";

2430 LOCATE 12,1: PRINT SPACE$(79);

2440 GOTO 2380

2450 '

2460 RETURN

2470 '

3000 '*************************************************************************

3010 'subroutine to input OMEGA

3020 'input variables: BC%, FIRST%, LATTICE%

3030 'output variables: OMEGA

3040 'global variables: none

3050 'local variables: none

3060 '*************************************************************************

3070 IF NOT LATTICE% THEN CLS 'clear screen

3080 '

3090 IF FIRST% GOTO 3120 'input OMEGA

3100 LOCATE 19,24

3110 PRINT USING "Your last value of Omega was #.##";OMEGA;

3120 LOCATE 18,11

3130 PRINT "Omega is the parameter which controls the rate of relaxation";

3140 LOCATE 20,33

3150 PRINT "0 < OMEGA <= 2";

3160 LOCATE 22,36

3170 INPUT; "OMEGA = ";OMEGA

3180 IF OMEGA>0 AND OMEGA<=2 GOTO 3240

3190 LOCATE 23,36: BEEP

3200 PRINT "Try again"

3210 LOCATE 22,1: PRINT SPACE$(79);

3220 GOTO 3160

3230 '

3240 RETURN

3250 '

4000 '*************************************************************************

4010 'subroutine to input initial values in P and BUFFER% arrays

4020 'input variables: BCSAVE%, INIT%, STP%, XFIRST%, XLAST%, YFIRST%, YLAST%

4030 'output variables: BUFFER%(I%,J%), P(I%,J%)

4040 'global variables: none

4050 'local variables: COL%, ROW%

Page 102: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

4060 '*************************************************************************

4070 IF NOT BCSAVE% THEN GOTO 4150 'if saving bound. cond.

4080 FOR ROW%=YFIRST% TO YLAST% ' then release all non

4090 FOR COL%=XFIRST% TO XLAST% STEP STP% ' boundary points

4100 IF P(ROW%,COL%)>=0 THEN P(ROW%,COL%)=0

4110 NEXT COL%

4120 NEXT ROW%

4130 RETURN

4140 '

4150 FOR ROW%=YFIRST% TO YLAST%

4160 FOR COL%=XFIRST% TO XLAST% STEP STP% 'location in

4170 BUFFER%(ROW%,COL%)=((ROW%-1)*80+(COL%-1))*2 ' screen buffer

4180 P(ROW%,COL%)=0 'relase all pts

4190 NEXT COL%

4200 NEXT ROW%

4210 '

4220 FOR ROW%=YFIRST% TO YLAST% 'set all points on the edge of

4230 P(ROW%,XFIRST%)=-INIT% ' of the lattice to the initial

4240 P(ROW%,XLAST%)=-INIT% ' value for P

4250 NEXT ROW%

4260 '

4270 FOR COL%=XFIRST% TO XLAST% STEP STP% 'a negative value for P

4280 P(YFIRST%,COL%)=-INIT% ' indicates that it is a

4290 P(YLAST%,COL%)=-INIT% ' boundary point

4300 NEXT COL%

4310 '

4320 RETURN

4330 '

5000 '*************************************************************************

5010 'subroutine to display instructions for altering boundary conditions

5020 'input variables: none

5030 'output variables: none

5040 'global variables: none

5050 'local variables: none

5060 '*************************************************************************

5070 CLS

5080 '

5090 LOCATE 1,8,0

5100 PRINT "The initial boundary conditions will be displayed on the screen";

5110 LOCATE 3,17

5120 PRINT "and you will be able to alter them as follows:";

5130 LOCATE 5,27

5140 PRINT "Use "+CHR$(24)+CHR$(25)+CHR$(26)+CHR$(27)+" to move the cursor";

5150 LOCATE 7,18

5160 PRINT "At any point you may enter characters 1-9,a-z";

5170 LOCATE 9,14

5180 PRINT "corresponding to Dirichlet boundary values from 1-35";

5190 LOCATE 11,10

5200 PRINT "Entering . at any point will release it from boundary conditions";

5210 LOCATE 13,24

5220 PRINT "Type return when you are finished";

5230 LOCATE 16,3

5240 PRINT "Then by placing a < in the upper left hand and ";

5250 PRINT "a > in the lower right hand";

5260 LOCATE 18,8

5270 PRINT "corners you may specify a sublattice which will be relaxed first,";

5280 LOCATE 20,11

5290 PRINT "thus speeding the relaxation process for the whole lattice.";

5300 LOCATE 22,14

Page 103: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

5310 PRINT "Type . to erase a mistake, type return when finished.";

5320 '

5330 LOCATE 25,31,1

5340 PRINT "Type c to continue";

5350 IF INKEY$<>"c" THEN GOTO 5350

5360 LOCATE ,,0

5370 '

5380 RETURN

5390 '

6000 '*************************************************************************

6010 'subroutine to input boundary conditions from the screen

6020 'input variables: PSAVE%, STP%, XFIRST%, XLAST%, YFIRST%, YLAST%

6030 'output variables: SUBL%, SUBLATTICE%, SUBSAVE%, X1%,X2%, Y1%, Y2%

6040 'global variables: BOUNDARY%(I%), INTERIOR%(I%), POKING%

6050 'local variables: ASKII%, ATT%, COL%, OPT$, P%, ROW%

6060 '*************************************************************************

6070 X1%=XFIRST%: X2%=XLAST% 'set values so that the entire

6080 Y1%=YFIRST%: Y2%=YLAST% ' lattice will be displayed

6090 IF NOT PSAVE% THEN GOSUB 7000 ELSE GOSUB 8000 'display lattice

6100 '

6110 LOCATE 24,16 'display instructions

6120 PRINT "enter values 1-9,a-z; type return when finished";

6130 '

6140 COL%=XFIRST%: ROW%=YFIRST% 'start cursor in upper right

6150 '

6160 LOCATE ROW%,COL%,1 'place cursor at current pos

6170 COLOR 15 'attribute for boundary

6180 K$=INKEY$ 'wait for keyboard input

6190 IF K$="" THEN GOTO 6180

6200 LOCATE 25,34: PRINT SPACE$(13); 'erase old error message

6210 '

6220 IF LEN(K$)<2 THEN GOTO 6420 'check for two character

6230 K$=RIGHT$(K$,1) ' input indicating cursors

6240 '

6250 IF K$<>CHR$(72) THEN GOTO 6290 'up arrow

6260 ROW%=ROW%-1

6270 IF ROW%<YFIRST% THEN ROW%=YFIRST%

6280 GOTO 6160

6290 IF K$<>CHR$(80) THEN GOTO 6330 'down arrow

6300 ROW%=ROW%+1

6310 IF ROW%>YLAST% THEN ROW%=YLAST%

6320 GOTO 6160

6330 IF K$<>CHR$(77) THEN GOTO 6370 'left arrow

6340 COL%=COL%+STP%

6350 IF COL%>XLAST% THEN COL%=XLAST%

6360 GOTO 6160

6370 IF K$<>CHR$(75) THEN GOTO 6610 'right arrow

6380 COL%=COL%-STP%

6390 IF COL%<XFIRST% THEN COL%=XFIRST%

6400 GOTO 6160

6410 '

6420 IF K$=CHR$(13) THEN GOTO 6640 'typing return exits

6430 '

6440 IF K$<>CHR$(46) THEN GOTO 6490 'release point if . entered

6450 P(ROW%,COL%)=0 'P=0 indicates released point

6460 ASKII%=46 '. is ASCII character 46

6470 COLOR 7: ATT%=INTERIOR%(0) 'get correct attribute

6480 GOTO 6560

6490 ASKII%=ASC(K$) 'find ASCII code for input

Page 104: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

6500 IF ASKII%<49 OR ASKII%>122 GOTO 6610 'if code in this

6510 IF ASKII%>57 AND ASKII%<97 GOTO 6610 ' range, not 1-9,a-z

6520 IF ASKII%>96 THEN P%=ASKII%-87 ELSE P%=ASKII%-48

6530 P(ROW%,COL%)=-P% 'translate ASCII to P value

6540 ATT%=BOUNDARY%(P% MOD 10) 'get correct attribute

6550 '

6560 IF NOT POKING% THEN LOCATE ROW%,COL%: PRINT CHR$(ASKII%);

6570 IF POKING% THEN POKE BUFFER%(ROW%,COL%),ASKII%

6580 IF POKING% THEN POKE BUFFER%(ROW%,COL%)+1,ATT%

6590 GOTO 6160

6600 '

6610 LOCATE 25,34: COLOR 7: PRINT "Illegal input";

6620 GOTO 6160

6630 '

6640 COLOR 7: LOCATE 24,1: PRINT SPACE$(79); 'do you want a sublattice

6650 LOCATE 25,1: PRINT SPACE$(79);

6660 LOCATE 24,19

6670 INPUT; "Do you wish to specify a sub lattice (y/n)";OPT$

6680 IF OPT$="y" OR OPT$="n" THEN GOTO 6730

6690 LOCATE 25,36: BEEP

6700 PRINT "Try again"

6710 LOCATE 24,1: PRINT SPACE$(79);

6720 GOTO 6660

6730 IF OPT$="y" THEN SUBL%=-1 ELSE SUBL%=0 'flag to relax sublattice

6740 IF OPT$="y" THEN SUBLATTICE%=-1 ELSE SUBLATTICE%=0 'flag to enter sublat

6750 IF OPT$="y" THEN SUBSAVE%=-1 ELSE SUBSAVE%=0 'flag to redo sublattice

6760 ' if only Omega is changed

6770 RETURN

6780 '

7000 '*************************************************************************

7010 'subroutine to display lattice on the screen

7020 'input variables: BUFFER%(I%,J%), CLR%, P(I%,J%), STP%,X1%, X2%, Y1%,Y2%

7030 'output variables: none

7040 'global variables: BOUNDARY%(I%), INTERIOR%(I%), POKING%

7050 'local variables: ASKII%, ATT%, COL%, MP%, NEG%, P%, ROW%

7060 '*************************************************************************

7070 IF CLR% THEN CLS

7080 LOCATE ,,0

7090 IF NOT POKING% THEN GOTO 7250

7100 '

7110 FOR ROW%=Y1% TO Y2% 'the attribute is different for

7120 FOR COL%=X1% TO X2% STEP STP% ' bound and non-bound points so

7130 P%=ABS(P(ROW%,COL%)) ' that they look different on

7140 IF P%<10 THEN ASKII%=P%+48 ELSE ASKII%=P%+87 ' the screen

7150 IF P(ROW%,COL%)=0 THEN ASKII%=46

7160 MP%=P% MOD 10: IF P(ROW%,COL%)<0 THEN NEG%=-1 ELSE NEG%=0

7170 IF NEG% THEN ATT%=BOUNDARY%(MP%) ELSE ATT%=INTERIOR%(MP%)

7180 POKE BUFFER%(ROW%,COL%)+1,ATT%

7190 POKE BUFFER%(ROW%,COL%),ASKII%

7200 NEXT COL%

7210 NEXT ROW%

7220 '

7230 RETURN

7240 '

7250 FOR ROW%=Y1% TO Y2% 'the color is different for

7260 FOR COL%=X1% TO X2% STEP STP% ' bound. and non-bound. pts

7270 P%=ABS(P(ROW%,COL%))

7280 IF P%<10 THEN ASKII%=P%+48 ELSE ASKII%=P%+87

7290 IF P(ROW%,COL%)=0 THEN ASKII%=46

Page 105: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

7300 IF P(ROW%,COL%)<0 THEN COLOR 15 ELSE COLOR 7

7310 LOCATE ROW%,COL%,0: PRINT CHR$(ASKII%);

7320 NEXT COL%

7330 NEXT ROW%

7340 '

7350 COLOR 7: RETURN

7360 '

8000 '*************************************************************************

8010 'subroutine to put lattice on screen when P is to be saved

8020 'input variables: BUFFER%(I%,J%), CLR%, P(I%,J%), STP%, XFIRST%, XLAST%,

8030 ' YFIRST%, YLAST%

8040 'output variables: none

8050 'global variables: BOUNDARY%(I%), INTERIOR%(I%), POKING%

8060 'local variables: ASKII%, ATT%, COL%, MP%, P%, ROW%

8070 '*************************************************************************

8080 IF CLR% THEN CLS

8090 LOCATE ,,0

8100 IF NOT POKING% THEN GOTO 8250

8110 '

8120 FOR ROW%=YFIRST% TO YLAST% 'non-bound pts will be displayed

8130 FOR COL%=XFIRST% TO XLAST% STEP STP% ' as ., but the value in P will

8140 IF P(ROW%,COL%)<0 THEN P%=-P(ROW%,COL%) ' not be lost

8150 IF P%<10 THEN ASKII%=P%+48 ELSE ASKII%=P%+87

8160 IF P(ROW%,COL%)>0 THEN ASKII%=46

8170 MP%=P% MOD 10

8180 IF ASKII%=46 THEN ATT%=INTERIOR%(0) ELSE ATT%=BOUNDARY%(MP%)

8190 POKE BUFFER%(ROW%,COL%),ASKII%

8200 POKE BUFFER%(ROW%,COL%)+1,ATT%

8210 NEXT COL%

8220 NEXT ROW%

8230 RETURN

8240 '

8250 FOR ROW%=YFIRST% TO YLAST%

8260 FOR COL%=XFIRST% TO XLAST% STEP STP%

8270 IF P(ROW%,COL%)<0 THEN P%=-P(ROW%,COL%)

8280 IF P%<10 THEN ASKII%=P%+48 ELSE ASKII%=P%+87

8290 IF P(ROW%,COL%)>0 THEN ASKII%=46

8300 IF ASKII%=46 THEN COLOR 7 ELSE COLOR 15

8310 LOCATE ROW%,COL%: PRINT CHR$(ASKII%);

8320 NEXT COL%

8330 NEXT ROW%

8340 COLOR 7: RETURN

8350 '

9000 '*************************************************************************

9010 'subroutine to input parameters of sublattice

9020 'input variables: BUFFER%(I%,J%), P(I%,J%), STP%, XFIRST%, XLAST%,

9030 ' YFIRST%, YLAST%

9040 'output variables: SUBX1%, SUBX2%, SUBY1%, SUBY2%

9050 'global variables: BOUNDARY%(I%), INTERIOR%(I%), POKING%

9060 'local variables: ASKII%, ATTRIBUTE%, BOTH%, COL%, CORRECT%, DELX%,

9070 ' DELY%, K$, ONEDIM%, P%, ROW%, SWITCHED%, SUB1%, SUB2%

9080 ' TYPEOVER%

9090 '*************************************************************************

9100 SUB1%=0: SUB2%=0 'set flags to zero

9110 '

9120 LOCATE 24,1: PRINT SPACE$(79); 'clear bottom of screen

9130 LOCATE 25,1: PRINT SPACE$(79);

9140 LOCATE 24,3 'display instructions

9150 PRINT "Enter < in upper left and > in lower right corners to specify a";

Page 106: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

9160 PRINT " sublattice.";

9170 LOCATE 25,13

9180 PRINT "Type . to correct a mistake, type return when finished.";

9190 '

9200 COL%=XFIRST%: ROW%=YFIRST% 'start cursor in upper right

9210 '

9220 LOCATE ROW%,COL%,1 'place cursor at current pos

9230 K$=INKEY$ 'wait for keyboard input

9240 IF K$="" THEN GOTO 9230

9250 '

9260 IF LEN(K$)<2 THEN GOTO 9460 'check for two character

9270 K$=RIGHT$(K$,1) ' input indicating cursors

9280 '

9290 IF K$<>CHR$(72) THEN GOTO 9330 'up arrow

9300 ROW%=ROW%-1

9310 IF ROW%<YFIRST% THEN ROW%=YFIRST%

9320 GOTO 9220

9330 IF K$<>CHR$(80) THEN GOTO 9370 'down arrow

9340 ROW%=ROW%+1

9350 IF ROW%>YLAST% THEN ROW%=YLAST%

9360 GOTO 9220

9370 IF K$<>CHR$(77) THEN GOTO 9410 'left arrow

9380 COL%=COL%+STP%

9390 IF COL%>XLAST% THEN COL%=XLAST%

9400 GOTO 9220

9410 IF K$<>CHR$(75) THEN GOTO 6610 'right arrow

9420 COL%=COL%-STP%

9430 IF COL%<XFIRST% THEN COL%=XFIRST%

9440 GOTO 9220

9450 '

9460 IF K$<>CHR$(13) THEN 9620 'typing return exits

9470 BOTH%=SUB1% AND SUB2% 'make sure that the sublattice

9480 DELX%=SUBX2%-SUBX1% ' parameters are sensible

9490 DELY%=SUBY2%-SUBY1%

9500 ONEDIM%=BOTH% AND (DELX%=0 OR DELY%=0)

9510 SWITCHED%=BOTH% AND (DELX%<0 OR DELY%<0) AND NOT ONEDIM%

9520 CORRECT%=BOTH% AND (DELX%>0) AND (DELY%>0)

9530 IF CORRECT% THEN LOCATE ,,0: COLOR 7: RETURN

9540 LOCATE 25,1: PRINT SPACE$(79);

9550 LOCATE 25,29: BEEP

9560 IF NOT SUB2% THEN PRINT "Specify lower right hand corner.";

9570 IF NOT SUB1% THEN PRINT "Specify upper left hand corner.";

9580 IF ONEDIM% THEN PRINT "Sublattice must be 2 dimensional.";

9590 IF SWITCHED% THEN PRINT "Try again; corners are switched";

9600 GOTO 9200

9610 '

9620 IF K$<>CHR$(60) THEN GOTO 9740 'upper left corner

9630 IF SUB1% THEN GOTO 9700

9640 TYPEOVER%=(SUB2% AND COL%=SUBX2% AND ROW%=SUBY2%)

9650 IF TYPEOVER% THEN SUB2%=0

9660 SUB1%=-1 'set flags

9670 SUBX1%=COL% 'input sublattice parameters

9680 SUBY1%=ROW%

9690 LOCATE ROW%,COL%: PRINT K$;: GOTO 9220

9700 LOCATE 25,1: PRINT SPACE$(79);

9710 LOCATE 25,16: BEEP

9720 PRINT "Upper left already specified, type . to correct";

9730 GOTO 9220

9740 IF K$<>CHR$(62) THEN GOTO 9870 'lower right corner

Page 107: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

9750 IF SUB2% THEN GOTO 9820

9760 TYPEOVER%=(SUB1% AND COL%=SUBX1% AND ROW%=SUBY1%)

9770 IF TYPEOVER% THEN SUB1%=0

9780 SUB2%=-1 'set flags

9790 SUBX2%=COL% 'input parameters

9800 SUBY2%=ROW%

9810 LOCATE ROW%,COL%: PRINT K$;: GOTO 9220

9820 LOCATE 25,1: PRINT SPACE$(79);

9830 LOCATE 25,16: BEEP

9840 PRINT "Lower right already specified, type . to correct";

9850 GOTO 9220

9860 '

9870 IF K$<>CHR$(46) THEN GOTO 9220 'typing . corrects a mistake

9880 IF COL%=SUBX1% AND ROW%=SUBY1% THEN SUB1%=0

9890 IF COL%=SUBX2% AND ROW%=SUBY2% THEN SUB2%=0

9900 IF P(ROW%,COL%)<0 THEN GOTO 9930

9910 ASKII%=46: COLOR 7: ATTRIBUTE%=INTERIOR%(0)

9920 GOTO 9970

9930 P%=ABS(P(ROW%,COL%))

9940 IF P%<10 THEN ASKII%=P%+48 ELSE ASKII%=P%+87

9950 COLOR 7: ATTRIBUTE%=BOUNDARY%(P% MOD 10)

9960 '

9970 IF NOT POKING% THEN LOCATE ROW%,COL%: PRINT CHR$(ASKII%);

9980 IF POKING% THEN POKE BUFFER%(ROW%,COL%),ASKII%

9990 IF POKING% THEN POKE BUFFER%(ROW%,COL%)+1,ATTRIBUTE%

10000 GOTO 9220

10010 '

11000 '************************************************************************

11010 'subroutine to guess initial values

11020 'input variables: INIT%, P(I%,J%), STP%, XFIRST%, XLAST%, YFIRST%

11030 ' YLAST%

11040 'output variables: P(I%,J%)

11050 'global variables: none

11060 'local variables: COL%, ROW%

11070 '************************************************************************

11080 IF PSAVE% THEN GOTO 11180

11090 '

11100 FOR ROW%=YFIRST% TO YLAST% 'set all non-bound pts to the

11110 FOR COL%=XFIRST% TO XLAST% STEP STP% ' initial value for the bound

11120 IF P(ROW%,COL%)<0 THEN GOTO 11140

11130 P(ROW%,COL%)=INIT%

11140 NEXT COL%

11150 NEXT ROW%

11160 RETURN

11170 '

11180 FOR ROW%=YFIRST% TO YLAST% 'if saving last PHI, set all

11190 FOR COL%=XFIRST% TO XLAST% STEP STP% ' released points to the init

11200 IF P(ROW%,COL%)<>0 THEN GOTO 11220 ' value for the bound

11210 P(ROW%,COL%)=INIT%

11220 NEXT COL%

11230 NEXT ROW%

11240 '

11250 RETURN

11260 '

12000 '************************************************************************

12010 'subroutine to prepare the screen for relaxation loop

12020 'input variables: FIRST%, SUBL%

12030 'output variables: FIRST%

12040 'global variables: none

Page 108: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

12050 'local variables: none

12060 '************************************************************************

12070 CLS: COLOR 7: LOCATE ,,0

12080 IF NOT FIRST% THEN GOTO 12320

12090 '

12100 LOCATE 5,16 'display instructions

12110 PRINT "Typing e will end the current relaxation process.";

12120 LOCATE 8,11

12130 PRINT "If you have specified a sub lattice, typing e once will end";

12140 LOCATE 11,11

12150 PRINT "relaxation of the sub lattice and begin the process for the";

12160 LOCATE 14,11

12170 PRINT "entire lattice. Typing e once more will end the relaxation";

12180 LOCATE 17,31

12190 PRINT "process altogether.";

12200 LOCATE 20,17

12210 PRINT "The energy printed is the value per unit area.";

12220 LOCATE 22,4

12230 PRINT "Delta P is the maximum percentage change in Phi from previous";

12240 PRINT " iteration.";

12250 '

12260 LOCATE 25,31,1

12270 PRINT "Type c to continue";

12280 IF INKEY$<>"c" THEN GOTO 12280

12290 LOCATE ,,0

12300 FIRST%=0

12310 '

12320 GOSUB 7000 'display lattice

12330 '

12340 LOCATE 24,1 'prepare for output

12350 PRINT "iteration = 0";

12360 LOCATE 24,27

12370 PRINT "delta P= 00.000000";

12380 LOCATE 24,57

12390 PRINT "last delta P= 00.000000";

12400 LOCATE 25,1

12410 PRINT "energy = 000.000000";

12420 LOCATE 25,24

12430 PRINT "change in energy = +00.000000";

12440 IF SUBL% THEN LOCATE 25,59: PRINT "sublattice";

12450 LOCATE 25,75: COLOR 15

12460 PRINT "e:end";: COLOR 7

12470 '

12480 RETURN

12490 '

13000 '************************************************************************

13010 'subroutine to relax the lattice

13020 'input variables: DELTAPMAX, ENERGY, ITERATION%, OLDE, OLDDELP,

13030 ' P(I%,J%), X1%, X2%, Y1%, Y2%

13040 'output variables: DELTAPMAX, ENERGY

13050 'global variables: NX%, NY%, OMEGA, STP%

13060 'local variables: A, B, C, COL%, D, DELENERGY, DELTAP, PNEW, POLD, ROW%

13070 '************************************************************************

13080 FOR ROW%=Y1% TO Y2% 'loop over all lattice or

13090 FOR COL%=X1% TO X2% STEP STP% ' sublattice points

13100 IF ROW%=Y1% AND COL%=X1% THEN GOTO 13280

13110 B=ABS(P(ROW%-1,COL%))

13120 D=ABS(P(ROW%,COL%-STP%)) 'don't relax a boundary point

13130 IF P(ROW%,COL%)<0 THEN PNEW=ABS(P(ROW%,COL%)): GOTO 13250

Page 109: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

13140 '

13150 POLD=P(ROW%,COL%) 'relax the point

13160 A=ABS(P(ROW%+1,COL%))

13170 C=ABS(P(ROW%,COL%+STP%))

13180 PNEW=(1-OMEGA)*POLD+OMEGA*.25*(A+B+C+D)

13190 P(ROW%,COL%)=PNEW

13200 IF PNEW<1 THEN PNEW=1: P(ROW%,COL%)=1 'avoid neg values

13210 '

13220 DELTAP=ABS(POLD-PNEW)/POLD 'check for max change in P

13230 IF DELTAP>DELTAPMAX THEN DELTAPMAX=DELTAP

13240 '

13250 IF COL%=X1% THEN ENERGY=ENERGY+(PNEW-B)^2: GOTO 13280

13260 IF ROW%=Y1% THEN ENERGY=ENERGY+(PNEW-D)^2: GOTO 13280

13270 ENERGY=ENERGY+(PNEW-B)^2+(PNEW-D)^2'term in the energy

13280 NEXT COL%

13290 NEXT ROW%

13300 '

13310 '

13320 ENERGY=ENERGY/(2*NX%*NY%) 'energy per unit area

13330 DELENERGY=ENERGY-OLDE

13340 IF ITERATION%=1 THEN DELENERGY=0: OLDDELP=0

13350 '

13360 GOSUB 7000 'put new P on screen

13370 LOCATE 24,13,0: PRINT USING "###";ITERATION%;

13380 LOCATE 24,36,0: PRINT USING "##.######";DELTAPMAX;

13390 LOCATE 24,71,0: PRINT USING "##.######";OLDDELP;

13400 LOCATE 25,10,0: PRINT USING "###.######";ENERGY;

13410 LOCATE 25,43,0: PRINT USING "+##.######";DELENERGY;

13420 '

13430 RETURN

13440 '

14000 '************************************************************************

14010 'subroutine to display options

14020 'input variables: SUBSAVE%

14030 'output variables: BC%, BCSAVE%, CLR%, LATTICE%, LSAVE%, OMEGA%,

14040 ' PSAVE%, SUBL%, SUBSAVE%

14050 'global variables: none

14060 'local variables: A$, B$, C$, D$, E$

14070 '************************************************************************

14080 CLS: CLR%=-1

14090 '

14100 LOCATE 1,28 'end command

14110 INPUT; "Do you wish to end (y/n)";A$

14120 IF A$="y" OR A$="n" THEN GOTO 14170

14130 LOCATE 2,36: BEEP

14140 PRINT "Try again";

14150 LOCATE 1,1: PRINT SPACE$(79);

14160 GOTO 14100

14170 IF A$="y" THEN END

14180 '

14190 LOCATE 5,24 'change Omega command

14200 INPUT; "Do you wish to change Omega (y/n)";B$

14210 IF B$="y" OR B$="n" THEN GOTO 14260

14220 LOCATE 6,36: BEEP

14230 PRINT "Try again";

14240 LOCATE 5,1: PRINT SPACE$(79);

14250 GOTO 14190

14260 IF B$="y" THEN OMEGA%=-1 ELSE OMEGA%=0 'set Omega flag

14270 '

Page 110: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

14280 LOCATE 9,18 'change lattice size command

14290 INPUT; "Do you wish to change the lattice size (y/n)";C$

14300 IF C$="y" OR C$="n" THEN GOTO 14350

14310 LOCATE 10,36: BEEP

14320 PRINT "Try again";

14330 LOCATE 9,1: PRINT SPACE$(79);

14340 GOTO 14280

14350 IF C$="y" THEN LATTICE%=-1 ELSE LATTICE%=0 'set lattice flag

14360 IF LATTICE% THEN SUBSAVE%=0: RETURN

14370 '

14380 LOCATE 13,34: PRINT "Do you wish to"; 'command to change bound. cond

14390 LOCATE 15,1

14400 PRINT "1)preserve the boundary conditions and start again";

14410 PRINT " (useful for trying new OMEGA)";

14420 LOCATE 16,18

14430 PRINT "2)change boundary conditions and start again";

14440 LOCATE 17,3

14450 PRINT "3)change boundary conditions (starting from current b.c.)";

14460 PRINT " and keep current PHI";

14470 LOCATE 19,29

14480 INPUT; "Enter your choice (1-3)";D$

14490 IF D$="1" OR D$="2" OR D$="3" THEN GOTO 14540

14500 LOCATE 20,36: BEEP

14510 PRINT "Try again";

14520 LOCATE 19,1: PRINT SPACE$(79);

14530 GOTO 14470

14540 IF D$="1" THEN BC%=0: PSAVE%=0: IF SUBSAVE% THEN SUBL%=-1: RETURN

14550 IF D$="1" THEN RETURN

14560 IF D$="3" THEN BC%=-1: PSAVE%=-1: SUBSAVE%=0: RETURN

14570 '

14580 LOCATE 23,11

14590 INPUT; "Do you wish to 1)begin from current b.c. or 2)start fresh";E$

14600 IF E$="1" OR E$="2" THEN GOTO 14640

14610 BEEP: LOCATE 23,1

14620 PRINT SPACE$(80);

14630 GOTO 14580

14640 IF E$="1" THEN LATTICE%=-1: BCSAVE%=-1: PSAVE%=0: SUBSAVE%=0

14650 IF E$="2" THEN LATTICE%=-1: LSAVE%=-1: PSAVE%=0: SUBSAVE%=0

14660 RETURN

14670 '

15000 '************************************************************************

15010 'subroutine to display the header screen

15020 'input variables: none

15030 'output variables: GRAPHICS%, MONO%

15040 'global variables: none

15050 'local variables: G$, M$, ROW%

15060 '************************************************************************

15070 SCREEN 0: CLS: KEY OFF 'program begins in text mode

15080 '

15090 LOCATE 1,30: COLOR 15 'display book title

15100 PRINT "COMPUTATIONAL PHYSICS";

15110 LOCATE 2,40: COLOR 7

15120 PRINT "by";

15130 LOCATE 3,33: PRINT "Steven E. Koonin";

15140 LOCATE 4,14

15150 PRINT "Copyright 1985 by Addison-Wesley Publishing Company";

15160 '

15170 LOCATE 5,10 'draw the box

15180 PRINT CHR$(201)+STRING$(59,205)+CHR$(187);

Page 111: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

15190 FOR ROW%=6 TO 19

15200 LOCATE ROW%,10: PRINT CHR$(186);

15210 LOCATE ROW%,70: PRINT CHR$(186);

15220 NEXT ROW%

15230 LOCATE 20,10

15240 PRINT CHR$(200)+STRING$(59,205)+CHR$(188);

15250 '

15260 COLOR 15 'print title, etc.

15270 LOCATE 7,36: PRINT "EXAMPLE 6";

15280 COLOR 7

15290 LOCATE 10,22: PRINT "Laplace's equation in two dimensions"

15300 LOCATE 13,36: PRINT "**********"

15310 LOCATE 15,26: PRINT "Type 'e' to end while running"

15320 LOCATE 16,23: PRINT "Type ctrl-break to stop at a prompt"

15330 '

15340 LOCATE 19,16: BEEP 'get screen configuration

15350 INPUT "Does your computer have graphics capability (y/n)";G$

15360 IF LEFT$(G$,1)="y" OR LEFT$(G$,1)="n" GOTO 15390

15370 LOCATE 19,12: PRINT SPACE$(58): BEEP

15380 LOCATE 18,35: PRINT "Try again,": GOTO 15340

15390 IF LEFT$(G$,1)="y" GOTO 15420

15400 GRAPHICS%=0: MONO%=-1

15410 RETURN

15420 GRAPHICS%=-1

15430 LOCATE 18,15: PRINT SPACE$(55)

15440 LOCATE 19,15: PRINT SPACE$(55)

15450 LOCATE 19,15: BEEP

15460 INPUT "Do you also have a separate screen for text (y/n)";M$

15470 IF LEFT$(M$,1)="y" OR LEFT$(M$,1)="n" GOTO 15490 'error trapping

15480 LOCATE 18,35: PRINT "Try again,": GOTO 15440

15490 IF LEFT$(M$,1)="y" THEN MONO%=-1 ELSE MONO%=0

15500 '

15510 LOCATE 21,14

15520 PRINT "This program uses the iterative relaxation method to";

15530 LOCATE 22,17

15540 PRINT "solve an elliptic partial differential equation"

15550 LOCATE 23,8

15560 PRINT "(viz. Laplace's equation) with user defined boundary conditions";

15570 LOCATE 25,31,1: BEEP

15580 PRINT "Type c to continue";

15590 IF INKEY$<>"c" THEN GOTO 15590

15600 LOCATE ,,0

15610 RETURN

15620 '

16000 '************************************************************************

16010 'subroutine to switch from mono to graphics screen

16020 'input variables: none

16030 'output variables: none

16040 'global variables: none

16050 'local variables: none

16060 '************************************************************************

16070 DEF SEG=0

16080 POKE &H410, (PEEK(&H410) AND &HCF) OR &H10

16090 SCREEN 1,0,0,0: SCREEN 0: WIDTH 80: LOCATE ,,1,6,7

16100 RETURN

16110 '

Ushtrime

Page 112: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

1. Zbatoni programin e mwsipwrm me kwto kushte kufitare :

a) njw pikw me potencial tw ndryshwm nga ai i kufirit tw jashtwm,.

b) dy pika simetrike me ptencial tw ndyshwm nga ai i kufirit tw jashtwm

c) Njw katror i vogwl brenda zonws qw ka potencial konstant tw ndryshwm nga kufiri i

jashtwm.

2. Studioni efektin e ndryshimit tw parametrit tw relaksacionit ( ) pwr vlera tw ndryshme tw

tij dhe efektin e diskretizimit tw zonws mw imwt.

3. Modifikoni programin pwr kushte kufitare tw tipit Neuman nw kufinjtw e zonws dhe nw

zona tw vogla katwrkwndwshw brenda zonws.

4. Modifikoni programin nw mwnyrw qw tw zgjidhet ekuacioni i Puasonit, pra qw lejon njw

shpwrndarje ngarkese brenda zonws.

5. Modifikoni programin pwr rasin e njw gjeometrie tjetwr, ku tw pwrdoren kordinatat

cilindrike . Merrni njw kondensator cilindrik dhe studioni shpwrndarjen e potencialit

brenda pllakave tw kondensatorit dhe krahasojeni me rezultatin analitik (nga kursi i

Fizikws). Studioni rastin kur pllakat e kondensatorit afrohen shumw ose largohen shumw.

4.8 Disa ekuacione tw mirwnjohur

a. Ekuacioni i pwrhapjes sw valwve

Njw ekuacion tipik hyperbolik wshtw ekuacioni diferencial i pwrhapjes sw valwve. Nw

rastin njw dimensional ai mund tw shkruhet :

2

2

22

2

u

tv

u

x (8.1)

ku u(x,t) wshtw funksioni valor (variabli i varur) dhe v wshtw shpejtwsia e pwrhapjes sw

valwve qw zakonisht merret konsatnte e njohur. Ky ekuacion mund tw rishkruhet si nw

formwn e dy ekuacioneve tw rendit tw parw :

r

tv

s

xs

tv

r

dx

(8.2)

ku :

r = v· u/ x dhe s = u/ t (8.3)

Po tw shwnojmw u vektorin dydimensional qw ka pwr elementw r dhe s dhe F matricwn dy-

dimensionale qw ka pwr elemente:

F(u)= 0

0 -

v

vu (8.4)

atwhere tw dy ekuacionet (8.2) sillen nw njw ekuacion vektorial diferencial tw rendit tw parw

u F u

t

( )

x (8.5)

ky ekuacion njihet si ekuacioni fluksit konservativ.Njw rast i veçantw i tij wshtw ekuacioni

skalar :

u

tv

u

x (8.6)

ku v wshtw konstante. Zgjidhja e pwrgjithwshme analitike e kwtij ekuacioni wshtw:

u = f (x-v·t) (8.7)

Page 113: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

ku f wshtw njw funksion çfardo. Por zgjidhja numerike qw do trajtojmw kwtu mund tw

shwrbejw pwr çdo sistem ekuacionesh tw formws (8.5). Pwrafrojmw numerikisht derivatet qw

hyjnw nw ekuacionin (8.6):

u

x

u u

tO t

j n

j

n

j

n

,

( )

1

(8.8)

u

x

u u

xO x

j n

j

n

j

n

,

( )1 1 2

2 (8.9)

mw shwnimet: ujn = u(tn , xj) , xj = x0 + j x (j=0,1,2...J) , tn = t0 + n t (n=0,1,2...N).

Ekuacioni (8.6) nw pwrafrimin e diferencave tw fundme do shkruhej:

u u

tv

u u

x

j

n

j

n

j

n

j

n1

1 1

2 (8.10)

Por kjo formulw jep rezultate jo tw qwndrueshme pwr funksione qw oshilojnw . Nqse do ta

parqesnim nw trajtwn komplekse :

u ej

n n ikj x (8.11)

ku k wshtw numwr valor real dhe (k) kompleks (faktori i amplifikimit). Nwse moduli i tij do

ishtte | (k)|>1 atwhere zgjidhja do ishte e paqwndrueshme sepse do jepte terma qw rriten

eksponencialisht. Po tw zevendwsojmw (8.11) tek (8.10), pasi pjestojmw me n ( nw fuqi n) ,

marrim:

(k)=1 - i·sin(k x)·(v t / x) (8.12)

moduli i tw cilws wshtw mw i madh se 1 pwr çdo k .

Pwr ta pwrmirwsuar algoritmin tek formulat e derivimit numerik kohor (8.8) nw vend tw

ujn do tw marrim mesataren : ½ (uj+1

n + uj-1

n) dhe ekuacioni i diferencave tw fundme (8.10)

bwhet:

u u uv t

xu uj

n

j

n

j

n

j

n

j

n1

1 1 1 1

1

2 2 (8.13)

Duke zevendwsuar kwtu paraqitjen (8.11) , gjejmw faktorin e amplifikimit :

= cos (k x) - i·sin(k x)·(v t / x) (8.14)

Qw zgjidhja tw jetw stabwl , nga kushti | |2 1 , gjemw kriterin e ashtuquajtur tw Courant:

|v|· t / x 1 (8.15)

Ky kriter zbatohet gjatw diskretizimit tw ekuacioneve nw zonat hapwsirw-kohw edhe nw

rastin kur kemi dy ekuacione skalare ose ekuacionin vektorial (8.5)

b) Ekuacioni i difuzionit

Ekuacioni i difuzionit wshtw i tipit parabolik, nw rastin me njw kordinatw hapsinore ai

shkruhet :

u

t xD

u

x (8.16)

ku D ( 0) wshtw koeficienti i difuzionit.Nw rastin kur D wshtw konstant , ekuacioni shkruhet:

u

tD

u

x

2

2 (8.17)

Ky ekuacion mund tw dikretizohet nw formwn:

u u

tD

u u u

x

j

n

j

n

j

n

j

n

j

n1

1 1

2

2 (8.18)

Page 114: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

Duke zevendwsuar kwtu u nw formwn (8.11), gjejmw qw faktori i amlifikomit wshtw :

14

22

2D t

x

k xsin (8.19)

Kushti qw moduli i tij tw jetw | | 1, sjell nw kushtin :

2

12

D t

x (8.20)

i cili duhet patur nw konsideratw gjatw diskretizimit tw zonws sw variablave tw pavarur ( t

dhe x). Zakonisht koha e difuzionit nwpwr hapin hapwsinor wshtw e rendit 2/D .

Por ne jemi tw interesuar nw modelimin e difuzionit me hapa shumw mw tw vegjwl x << .

Nwse kufizohemi nw hapa kohorw qw kwnaqin (8.19) atwhere duhen kryer shumw hapa

kohorw para se tw kemi ndryshime hapwsinore . Prandaj nw diskretizimin e ekuacionit (8.17)

mund tw pwrdorim formwn:

u u

tD

u u u

x

j

n

j

n

j

n

j

n

j

n1

1

1 1

1

1

2

2 (8.21)

ku ana e djathtw wshtw vlerwsuar jo nw intervalin e n - tw kohor por nw intervalin e n+1 -tw,

ose mund pwrdorim kombinimin e tw dy formave (9.18) me (8.21)

u u

t

D u u u u u u

x

j

n

j

n

j

n

j

n

j

n

j

n

j

n

j

n1

1 1 1

1 1

1

1

22

2 2( ) ( ) (8.22)

Nw rastin kur D nuk wshtw konstant, pra D = D(x) , duke zevendwsuar variablin

y=dx

D x( ), atwhere ekuacioni

u

t xD x

u

x( ) bwhet

u

t D y

u

x

1 2

2( ) . Ky ekuacion

ka formwn e ekuacionit (9.17) vetwm se tani duhet diskretizuar edhe D(y) . Kwshtu qw kushti

i stabilitetit tw zgjidhjes numerike (8.20) bwhet :

tD y

j

jmin

2

2 (8.23)

Nwse forma analitike e D(x) nuk njihet, mund tw pwrdoret diskretizimi:

u u

t

D u u D u u

x

j

n

j

n

j j

n

j

n

j j

n

j

n1

1 2 1 1 2 1

2

/ /( ) ( ) (8.24)

ku Dj+1/2=D(xj+1/2).

c) Ekuacioni i Shredingerit

Ekuacioni kohor i Shredingerit nw rastin njw dimensional shkruhet:

ix x

V x2

2( ) (8.25)

(wshtw zghedhur konstantja e Plankut h 1 dhe masa e grimcws m=1/2). Jepen kushtet

fillestare (x,t=0) dhe kushtet kufitare : 0 kur x . Diskretizimi i ekuacionit kur

pwrfarimi kohor wshtw i rendit tw parw sjell nw ekuacionet :

it x

Vj

n

j

n

j

n

j

n

j

n

j j

n

1

1

1 1

1

1

2

12

( ) (8.26)

Page 115: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

Vwshtirwsia e kwtij ekuacioni wshtw se futet njwsia imagjinare. Prandaj nw kompilatorwt qw

nuk pwrdorin njwsinw imagjinare si Basic duhen ndarw ekuacionet veç pwr pjeswn reale dhe

veç pwr pjeswn imagjinare tw funksionit valor . Kwtu nuk po ndalemi, pasi pwr ekuacionin

e Shredingerit gjenden subrutina tw gatwshme nw gjuhwn Fortran.

4.9 Metoda tw tjera

Kwtu do tw pwrmendim dy metoda tw tjera qw pwrdoren nw zgjidhjen e PDE , pa i trajtuar

kwto metoda.

Sw pari, pwrmendim metodwn e transformimit Furje. Nw kwto metodw variablat e varur

shkruhen si seri Furje duke i konsideruar ata si periodikw me periodw sa pwrmasat e zonws (

dimensionet hapwsinore pwr variabla tw pavarur hapsinorw dhe intervali maksimal i kohws

deri ku kwrkohet zgjidhja numerike) . Zwvwndwsimi i serive nw ekuacionet diferencialw me

derivate tw pjeswshwm , merren relacione algjebrike midis aplitudave tw zbwrthimit Furje nw

pikat fqinje tw rjetws sw variablave tw pavarur.

Sw dyti do tw pwrdorim metodwn e elementeve tw fundwm , e cila ka gjetur sot zbatim

shumw tw gjerw dhe pwr tw cilwn gjenden subrutina tw gatwshme. Nw kwtw metodw

gjendet funksionali nga ekstremizimi i tw cilit rjedh ekuacioni diferencial me derivate tw

pjeswshwm dhe bwhet diskretizimi i zonws sw variablave tw pavarur me elemente tw

fundwm qw kanw formw e pwrmasa variabwl (forma e tyre zakonisht merret trekwndore) .

Brenda elementeve tw fundwm konsiderohet qw varibli i varur ndryshon linearisht nw lidhje

me variablat e pavararur duke gjetur koeficientwt e linearitetit nga kushti qw nnw nyjet e

elementeve fqinjw tw merren tw njwjta vlera tw variablit tw varur. Funksionali do sillet nw

shumwn e integrimeve brenda secilit element ( integral qw zgjidhet meqwnswse varwsia

brenda elementeve wshtw e njohur dhe integrimi do shprehej nwpwrmjet vlerave tw variablit

nw nyjet ) dhe kushti ekstremumit tw funksionalit nw lidhje me vlerat e varaiblit nw nyjet e

elementeve do tw çonte nw bashkwsinw e ekuacioneve algjebrikw matrica kryesore e anws sw

djathtw njihet dhe zgjidhet me metoda tw njohura.

Page 116: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

114

PJESA II

ZBATIME NE FIZIKE

Kapitulli I

MEKANIKA

1.1 Hyrje

Në këtë kapitull do të trajtohen disa përdorime të kompjuterit në mekanikë. Do fillojmë me

një nivel të thjeshtë dhe do vazhdojmë me ngritjen e këtij niveli derisa nga fundi i kapitullit të

arijmë në probleme të vështira të mekanikës klasike. Gjatë kësaj rruge ju do mësoheni me

gjuhën e logaritjeve algoritmike me kompjuter. Kapitulli fillon me lëvizjen një dimensionale

dhe kalon shpejt tek lëvizja e satelitëve. Ai vazhdon me diskutimin e problemit të tre-trupave

dhe disa fenomeneve të shpërhapjes klasike dhe mbyllet me diskutimin e oshilatorëve te

lidhur. Të gjitha shëmbujt janë zbatime të algoritmit F=m a.

1.2 Relacionet kryesore

Në lëvzjet mekanike të sistemeve klasike ,relacioni bazë është ligji i dytë i Njutonit,

F =m a

Disa lloje forcash më të njohura janë :

F = - G M m r /r3

F = -m g dhe F = -k y

Ne do përdorim si përcaktim të shpejtësisë : v r / t për t të vogla dhe për nxitimin :

a v / t për t të vogla.

Njohuri të përgjithëshme mbi ligjet e Keplerit do jenë të nevojëshme më tej si edhe një kuptim

mbi simetrinë dhe si ndikon ajo në zgjidhjet do të jetë i dobishëm.. Konceptet bazë të fizikës

janë sigurisht të domosdoshme sepse ato janë konsideruar të njohura.

1.3 Lëvizja një-dimensionale

Problemi kryesor në mekanikën klasike është : jepet një forcë F ( r , v , t ) ,e cila mund të

varet nga pozicioni, shpejtësia, dhe koha, si edhe kushtet fillestare për pozicionet dhe

shpejtësitë, të gjendet nxitimi a = F / m dhe prej nxitimit të përcaktohet trajektorja r (t ) e

grimcës. Ky problem në disa raste mund të zgjidhet analitikisht dhe të nxirret varësia kohore e

pozicionit si funksion i kohës . Një rrugë tjetër për zgjidhjen e problemit është procedura hap-

pas-hapi dhe kjo rrugë është e përgjithëshme sepse përdoret si në rastet kur problemi ka

zgjidhje analitike edhe kur nuk ka , por sigurisht duke përdorur kompjuterin i cili kryen shumë

operacione aritmetike që duan kohë të madhe të kryhen me dorë. Metoda hap-pas-hapi

konsiston në këto veprime:

1. Fillohet në pikën fillestare (pozicioni fillestar) dhe me shpejtësinë fillestare.

2. Zgjidhet një hap kohor t .

3. Llogaritet forca F dhe prej saj nxitimi a .

4. Llogaritet ndryshimi i shpejtësisë v = a t dhe ndryshimi i pozicionit r = v t .

Page 117: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

115

5. Shpejtësia e re dhe pozicioni i ri janë v + v dhe r + r , në kohën e re t + t .

6. Duke qenë në pikën tjetër të trajektores kthehemi tek hapi 3 dhe përsërisim 3,4,5 aq herë

sa të duam.

Duke përdorur këtë procedurë, ju çvendosni grimcën përgjatë trajektores me një hap çdo

herë. Procedura do të jetë e saktë n.q.se t do të ishte pambarimisht i vogël; me që t është e

fundme, metoda mund të jetë vetëm e përafërt. Megjithatë, përafrimet mund të bëhen mjaft të

mira duke përdorur një t mjaft të vogël dhe një kompjuter që ka saktësinë 6 deri në 10

shifra. Nëqoftëse t bëhet tejet i vogël , gabimet ,që vijnë nga fakti që kompjuteri ka saktësi të

fundme, bëhen të mëdha.

Më poshtë jepen programet në gjuhët BASIC dhe FORTRAN , kur forca që vepron mbi

grimcën është forcë gravitacionale uniforme në drejtimin y.

PROGRAMI NE BASIC PROGRAMI NE FPRTRAN

10 Y=100 Y=100.

20 V=5 V=5.

30 M=2 AM=2.

40 D=.02 DT=.1

100 F=-M*9.8 10 F= -M*9.8

110 A=F/M A=F/AM

120 V=V+A*D 16 V=V+A*DT

130 Y=Y+V*D 17 Y=Y+V*DT

140 T=T+D T=T+DT

150 PRINT T,Y PRINT 100,T,Y

160 IF T<5 THEN 100 18 IF (T-5.) 10,20,20

999 END 20 STOP

100 FORMAT (1X,2F 10.4)

END

Dy reshtat e parë vendosin kushtet fillestare, variablat D, DT janë hapi kohor t . Ligji i

forcës (në këtë rast F= - mg ) është shkruar në reshtin 100 (ose komanda 10 në programin

Fortran); nxitimi është llogaritur si F/M . Shpejtësia e re, pozicioni i ri, dhe koha e re T

llogarien në reshtat 120 - 140 (16,17 e pasonjësi në programin Fortran), në këto reshta vlerat

e vjetra zëvëndësohen me vlerat e reja duke u shtuar vlerave të vjetra shtesat përkatëse V (=a

t ), Y (=V t ), t . Instruksionet PRINT printojnë vlerat ndërkohë që programi përsërit

llogaritjet derisa grimca të ketë udhëtuar për 5 s. Forca mund të ndryshohet me një ligj çfardo

(një-dimensionale) si p.sh. -K*Y siç është në rastin e një suste.

Metoda e mësipërme quhet metoda e Ejlerit. ju mund të arrini ne përafrim më të mirë

duke zvogëluar më tej t (D ose DT në program). Por sa më i vogël hapi kohor aq më shumë

operacione dhe kohë duhet në kompjuter. Ka një rrugë të thjeshtë për ta kapërxyer këtë

vështirësi. duke përdorur një metodë konvergjence më të latrtë që konsiston në përgjysmimin

e hapit fillestar. Këtu përdoret një shpejtësi v në mesin e hapit kohor nga t në t+ t kur

llogaritet pozicioni i ri. Duke ruajtur nxitimet në një hap me pozicionet , atëhere automatikisht

nxitimet janë të llogaritur nëpërmjet shpejtësive në gjysmën e intervalit kohor. Ka një teoremë

Page 118: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

116

të së mesmes sipas së cilës ekziston një pikë e intervalit (t , t+ t ) në të cilën derivati është sa

pjerësia e kordën që bashkon pikën y me pikën y + y (në se funksioni y( t ) është i

lëmuar) . Ne nuk e dimë këtë pikë , por zakonisht vlera e derivatit (në rastin tonë shpejtësia)

afër qendrës së intervalit është një përafrim më i mirë se vlera e derivatit në fillim të intervalit.

Duke zgjedhur shpejtësinë në pikën e mesit të intervalit (në t +1/2 t ) duhet të shtohen në

programet e mësipërme këto tre reshta:

112 IF T>0 THEN 120 IF (T) 15,15,16

114 V=V+A*D/2 15 V=V+A*DT/2

116 GOTO 130 GOTO 17

Këto hapa e ndryshojnë v me 1/2 t për herën e parë në ciklin e integrimit. Pas kësaj, duke

përdorur t të plotë në çdo llogaritje shpejtësie ruhet gjysëmhapi i shpejtësisë.

Një shtesë tjetër në program shmang printimin e rezultatit në çdo llogaritje të kompjuterit.

Me këto tre reshta shtesë në program sigurohet printimi i rezultatit (çdo 0.2 s) 10 herë më

rallë se llogaritjet e pozicionit :

142 DO=DO+D TPRIN=TPRIN+DT

144 DO<.2 THEN 160 IF (TPRIN-.2) 18,19,19

146 DO=0 19 TPRIN=0.

1.4 Lëvizja dy-dimensionale

Lëvizja dy-dimesionale mund të konsiderohet si 2 lëvizje një-dimensionale në drejtime

pingule. Programi 2DFMA trgon një rrugë se si llogariten integrimet hap-pas-hapi të

ekuacionit dy-dimensional : F=m a . Për ilustrim është marë lëvizja e satelitit ku ligji i forcës

është ai gravitacional : F=-m r / r3

ku njësitë janë zgjedhur në mënyrë që konstanja GM=1.

Në program përdoret nxitimi ,prandaj forca vetë nuk është llogaritur. Rezultatet e llogaritjeve

janë orbitat e satelitit. Figura 1.1 tregon një familje orbitash të llogaritura me procedurën e

treguar në programin 2DFMA . Të gjitha orbitat fillojnë në të njëjtën pikë (-1,0) por që kanë

shpejtësi të ndryshme fillestare (0,vy ) . Pjestarët e kësaj familjeje janë elipsa dhe një rreth që

i takon vy =1 .

2DFMA.BAS 2DFMA.FOR

10 X = -1 20 Y = 0 30 V1 = 0 40 V2 = 1

inicializimi

X = -1. Y = 0. VX = 0. VY = 1.PRNT = 0.

inicializimi

50 D=.01 hapi kohor, t DELTAT=.005 hapi kohor,1/2 t

60 R3 = (X * X + Y *Y) 1.5 70 A1 = -X / R3 80 A2 = -Y / R3

nxitimi

10 RADIUS SQRT(X * X Y *Y) RCUBED = RADIUS**3 XACCEL = -X / RCUBED YACCEL = -Y / RCUBED

nxitimi

90 IF T > 0 THEN 130 100 V1 = V1+ A1* D / 2110 V2 = V2 + A2 * D / 2120 GOTO 150

gjysemhapi fillestar VX = VX + XACCEL* DELTATVY = VY + YACCEL* DELTAT

shp. e re

Page 119: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

117

130 V1=V1+A1*D vX i ri DELTAT=.01 hapi i plote kohor

140 V2=V2+A2*D vy i ri X=X+VX*DELTAT x i ri

150 X=X+V1*D x i ri Y=Y+VY*DELTAT y i ri

160 Y=Y+V2*D y i ri T= T+DELTAT koha e re

170 T=T+D koha e re

180 T0 = T0 + D 190 IF T0 <.5 THEN 220200 T0 = 0210 PRINT T,X,Y

grupi i printimit

PRNT = PRNT + DELTAT IF (PRNT-.5) 12,11,1111 PRNT = 0. PRINT 101,T,X,Y

grupi print.

220 IF T<10 THEN 60 rikthim per hapin t. 12 IF (T-10.) 10,20,20 rikthim per hapin t

230 END 101 FORMAT(1X,3E15.5)

20 STOP

END

Figura 1.1 Familja e orbitave rrotull qendrës së forcave gravitacionale. Të gjitha trajektoret

nisin nga pika S (-1,0) me shpejtësitë 0.8, .9, 1, 1.1,1.2 dhe 1.3 në drejtimin y . Njësitë janë

zgjedhur në mënyrë që a = -r / r3 .

Me kurbat e paraqitura në figurën 1.1 mund të demonstrohen tre ligjet e Keplerit. I pari ,

orbitat janë elipse. Gjeni vatrën e dytë të elipsave nga simetria [qendra e forcave është në

pikën (0,0) ] ; llogaritni shumën e largësive nga pozicioni në orbitë deri në dy vatrat. Në se

shuma është konstant , atëhere trajektorja është elips me qendër të forcës në një nga vatrat. I

dyti, rezja e satelitit prej qendrës së fushës përshkon sipërfaqe të barabarta në intervale kohe të

barabarta.. Me që hapi kohor është i njëjtë , atëhere printoni sipërfaqen që përshkohet në cdo

hap. Kjo sipërfaqe është (për njësi kohe) 1/2 e prodhimit të bazës së trekëndëshit të përshkuar

me lartësinë e trekëndëshit, i cili është :

1/2 r x v = 1/2 [(y vz - z vy )2 + (z vx - x vz )

2 + (x vy - y vx )

2 ]

1/2

I treti , perioda në katror është proporcional me gjysëmboshtin e madh në kub. Matet

gjysëmboshti i madh i disa elipsave ; gjendet dyfishi i kohës që sateliti të përshkojë gjysmën e

elipsit (koha deri në ndryshimin e parë të shenjës së y ). Gjeni raportin (periodë në katror)2 /

Page 120: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

118

(gjysëmboshti i madh)3 për disa orbita dhe krahasoni (ju mund ta gjeni këtë vlerë edhe

analitikisht) .

1.5 Lëvizja e tre-trupave

Strategjia e përdorur për zgjidhjen e problemit të dy trupave mund të përdoret edhe për tre

trupa ( ose për n trupa siç thuhet në kapitullin e fizikës statistike ). Problemi i lëvizjes së tre

trupave është i komplikuar analitikisht (deri më sot nuk ka zgjidhje analitike të

përgjithëshme); prandaj për të testuar programin duhet të kufizohemi në rastin e lëvizjes

simetrike në plan të tre-trupave. Metoda algoritmike është krejt e përgjithëshme ; pra mund të

fillojë lëvizja e tre trupave në mënyrë krejt çfardo dhe lëvizja do të jetë zakonisht e

komplikuar.

Programi 3BODY tregon një mënyrë për kryerjen e llogaritjeve. Matricat R( ) dhe V( )

përmbajnë pozicionet dhe shpejtësitë e të tri trupave; masat ruhen në vektorin M( ). Vlerat

fillestare janë zgjedhur për thjeshtësi : të tri masat të barabarta dhe nisen nga kulmet e një

trekëndëshi barabrinjës me shpejtësi të barabarta tangent me rrethin që brëndashkruan

trekëndëshin. Përsëri është përdorur një gjysëm-hap fillestar. Forcat e bashkëveprimit

llogariten në çifte Fij ( forca që vepron mbi trupin e i-të nga trupi i j-të , që është e barabartë

me -Fji ). Rezultatet printohen jo për çdo njësi kohore.

Figura 1.2 Orbitat e lëvizjes së tre-

trupave. Masat e trupave janë të njëjta;

pozicionet fillestare ndodhen në kulmet e

një trkëndëshi barabrinjësh; shpejtësitë

fillestare janë pingul me drejtimin për në

qendër të trekëndëshit.

Figura 1.2 tregon një bashkësi orbitash që dalin nga llogaritjet. Kur madhësitë e vlerave

fillestare janë zgjedhur saktë, të tre trupat lëvizin në të njëjtin rreth . Ju mund ta tregoni këtë

analitikisht duke barazuar m v2 /r me forcën rezultante që vepron mbi sejcin trup. Kur

shpejtësitë fillestare nuk zgjidhen pingul me drejtimin prej qendrës së trekëndëshit, orbitat

rezultojnë shumë të deformuara.

3BODY.BAS

100 DIM R(3,3),V(3,3),M(3)

110 READ M(1),M(2),M(3) masat e tre trupave

120 DATA 1,1,1

130 D0=.02 hapi kohor t

140 D=D0/2 hapi kohor fillestar t/2

Page 121: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

119

150 READ R(1,1),R(2,1),R(3,1)160 DATA 1,-1,0170 READ R(1,2),R(2,2),R(3,2)180 DATA 0,0,1.73205190 READ R(1,3),R(2,3),R(3,3)200 DATA 0,0,0

pozicionet fillestare (kulmet e trekëndëshit)

210 READ V(1,1),V(2,1),V(3.1)220 DATA .353553,.353553,-.707107230 READ V(1,2),V(2,2),V(3,2)240 DATA .612372,-.612372,0250 READ V(1,3),V(2,3),V(3,3)260 DATA 0,0,0

shpejtësitë fillestare

270 FOR I = 1 TO 3280 FOR J = I + 1 TO 3290 X = R(J,1) - R(I,1)300 Y = R(J,2) - R(I,2)310 Z = R(J,3) - R(I,3)320 R = SQR(X * X + Y * Y + Z * Z)

F1 = -M(I) * M(J) * X / (R * R * R)340 F2 = -M(I) * M(J) * Y / (R * R * R)350 F3 = -M(I) * M(J) * Z / (R * R * R)

V(J,1) = V(J,1) + F1* D / M(J) 370 V(I,1) = V(I,1) - F1* D / M(I)

V(J,2) = V(J,2) + F2 * D / M(J) 390 V(I,2) = V(I,2) - F2 * D / M(I)

V(J,3) = V(J,3) + F3* D / M(J)

r

F

iriiri

v iriv iriv iri

ij

jy

iy

jz

ij

jx

ix

vv

330

360

380

400410 V(I,3) = V(I,3) - F3* D / M(I)

NEXT J430 NEXT I

v iri

shpejtësit ë e reja

iz

420

440 D=D0 rivendosja e hapit kohor t

450 FOR I = 1 TO 3460 FOR J = 1 TO 3470 R(I,J) = R(I,J) + V(I,J) * D480 NEXT J490 NEXT I

pozicionet e reja

500 T=T0+D koha e re

510 T0 = T0 + D520 IF T0 < 1 THEN 620530 T0 = 0540 PRINT "T =";T550 T0 = 0560 FOR I = 1 TO 3570 FOR J = 1 TO 3580 PRINT R(I,J),590 NEXT J600 PRINT610 NEXT I

grupi i printimit

620 IF T<10 THEN 270 rikthim për hapin tjetër t

630 END

3BODY.FOR

Page 122: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

120

DIMENSION RAD(3,3),VEL(3,3),FMASS(3)

DATA FMASS /1.,1.,1./ masat e tre trupave

TIMINT=.02 hapi kohor t

TIMI=TIMINT/2 hapi kohor fillestar t/2

DATA RAD(1,1),RAD(2,1),RAD(3,1) / 1.,-1.,0./ DATA RAD(1,2),RAD(2,2),RAD(3,2) / 0.,0.,1.73205 / DATA RAD(1,3),RAD(2,3),RAD(3,3) / 0.,0.,0./

pozicionet fillestare

DATA VEL(1,1),VEL(2,1),VEL(3.1)/.353553,.353553,-.707107 / DATA VEL(1,2),VEL(2,2),VEL(3,2)/.612372,-.612372,0./ DATA VEL(1,3),VEL(2,3),VEL(3,3) / 0.,0.,0./

shpejt. fillestare

DO 20 I = 1,2 DO 10 J = I +1,3 X = RAD(J,1) - RAD(I,1) Y = RAD(J,2) - RAD(I,2) Z = RAD(J,3) - RAD(I,3) R = SQRT(X * X + Y *Y + Z * Z)

FX = -FMASS(I) * FMASS(J) * X / (R * R * R) FY = -FMASS(I) * FMASS(J) *Y / (R * R * R) FZ = -FMASS(I) * FMASS(J) * Z / (R * R * R) VEL(J,1) = VEL(J,1) + FX *TIMI / FMASS(J) VEL(I,1) = VEL(I,1) - FX *TIMI / FMASS(I) VEL(J,2) = VEL(J,2) + FY *TIMI / FMASS(J) VEL(I,2) = VEL(I,2) - FY *TIMI / FMASS(I)

r

F

i rii ri

v i ri

ij

jy

ij

jx

ix

vv

v i riv i riv i ri

shpejtësit ë e reja

iy

jz

iz

10 VEL(J,3) = VEL(J,3) + FZ *TIMI / FMASS(J) VEL(I,3) = VEL(I,3) - FZ *TIMI / FMASS(I)

CONTINUE

20

TIMI=TIMINT rivendosja e hapit kohor t

DO 40 I = 1, 3 DO 30 J = 1,330 RAD(I,J) = RAD(I,J) + VEL(I,J) *TIMI40 CONTINUE

pozicionet e reja

TIM=TIM+TIMINT koha e re

TIM0 = TIM0 + TIMINT IF (TIM0 < -1.)60,50,5050 TIM0 = 0. PRINT 100,TIM DO 80 I = 1,380 PRINT 110,(RAD(I,J),J = 1,3)

grupi i pr imitint

60 IF (TIM-10.) 5,90,90 rikthim për hapin tjetër t

90 STOP

100 FORMAT(1X,3HT =,F10.6)

110 FORMAT(1X,3F10.6)

END

Page 123: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

121

1.6 Shpërhapja klasike

Një shembull interesant i shpërhapjes klasike është shpërhapja e elektroneve dhe

pozitroneve pikësore nga një model i thjeshtuar i atomit të hidrogjenit. Në këtë model

bërthama pozitive pikësore është e rethuar nga një re negative uniforme me densitet konstant

(elektroni). Ngarkesa totale e resë barazon ngarkesën pozitive të bërthamës pikësore. Përjashtë

resë (rethi me pika në figurën 1.3) , forca që vepron mbi pozitronin (ose elektronin) që afrohet

është zero. Në çdo pikë brënda resë, një pjesë e shtytjes midis pozitronit dhe bërthamës

pozitive është ekranizuar nga reja negative. Pra , mbetet shytja nga ngarkesa pozitive e

bërthamës pikësore e pakompensuar (ekranuar) nga reja negative. Disa trajektore të

pozitroneve janë treguar në figurën 1.3 . Nga figura të tilla (sigurisht duke vizatuar më shumë

trajektore në të) mund të numurohet numuri i pozitroneve të devijuar në intervalin e këndeve

0 - 10 , 10 -20 , etj.

Energjia=0.5

Figura 1.3 Trajektoret e pozitroneve të shpërhapur nga një atom i modeluar hidrogjeni.

Atomi është një bërthamë pikësore e rrethuar nga një re negative homogjene brenda rrethit të

vizatuar. Energjia kinetike fillestare është 0.5 për të 5 rastet e treguar në figurë me momente

këndore të ndryshme .

Figura 1.4 Trajektoret e elektroneve të shpërhapur nga një atom i modeluar

hidrogjeni. Trajektoret dallohen nga pozicioni fillestar y (parametri i goditjes)

i treguar në figurë.

Page 124: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

122

Figura 1.4 tregon disa trajektore të elektroneve të shpërhapur nga një atom hidrogjeni. Në

këtë rast grimcat që i afrohen atomit tërhiqen nga bërthama dhe trajektore me kthesa ku

elektrone që kthehen mbrapsht largohen nga atomi me që kanë energji pozitive, disa herë

elektroni duhet të bëjë disa spirale para se të largohet nga atomi siç tregohet në figurën 1.5.

Figura 1.5 Disa orbita të elektroneve të shpërhapur nga

atomi i modeluar i hidrogjenit. Energjia kinetike

fillestare e elektroneve është 0.25; kurbat janë të

shënuara nga pozicioni fillestar y i elektroneve.

Programi që kryen këto llogaritje mbi shpërhapjen është paksa më i komplikuar se programi

2DFMA . Në veçanti , një metodë me konvergjencë më të lartë duhet përdorur në mënyrë që

llogaritjet të jenë korekte edhe në pikat afër qendrës së forcës. Shpesh del më e dobishme të

përdoret një hap kohor variabël në mënyrë që impulsi F t në çdo hap të jetë afërsisht i njëjtë.

Programi SCAT është një nga rrugët e mundëshme për llogaritje.

Program SCAT.BAS

100 PRINT "vlerat fillestare x,y dhe energjia";

110 INPUT X, Y, E

115 REM X=-8,Y=.5,E=.5 disa vlera të mundëshme për input

120 Q = -1 q/m

130 V1 = SQR(2 * E) vx fillestare

140 V2 = 0 vy fillestare

150 B1=0 inicializimi

160 B2=0

170 B3=0

180 C1=0

190 C2=0

200 C3=0

210 DT = .005

220 R = SQR(X ^ 2 + Y ^ 2)

230 IF R > 1 THEN 430 në se është shumë larg, lere të ikë vetë

240 F1 = Q * (X / (R ^ 3) - X) ax i parë

250 G1 = Q * (Y / (R ^ 3) - Y) ay i parë

260 DT = .05 / (1 + SQR(F1 ^ 2 + G1 ^ 2)) hapi kohor t (variabël)

270 X1 = X + V1 * DT / 2

280 Y1 = Y + V2 * DT / 2

290 R = SQR(X1 ^ 2 + Y1 ^ 2) përafrimi polinomial i ax me :

300 F2 = Q * (X1 / (R ^ 3) - X1) b1+ b2 t + b3 ( t)2

310 G2 = Q * (Y1 / (R ^ 3) - Y1) dhe i ay me :

320 X1 = X + V1 * DT c1+ c2 t + c3 ( t)2

330 Y1 = Y + V2 * DT në çdo interval duke përdorur

340 R = SQR(X1 ^ 2 + Y1 ^ 2) vlerat në t, t+ ½ t , t+ t ;

Page 125: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

123

350 F3 = Q * (X1 / (R ^ 3) - X1) dhe pastaj integrimi i polinomeve

360 G3 = Q * (Y1 / (R ^ 3) - Y1)

370 B1 = F1

380 B3 = 4 * (B1 / 2 - F2 + F3 / 2) / (DT ^ 2)

390 B2 = 2 * (F2 - B1 - B3 * DT * DT / 4) / DT

400 C1 = G1

410 C3 = 4 * (C1 / 2 - G2 + G3 / 2) / (DT ^ 2)

420 C2 = 2 * (G2 - C1 - C3 * DT * DT / 4) / DT

430 X = X+V1*DT+B1*DT*DT/2+B2*DT*DT*DT/6+B3*(DT^4)/12 x i ri

440 Y = Y+V2*DT+C1*DT*DT/2+C2*DT*DT*DT/6+C3*(DT^4)/12 y i ri

450 V1 = V1 + B2 * DT * DT / 2 + B3 * DT * DT * DT / 3 + B1 * DT vx i ri

460 V2 = V2 + C2 * DT * DT / 2 + C3 * DT * DT * DT / 3 + C1 * DT vy i ri

470 T = T + DT koha e re

480 T0 = T0 + DT

490 IF T0 < .05 THEN 520 grupi i komandave për të vizatuar

500 T0 = 0 trajektoret në ekran. Në se doni vetëm të

505 X2% = INT(10 * X + 100) printoni rezultatet hiqen komandat grafike

506 Y2% = INT(10 * Y + 100) dhe reshti 510 lihet duke i hequr REM

510 REM PRINT T, X, Y

511 SCREEN 1

512 LINE (0, 100)-(200, 100)

513 LINE (100, 0)-(100, 200)

514 CIRCLE (100, 100), 10

515 PRESET (X2%, Y2%)

516 PSET (X2%, Y2%)

520 IF T < 15 THEN 150 kthim për hapin pasonjës t

530 PRINT

540 GOTO 100 kthim për trajektoren pasonjëse

550 END

Program SCAT.FOR

5 READ(5,110)X,Y,E vlerat fillestare x,y dhe energjia

QTOM = -1. q/m

VX = SQRT(2. * E) vx flestare

VY = 0. vy fillestare

TIM=0.

TPR=0.

10 AX1=0. INICIALIZIMI

AX2=0.

AX3=0.

AY1=0.

AY2=0.

AY3=0.

DT = .05 hapi kohor, t

R = SQRT(X * X + Y *Y)

IF (R -1.) 20,20,30 në se është shumë larg, lere të ikë vetë

20 F1X = QTOM * (X / (R *R*R) - X) ax i parë

F1Y = QTOM * (Y / (R *R*R) - Y) ay i parë

DT = .05 / (1. + SQRT(F1X*F1X + F1Y*F1Y)) hapi kohor t (variabël)

Page 126: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

124

X1 = X + VX * DT / 2.

Y1 = Y + VY * DT / 2.

R = SQRT(X1 *X1 + Y1 *Y1) përafrimi polinomial i ax me :

F2X = QTOM * (X1 / (R*R*R) - X1) ax1+ ax2 t + ax3 ( t)2

F2Y = QTOM * (Y1 / (R*R*R) - Y1) dhe i ay me :

X1 = X + VX * DT ay1+ ay2 t + ay3 ( t)2

Y1 = Y + VY * DT në çdo interval duke përdorur

R = SQRT(X1 *X1 + Y1 *Y1) vlerat në t, t+ ½ t , t+ t ;

F3X = QTOM * (X1 / (R*R*R) - X1) dhe pastaj integrimi i polinomeve

F3Y = QTOM * (Y1 / (R*R*R) - Y1)

AX1 = F1X

AX3 = 4. * (AX1 / 2. - F2X + F3X / 2.) / (DT*DT)

AX2 = 2. * (F2X - AX1 - AX3 * DT * DT / 4.) / DT

AY1 = F1Y

AY3 = 4. * (AY1 / 2. - F2Y + F3Y / 2.) / (DT *DT)

AY2 = 2. * (F2Y - AY1 - AY3 * DT * DT / 4.) / DT

X=X+VX*DT+AX1*DT*DT/2.+AX2*DT*DT*DT/6.+AX3*DT*DT*DT*DT/12. x i ri

Y=Y+VY*DT+AY1*DT*DT/2.+AY2*DT*DT*DT/6.+AY3*DT*DT*DT*DT/12. y i ri

VX = VX + AX1*DT+AX2 * DT * DT / 2. + AX3 * DT * DT * DT / 3. vx i ri

VY = VY + AY1*DT+AY2 * DT * DT / 2. + AY3 * DT * DT * DT / 3. vy i ri

TIM = TIM + DT koha e re

TPR = TPR + DT

IF (TPR-1.) 40,30,30 grupi i komandave për të printuar

30 TPR = 0.

PRINT 120,TIM,X,Y

40 IF (TIM-10.) 10,5,5 kthim për hapin pasonjës t

110 FORMAT(3F10.6)

120 FORMAT(1X,3F10.6) kthim për trajektoren pasonjëse

END

1.7 Lëvizja dy-dimensionale në një potencial të dhënë

Mund të zgjidhim edhe problemin e lëvizjes dy-(ose më shumë) dimensionale në një

potencial të dhënë V(r) në mënyrë analoge si kur jepet forca F(r). Zakonisht është më e

thjeshtë të gjesh potencialin se sa vetë forcën (veçanërisht në problemet e elektrostatikës).

Relacioni midis potencialit dhe forcës është F=-grad(V), ku gradienti është një vektor i cili në

kordinata karteziane ka përbërëset ( V/ x, V/ y, V/ z).

Kur problemi ka simetri sferike, pra kur potenciali varet vetëm nga r r (problemet me

fushë qendrore ), lidhja midis forcës dhe potencialit është më e thjeshtë :

F(r)=dV r

dr

( ) r

r

Në një program mund të gjendet derivati dV/dr numerikisht duke vlerësuar potencialin V në

dy pika (r dhe r+ r ) dhe duke pjestuar me r .

Disa shembuj të thjeshtë potencialesh që ndeshen shpesh në Fizikë janë : V(r)=- a/r ,

potenciali Kulonian për lgjin e forcës invers-proporcional me katrorin e largësisë ;

V(r)= - a exp(-r/r0 ) / r , potenciali i ekranizuar Kulonian ; V(r)=a/r12

- b/r6 , potenciali i

Lenard- Xhonsonit. a , b , r0 janë konstante që varen nga problemi konkret. Potenciali

Page 127: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

125

Kulonian është më i përshtatëshmi për problemet gravitacionale dhe ato elektrostatike me

ngarkesa pikësore. Potenciali i ekranizuar Kulonian del në problemet e sistemeve me shumë

elektrone. Ndërsa potenciali Lenard-Xhons përdoret në problemet e Fizikës molekulare dhe të

Fizikës së trupave të ngurtë.

Programi 2DV llogarit trajektoret dy-dimensionale në një potencial të dhënë V(r) .

programi 2DV.BAS

50 REM levizja ne potencialin V=1/r

100 DEF fnv (r) = -1 / r përcaktimi i funksionit potencial

110 DEF fnf (r) = -(fnv(r + .0001) - fnv(r - .0001)) / .0002 Forcë/masë

120 PRINT "vlerat fillestare x,y,vx,vy"; inicializimi

130 INPUT x, y, v1, v2

140 t = 0

150 t1 = 0

160 dt = 1 / 320 hapi kohor t

170 t0 = 15 koha finale

180 PRINT t, x, y, v1, v2

190 r = SQR(x ^ 2 + y ^ 2)

200 a = fnf(r)

210 a1 = a * x / r përbërëset e nxitimit

220 a2 = a * y / r

230 IF t > 0 THEN 270

240 v1 = v1 + a1 * dt / 2 gjysëm-hapi fillestar

250 v2 = v2 + a2 * dt / 2

260 GOTO 290

270 v1 = v1 + a1 * dt përbërëset e reja të nxitimit

280 v2 = v2 + a2 * dt

290 x = x + v1 * dt pozicioni i ri

300 y = y + v2 * dt

310 t = t + dt koha e re

320 t1 = t1 + dt

330 IF t1 < t0 / 320 THEN 360 grupi i vizatimit në ekran të trajektores,

340 t1 = 0 nëse nuk do vizatohen ato atëhëre hiqen komandat

341 x1 = INT(20 * x + 100) grafike dhe lihet vetëm reshti 350 duke hequr REM

342 y1 = INT(20 * y + 100)

343 SCREEN 1

344 LINE (0, 100)-(200, 100)

345 LINE (100, 0)-(100, 200)

346 PRESET (x1, y1)

347 PSET (x1, y1)

350 REM PRINT t, x, y, v1, v2

360 IF t < t0 THEN 190 rikthim për hapin pasonjës kohor

370 SCREEN 0

380 GOTO 120 rikthim për trajektoren tjetër

390 END

Programi 2DV.FOR

POTEN (R) = -1 / R potenciali V(r)

Page 128: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

126

F(r) = -(POTEN(R + .0001) - POTEN(R - .0001)) / .0002 forcë/masë

5 READ(5,100)X,Y,VX,VY INICIALIZIMI

IF (X-999.) 7,45,45

7 T = 0.

PRNTT = 0.

DELT = 1. / 32.0 t

ENDT = 6. koha finale

PRINT 101,T, X, Y, VX, VY

10 R = SQRT(X*X + Y*Y)

A = F(R)

AX = A * X / R përbërëset e nxitimit

AY = A * Y / R

IF (T) 15,15,20

15 VX = VX + AX * DELT / 2. gjysëm-hapi fillestar

VY = VY + AY * DELT / 2.

GOTO 25

20 VX = VX + AX * DELT përbërëset e reja të shpejtësisë

VY = VY + AY * DELT

25 X = X + VX * DELT pozicioni i ri

Y = Y + VY * DELT

T = T + DELT koha e re

PRNTT = PRNTT+ DELT grupi i printimit

IF *PRNTT-ENDT/16.) 40,30,30

30 PRNTT = 0.

PRNT 101,T,X,Y,VX,VY

40 IF (T-ENDT) 10,5,5

45 STOP

101 FORMAT(1X,5F10.4)

END

1.8 Oshilatorët e çiftuar

Si zbatim të fundit nga mekanika kemi zgjedhur oshilatorët e lidhur ose siç thuhet ndryshe të

çiftuar, pra dy sisteme njëdimensionalë që mund të kryejnë lëkundje harmonike janë lidhur

(çiftuar) me njeri tjetrin në mënyrë që lëvizja e njerit prodhon lëvizje tek tjetri. Në figurën 1.6

tregohet një rast i tillë : dy masa të varura në susta janë lidhur midis tyre me një sustë të tretë.

Figura 1.6 Sistemi i masave dhe sustave

formon një sistem dy oshilatorësh vertikalë

të çiftuar.

Page 129: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

127

Gjatë zhvendosjeve të vogla vertikale të masave, forcat që veprojnë mbi sejcilin trup nga ana e

sustave të deformuara janë përkatësisht :

F1 = - k1 y1 - k0 ( y1 - y2 ) ; F2 = - k2 y2 - k0 ( y2-y1 )

ku, y1 dhe y2 janë zhvendosjet e masave m1 dhe m2 nga pozicioni i ekuilibrit. Ekuacionet

mund të zgjidhen direkt me teknikën numerike të zgjidhjes së ekuacionit F = m a . Programi

COUPLE është një rrugë për ta bërë këtë. Është treguar rasti i thjeshtë ku m1 = m2= k1= k2=

1 (me k0 =0.1), por programi është i përgjithëshëm për çfardo vlerash.

Modet normale mund të ilustrohen me këtë program. Në modet normale energjia nuk kalon

nga njeri oshilator tek tjetri . Për sistemin e dy oshilatorëve një-dimensional të lidhur ka dy

mode normale; nga simetria mund të merret me mënd që (për rastin special me m1 = m2= k1=

k2= 1) të dy modet normale mund të fillojnë ose me y1 =1, y2 = 1, v1 = v2 = 0, ose me y1 = -1,

y2 = 1, v1 = v2 = 0 . Ju mund të demostroni me anë të programit që me këto dy palë kushtesh

fillestare nuk ka shkëmbim lëvizjeje apo energjie midis masave. Çdo lëvizje në përgjithësi e

masave (duke filluar me kushte fillestare jo simetrike) mund të shkruhet analitikisht si një

kombinim linear i lëvizjeve në modet normale.

Program COUPLE.BAS

10 REM programi couple.bas llogarit zhvendosjet e dy oshilatoreve te lidhur

20 REM kushtet fillestare merren 1,0,1,0 ose -1,0,1,0

30 REM open "couple.dat" for output as file #3

100 READ k1, m1, k2, m2, k0

110 DATA 1,1,1,1,.1

120 PRINT "kushtet fillestare y1,v1,y2,v2";

130 INPUT y1, v1, y2, v2

140 t = 0

150 t0 = 0

160 dt = .005

170 d0 = .01

180 a1 = (-k1 * y1 - k0 * (y1 - y2)) / m1

190 a2 = (-k2 * y2 - k0 * (y2 - y1)) / m2

200 v1 = v1 + a1 * dt

210 v2 = v2 + a2 * dt

220 dt = d0

230 y1 = y1 + v1 * dt

240 y2 = y2 + v2 * dt

250 t = t + dt

260 t0 = t0 + dt

270 IF t0 < 3.14159 / 16 THEN 300

280 t0 = 0

281 SCREEN 1

282 x = INT(10 * t)

283 y = INT(10 * y1 + 100)

284 PRESET (x, y)

285 PSET (x, y)

286 y = INT(10 * y2 + 100)

287 PRESET (x, y)

Page 130: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

128

288 PSET (x, y)

290 REM PRINT #3, t, y1, y2

300 IF t < 4 * 3.14159 THEN 180

310 REM PRINT

320 REM GOTO 120

330 END

Program COUPLE.FOR

DATA AK1,AM1,AK2,AM2,AK0/1.,1.,1.,1.,1./ konstantet e sustave dhe masat

5 READ(5,100)Y1,VY1,Y2,VY2 kushtet fillestare

IF (Y1-999.) 7,50,7

7 T=0. INICIALIZIMI

PRNTT=0.

DELT=0.01 hapi kohor t

DELTT=DELT/2 hapi kohor fillestar ½ t

10 AY1=(-AK1*Y1-AK0*(Y1-Y2) )/AM1 nxitimi për masën e parë

AY2=(-AK2*Y2-AK0*(Y2-Y1))/AM2 nxitimi për masën e dytë

VY1=VY1+AY1*DELTT shpejtësia e re për masën e parë

VY2=VY2+AY2*DELTT shpejtësia e re për masën e dytë

DELTT=DELT hapi i plotë kohor

Y1=Y1+VY1*DELTT pozicioni i ri i masës së parë

Y2=Y2+VY2*DELTT pozicioni i ri i masës së dytë

T=T+DELTT koha e re

PRNTT=PRNTT+DELTT grupi i printimit

IF (PRNTT-3.14159) 20,15,15

15 PRNTT=0.

PRINT 101,T,Y1,Y2

20 IF (T-4.*3.14159) 10,5,5 kthim në hapin pasonjës ose në kushte të reja fillestare

50 STOP

100 FORMAT(4F10.4)

101 FORMAT(1X,3F10.4)

END

Medota mund të përdoret edhe për çdo numur oshilatorësh sado kompleks. Çiftimi mund të

mos jetë thjeshtë me anë të sustës . Por në të gjitha rastet oshilatorët merren me lëkundje të

vogla , pra forcat janë harmonike ose kuazi-harmonike , ku mund të zbatohet ideja e modeve

normale.

Ky kapitull ishte një hyrje e shkurtër për mënyrat e thjeshta të zgjidhjes numerike të

ekuacionit F = m a në problemet e mekanikës. Edhe probleme më të komplikuara të

mekanikës së grimcave mund të trajtohen me të njëjtën mënyrë. Avantazhi i kësaj mënyre

është se është e përgjithëshme dhe kuptohet lehtë. Disavantazhi më i madh është se vetitë

globale të zgjidhjeve (siç janë ligjet e ruajtjes) nuk janë evidente në zgjidhjet. Ligjet e ruajtjes

mund të ilustrohen lehtë prej zgjidhjeve dhe zakonisht janë një test i përshtatshëm për

saktësinë e metodës numerike , por këto ligje nuk derivojnë nga llogaritjet numerike.

Algoritmi i ecjes nëpër kurbë do të përdoret përsëri në kapitujt e tjerë.

Ushtrime

1. Duke përdorur një program që ka stategjinë e zgjidhjes së ekuacionit F = m a për një

qendër forcash gravitacionale në origjinë të kordinatave (problemi i satelitit ),

Page 131: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

129

a. Të gjenden 5 orbita të mbyllura që kalojnë nëpër pikën (-2,0) me shpejtësi të

ndryshme ( 0, vy ).

b. Për një nga këto orbita provoni që është elips me vatër në qendrën e forcës.

c. Për një nga këto orbita provoni që sipërfaqja që përshkohet në intervale kohe të njëjta t

është e njëjtë.

d. Provoni se katrori i periodës është proporcional me kubin e gjysëmboshtit të madh, duke

përdorur disa orbita.

2. Duke përdorur një program me strategjinë e zgjidhjes së ekuacionit F = m a për një

qendër forcash gravitacionale në origjinë të kordinatave ,

a. Të gjenden 5 orbita që kalojnë në pikën (-1 ,0 ) që kanë të njëjtën energji në këtë pikë

por momente këndore të ndryshme. (Këto janë orbita që kanë të njëjtën madhësi të

shpejtësisë fillestare por kanë drejtime të ndryshme të kësaj shpejtësie në pikën iniciale.)

b. Demonstroni tre ligjet e Keplerit për këto orbita.

3. Duke përdorur një program me strategjinë e zgjidhjes së ekuacionit F = m a për dy qendra

të fiksuara forcash gravitacionale (me të njëjtën masë në to) në pikat (0 , 0) dhe ( 10 , 0),

a. Gjeni një orbitë që i qarkon nga jashtë të dy qendrat e forcave dhe rikthehet (pak a shumë)

në pikën nisëse ( -1 , 0).

b. Gjeni një orbitë në formën e figurës së tetës që qarkon të dy qendrat e forcave, që nisin

nga pika (-1,0).

c. Llogaritni diferencën e energjive totale midis dy orbitave të pikave a. dhe b.

4. Në një sistem njësish në të cilin ligji i forcës gravitacionale ka formën e thjeshtuar( GM=1),

a. Gjeni largësinë midis Tokës dhe Hënës, masat e Tokës dhe Hënës, dhe largësinë prej

qendrës së Tokës deri te orbita rrethore 150 km mbi sipërfaqen e Tokës.

b. Gjeni shpejtësitë fillestare korekte ( që janë totalisht në drejtimin y ) që japin orbita që

qarkojnë Hënën dhe rikthehen në Tokë , që startojnë një satelit 150 km mbi sipërfaqen e

Tokës. Gjeni një orbitë që qarkon nga jashtë Tokën dhe Hënën dhe një me trajtën e

figurës së tetës.

c. Gjeni sa është diferenca e energjive midis dy orbitave të pikës b. Pse programi Apollo

(veçanërisht Apollo 8) përdori orbitën “kursimtare” në formën e tetës ?

5. Janë dhënë tre trupa me masë të njëjtë që bashkëveprojnë me forca gravitacionale që

ndodhen në kulmet një trekëndëshi barabrinjësh ,

a. Gjeni 3 shpejtësi fillestare që japin lëvizje interesante të ndryshme për tre trupat.

b. Hetoni ruajtjen e energjisë së plotë dhe momentit këndor të sistemit, për seicilen nga

shpejtësitë fillestare.

c. Për njerin trup hetoni ndryshimin në kohë të energjisë kinetike, potenciale dhe asaj të

plotë si dhe të momentit këndor për seicilen nga shpejtësitë fillestare.

6. Jepet potenciali i Jukavës V (r) = - exp(- r )/ r (ku qendra e forcës është në origjinë),

a. Gjeni disa orbita që kalojnë nëpër pikën (2,0) duke përdorur programin e lëvizjes dy-

dimensionale në potencial të dhënë.

b. Gjeni shpejtësinë korekte për të patur një orbitë rrethore që kalon nga (2,0) duke përdorur

këtë program.

c. Duke barazuar forcën që derivon nga potenciali i Jukavës me forcën centripete, gjeni

shpejtësinë dhe krahasojeni me atë të pikës b.

7. Jepet potenciali i Jukavës V (r) = - exp(- r )/ r ,

a. Duke përdorur programin e lëvizjes dy-dimesionale në një potencial të dhënë, nisni

grimca që lëvizin paralelisht me boshtin x nga pikat (-5, y ). Llogaritni trajektoret dhe

Page 132: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

130

matni këndet që formon drejtimi përfundimtar i trajektoreve ( kur largohen nga fusha) me

drejtimin e boshtit x (drejtimi fillestar i trajektoreve).

b. Vizatoni grafikun e varësisë së numurit të grimcave që devijojnë në intervalet 00-10

0 ,

100-20

0 , etj. nga këndi i devijimit.

c. Përsëritni trajektoret për potencialin V (r) = - exp(- r/5 )/ r , dhe tregoni që grafiku i

pikës b. ndryshon.

d. Shpjegoni se si trajektoret e grimcave të shpërhapura mund të japin informacion mbi

potencialin.

8. Konsiderojmë një sistem masash në susta (të çiftuar) si në Figurë 1.7.

a. Shkruani ekuacionet e lëvizjes në drejtimin x (gjatësor) të dy masve të barabarta.

b. Duke përdorur një program me strategjinë e ligjit F = m a , gjeni lëvizjet që rezultojnë

kur masat nisen në mënyrat e mëposhtëme:

(1) Të dy masat nisen nga prehja duke qënë të zhvendosura me të njëjtën masë djathtas.

(2) Të dy masat nisen nga prehja duke qënë të zhvendosura me të njëjtën masë në anë të

kundërta.

(3) Njera masë niset nga pozicioni i ekuilibrit dhe tjetra niset duke qënë e zhvendosur në

të djathtë.

c. Merini sustat sikur nuk janë lineare , pra F=- k(x+0.1 x3). Përsëritni pikën b. dhe krahasoni

Figura 1.7 Sistemi i masave dhe sustave për dy oshilatorë horizontalë të lidhur.

Page 133: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

131

KAPITULLI II

TERMODINAMIKA DHE STATISTIKA

Hyrje

Në këtë kapitull do të shikohen disa shembuj të zgjidhjes së problemeve të Termodinamikës

dhe Fizikës statistike.Këta shembuj mund të ilustrojnë reversibilitetin e proceve

termodinamikë në shumë lëndë , megjithëse shembujt marin si lëndë gazin ideal. Megjithatë

mënyra e llogaritjeve është e vlefëshme për çdo lëndë e cila mund të ketë për ekuacion të

gjendjes (ekuacioni PVT) një relacion të ndërlikuar ose një tabelë vlerash

2.1 Sipërfaqet PVT

Çdo lëndë në gjendje ekuilibri termodinamik karakterizohet nga një lidhje midis shtypjes

(presionit) P , volumit V dhe temperaturës T . Në përgjithësi , për një lëndë reale lidhja është

e ndërlikuar, meqënëse në intervale të ndryshme të vlerave të parametrave P,V,T , lënda

mund të jetë në gjendje të ndryshme : të ngurtë ,të lëngët apo të gaztë.

Një idealizim i dobishëm është gazi ideal i cili ka për ekuacion gjendjeje relacioni e thjeshtë :

PV= n RT

ku R është konstante universale e gazeve (8.314 103

J/kg mol grad) dhe n është numuri i

moleve që përmban sasia e dhënë e gazit. P është shrypja në njuton për metër katror; V është

volumi në metër kub dhe T është temperatura absolute në gradë Kelvin. Të gjithë gazet jo

shumë të ngjeshur janë një përafrim mjaft i mirë i gazit ideal.. Por ai nuk mund të paraqesë

gjendjet në intervale të gjera të P,V,T ku gazet realë kondensohen në lëngje apo trupa të

ngurtë.

Figura 2.1 tregon një pjesë të lidhjes P,V,T për gazin ideal. Shtypja në njerin bosht është

njësi N/m2 (1 atmosferë është 1.013 10

5 N/m

2 ). Volumi në boshtin e dytë është në m

3 (deri

në 0.005 m3 ). Temperatura në boshtin e tretë është deri në 1350 K. Kurbat me shtypje

konstane (izobarat) janë vija të drejta , V T Kurbat me volum konstant (izokorat) janë

vijat e drejta P T . Kurbat me temperaturë konstante (izotermat) janë hyperbolat P 1/V.

Sipërfaqja PVT paraqet gjithë gjendjet e mundëshme të ekuilibrit që mund të ketë lënda

(në këtë rast gazi ideal) . Proceset reversibël në të cilat mund të kalojë lënda janë kalime njera

pas tjetrës nëpër gjendjet e ekuilibrit, pra ata paraqiten me një farë vije në sipërfaqen PVT.

Proceset ireversibël nuk janë kalim nëpër gjendje ekuilibri dhe nuk mund të paraqiten me

konture në sipërfaqen PVT .

Shumë madhësi që karakterizojnë lëndën , veçanërisht energjia e brendëshme U dhe

entropia S , janë funksione të gjendjes së lëndës, kjo nënkupton që U dhe S kanë vlerë të

vetme (me saktësinë e shtimit të një konstanteje sikurse tek energjia potenciale) në çdo pikë të

sipërfaqes PVT . Ndryshimet që pësojnë U dhe S , kur sistemi i nënshtrohet ndonjë procesi ,

varen vetëm nga gjendjet fillestare dhe përfundimtare të sistemit.

Page 134: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

132

Figura 2.1 Sipërfaqet PVT për gazin

ideal. Konturet e treguara izotermat

(me vijë të plotë) dhe izobarat e

izokorat (me vija të ndërprera).

Nxehtësia Q e shkëmbyer midis lëndës dhe mjedisit që e rethon varet nga gjendjet fillestare e

përfundimtare si dhe nga mënyra se si kalon sistemi nga një gjendje tek tjetra. Po ashtu edhe

puna W e kryer nga sistemi ose që kryhet mbi sistem varet gjithashtu nga rruga që ndjek

sistemi. Një nga detyrat themelore të termodinamikës është që duke përdorur ligjet empirike të

termodinamikës, të gjejë Q ,W , U dhe S për proceset e kryera mbi një lëndë reale. Ky

kapitull përqëndrohet në proceset reversibël të kryera mbi një gaz ideal.meqënëse këto procese

janë më lehtë për tu kuptuar. Megjithatë kompjuteri mund të përdoret po aq mirë edhe për

lëndë reale me procese ireversibël.

Figura 2.2 Një cikël Karno i kryer

mbi një gaz ideal. Ai përbëhet nga dy

procese izotermikë (T) dhe dy procese

adiabatikë (A) . Efektiviteti

(rendimenti) është puna e kryer W e

pjestuar me nxehtësinë e thithur Q.

Figura 2.2 tregon një cikël Karno për një gaz ideal. Sipërfaqja PVT është ajo e treguar në

figurën 2.1 . Një cikël Karno përbëhët nga dy procese izotermikë dhe dy procese adiabatikë

(procesi adiabatik është ai që kryhet pa shkëmbim nxehtësie, PV =një konstante, ku =Cp/Cv

dhe Cp e Cv janë nxehtësitë specifike në shtypje dhe në vëllim konstant) Izotermat janë

Page 135: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

133

shënuar me T ndërsa adiabatat janë shënuar me A .Efektiviteti (rendimenti, puna e kryer për

njësi të nxehtësisë së harxhuar) e=W/Q është 0.52 për këtë cikël. Ky rendiment është funksion

vetëm i temperaturave më të ulët e më të lartë Tu dhe Tl . Gjithë proceset (ciklet) e

pakthyeshëm që kryhen midis këtyre temperaturave kanë të njëjtin rendiment dhe asnjë proces

ireversibël nuk mund të ketë rendiment më të lartë.

Llogaritjet me anë të kompjuterit japin një rrugë të lehtë për gjetjen e nxehtësisë, punës ,

ndryshimit të energjisë dhe ndryshimit të entropisë për çdo proces. Duke lëvizur nëpër

konturin PVT [duke përdorur relacionin PVT për të llogaritur P (ose V ose T) në funksion të

V dhe T (ose P e T ose P e V )] e duke llogaritur në çdo hap nxehtësinë ( Q=C T , ku C

është kapaciteti termik) dhe punën ( W=P V ). Nxehtësia e plotë Q që merr sistemi është

atëhere Q dhe puna totale është W . Ndryshimi i energjisë së brendëshme U është

llogaritur nga ligji i parë i termodinamikës :

U = Q - W

Ndryshimi i entropisë nga shumat në çdo hap të S sipas përcaktimit :

S = Q / T dhe S = S

Programi PVT ilustron një mënyrë të këtyre llogaritjeve për proceset izotermik, izohorik ,

izobarik dhe adiabatik. Inetgrimi është bërë me një mënyrë të thjeshtë , por ju mund të

përdorni rregullin e Simpsonit në se dëshironi.Nxehtësia specifike në volum konstant CV

është 3/2 për gazin ideal monoatomik; nzehtësia specifike në shtypje konstante CP është 5/2 ,

është 5/3 ose 1.667. Në variantin basic të programit proceset vizualizohen në ekran dhe

sqarimet e programit janë dhënë në reshtat me REM.

Program PVT.BAS

10 REM programi pvt.bas llogarit W , Q , U , S për proceset izotermik,

20 REM izohorik,izobarik dhe adiabatik.Konstantet termodinamike në ek.PV=NRTjane:

30 REM R,N dhe kapaciteti termik C dhe G= =Cp /Cv.

100 READ R, N, C, G

110 DATA 8.314,.223,12.45,1.667

112 REM LEXON PROCESIN,GJENDJET FILLESTARE(TEMP.=Y0,VELL=X) E

PERFUNDIMTARE.

120 IF l >= 4 THEN 710

121 READ I, y0, x0, X1

122 l = l + 1

123 REM TE DHENAT JANE PER NJE CIKEL KARNO

130 DATA 1,275,.0045,.003,4,169952,.003,.001

140 DATA 1,572.233,.001,.0015,4,707288,.0015,.0045

150 W = 0

160 Q = 0

170 S = 0

180 D = (X1 - x0) / 10000

181 REM KY ESHTE HAPI I INTEGRIMIT PER VOLUMIN X

190 IF I = 2 THEN 330

200 IF I = 3 THEN 440

210 IF I = 4 THEN 570

220 Z0 = N * R * y0 / x0

230 FOR J = 1 TO 10000

240 v = x0 + (J - .5) * D

250 p = N * R * y0 / v

Page 136: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

134

260 W = W + p * D

270 Q = Q + p * D

280 S = S + p * D / y0

281 SCREEN 1

282 x% = INT(v * 60000)

283 y% = 150 - INT(p / 10000)

284 LINE (0, 0)-(0, 150)

285 LINE (0, 150)-(300, 150)

286 PRESET (x%, y%)

287 PSET (x%, y%)

290 NEXT J

300 Y1 = y0

310 Z1 = N * R * Y1 / X1

320 GOTO 680

330 Z0 = N * R * y0 / x0

340 FOR J = 1 TO 10000

350 T = y0 + (J - .5) * D

360 p = N * R * T / y0

370 Q = Q + N * C * D

380 S = S + N * C * D / T

390 W = 0

381 x% = INT(v * 60000)

382 y% = 150 - INT(p / 10000)

383 PRESET (x%, y%)

384 PSET (x%, y%)

400 NEXT J

410 Y1 = y0

420 Z1 = N * R * X1 / Y1

430 GOTO 680

440 Z0 = y0 * x0 / (R * N)

450 T2 = Z0

460 FOR J = 1 TO 10000

470 v = x0 + (J - .5) * D

480 T = y0 * v / (R * N)

490 Q = Q + N * C * G * (T - T2)

500 S = S + N * C * G * (T - T2) / (T - (T - T2) / 2)

510 W = W + y0 * D

520 T2 = T

521 x% = INT(v * 60000)

522 y% = 150 - INT(p / 10000)

523 PRESET (x%, y%)

524 PSET (x%, y%)

530 NEXT J

540 Y1 = y0

550 Z1 = Y1 * X1 / (N * R)

560 GOTO 680

570 K = y0 * x0 ^ G

580 Z0 = y0 * x0 / (R * N)

590 FOR J = 1 TO 10000

Page 137: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

135

600 v = x0 + (J - .5) * D

610 p = K / v ^ G

620 W = W + p * D

630 Q = 0

640 S = 0

641 x% = INT(v * 60000)

642 y% = 150 - INT(p / 10000)

643 PRESET (x%, y%)

644 PSET (x%, y%)

650 NEXT J

660 Y1 = K / X1 ^ G

670 Z1 = Y1 * X1 / (N * R)

680 REM PRINT I, Q, W, Q - W, S

690 REM PRINT "GJENDJA FILLESTARE V,T,P:"; X0; Y0; Z0, "GJENDJA PERFUND.

VTP:"; X1; Y1; Z1

700 GOTO 120

710 REM SCREEN 0

720 END

Programi PVT.FOR

REAL N

DATA R,N,C,G/ 8.314,.223,12.45,1.667/ konstantet termodinamike

1 READ(5,100)I,Y0,X0,X1 lloji i procesit,gjendjet fillestare e përfundimtare

IF (I-999) 5,90,90

5 W= 0.

Q = 0.

S = 0.

D = (X1 - X0) / 1000. hapi për integrimin

IF (I - 2) 6,20,6

6 IF (I - 3) 7,40,7

7 IF (I - 4) 8,60,8

8 Z0 = N * R * Y0 / X0 DO 10 J = 1,1000 V = X0 + (J - .5) * D P = N * R * Y0 / V W = W + P * D Q = Q + P * D 10 S = S + P * D / Y0 Y1 = Y0 Z1 = N * R *Y1/ X1 GOTO 80

procesi izotermik (I=1)

20 Z0 = N * R * X0 / Y0 DO 30 J = 1,1000 T = X0 + (J-.5) * D P = N * R *T / Y0 Q = Q + N *C * D S = S + N *C * D / T 30 W = 0. Y1 = YO Z1 = N * R * X1/ Y1 GOTO 80

procesi izohorik (I=2)

Page 138: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

136

40 Z0 = Y0* X0 / (N * R) T2 = Z0 DO 50 J = 1,1000 V = X0 + (J-.5) * D T = Y0* V / (R * N) Q = Q + N *C *G *(T - T2) S = S + N *C * G *(T - T2)(T - (T - T2) / 2) W = W + Y0* D 50 T2 = T Y1 = Y0 Z1 = Y1* X1/ (N * R) GOTO 80

procesi izobarik (I=3)

60 AK = Y0* X0**G Z0 = Y0* X0 / (R * N) DO 70 J = 1,1000 V = X0 + (J-.5) * D P = AK / V **G W = W + P * D Q = 0. 70 S = 0. Y1 = AK / X1**G Z1 = Y1* X1/ (N * R)

procesi adiabatik (I=4)

80 PRINT 101,X0,Y0,Z0 Q0 = Q - W PRINT 102,I,Q,W,Q0,S PRINT 101,X1,Y1,Z1

grupi i printimit

GOTO 1 rikthim për procesin tjetër

90 STOP

100 FORMAT(I5,3F15.10)

101 FORMAT(3X,3E12.4)

102 FORMAT(1X,I5,4E12.4)

END

Figura 2.3 tregon një cikël Diezel, ai përbëhet nga një izobarë,dy adiabata dhe një

izohore.Efektiviteti, që është raporti W/Q , është e=0.48 .Të katër kulmet e ciklit kanë

(T,V,P)=(216,0.004,105), (554,0.001,1.01x10

6), (1000,0.001,1.85x10

6) ,

(396,0.004,1.84x105).

Page 139: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

137

Figura 2.3 Një cikël Diezel për gazin

ideal. Ai përbëhet nga dy adiabata (A),

një izobarë (P) dhe një izokorë (V ).

Rendimenti i ciklit është e=0.48.

Figura 2.4 tregon një cikël Otto (dy izohora dhe dy adiabata)

Kjo metodë mund të zbatohet edhe për metarjale reale, duke vendosur relacionin e

përshtatshëm PVT në vëndin e duhur . Lëngjet dhe trupat e ngurtë janë pothuaj të

pangjeshëshëm dhe kanë nxehtësi specifike krejt të ndryshme nga gazet. Në ndryshim nga

gazet, gjithë parametrat për një lëndë reale varen nga shtypja dhe temperatura. Shumë

materjale (të tilla si uji) ka disa faza të ngurta të ndryshme, të ndryshme nga fazat e lëngëta e

të gazta.

Figura 2.4 Një cikël Otto i kryer mbi

një gaz ideal. Ai përbëhet nga dy

procese adiabatikë (A) dhe dy procese

izohorikë (V).

Problema

1. a. Gjeni një cikël Karno midis gjëndjes standarte të temperaturës dhe shtypjes (shkurt

shënohet STP , kur temperatura është 273 0K dhe shtypja 1 atmosferë) dhe temperaturës

Page 140: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

138

770K (temperatura e nitrogjenit të lëngët). Sa është efektiviteti (rendimenti) i ketij cikli

duke supozuar se lenda është gaz ideal.

b. Përsëriteni kërkesën a. duke supozuar një gaz me ekacion gjendjeje ai i Van der Valsit.

Krahasoni rezultatet.

2. a. Gjeni një cikël Diezel midis gjendjes STP dhe temperaturës 770K. Sa është efektiviteti

i këtij cikli? Supozohet gaz ideal.

b. Përsëriteni kërkesën a. për një gaz të Van der Valsit.Krahasoni rezultatet

3. a. Gjeni një cikël Otto midis gjendjes STP dhe temperaturës 770K Sa është efektiviteti i

i këtij cikli? Supozohet gaz ideal.

b. përsëriteni kërkesën a. për një gaz të Van der Valsit. Krahasoni rezultatet.

4. a. Kërkoni nëpër manuale të dhëna për gjendjet PVT të ujit.

b. Futini të dhënat në një skedar në kompjuter.

c. Shkruani një variant të programit PVT i cili i lexon të dhënat nga skedari i mësipërm

(dhe jo duke i llogaritur nga ekuacioni i gjendjes)

d. Gjeni një cikël Karno duke përdorur gjendjet PVT nga skedari i krijuar për ujin.

2.2 Gazi prej n-grimcash

Një problem interesant nga Fizika Statistike që mund të trajtohet me metodat kompjuterike

është ai i gazit të përbërë nga n grimca (molekula) . Këto n molekula (që në praktikë merren

zakonisht një dyzinë) kanë pozicione fillestare dhe shpejtësi fillestare të dhëna. Lëvizjet e

mëtejshme të tyre mund të gjenden dhe të çfaqen në ekran. Një nga mënyrat e llogaritjes është

përdorimi ligjit F = m a që është diskutuar në kapitullin e parë. Për shumicën e gazeve është

mjaft i mirë përafrimi që merr në konsideratë vetëm bashkëveprimet dyshe të molekulave si

dhe goditjet e molekulave me paretet e enës. Një situatë dy-dimensionale i ilustron efektet po

aq mirë sa situata reale tre-dimensionale. Programi NGAS ilustron pikërisht një situatë dy-

dimesionale.

Programi NGAS.BAS

10 REM programi ngas.bas llogarit pozicionet e n molekulave te nje gazi

20 REM brenda nje ene kubike me brinje l kur molekulat bashkeveprojne

30 REM vetem gjate goditjes me njera tjetren sipas potencialit L-Xh

100 DIM X(100), Y(100), U(100), V(100)

110 DT = .01

120 L = 10

130 T1 = 150

140 PRINT "numuri i molekulave?"

150 INPUT N

160 FOR I = 1 TO N

170 X(I) = (-1) ^ INT(10 * RND) * RND * L

180 Y(I) = (-1) ^ INT(10 * RND) * RND * L

190 U(I) = (-1) ^ INT(10 * RND) * RND * L / 10

200 V(I) = (-1) ^ INT(10 * RND) * RND * L / 10

210 NEXT I

220 T0 = 0

230 T = 0

240 D1 = DT / 2

Page 141: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

139

250 FOR I = 1 TO N

260 X0 = X(I)

270 Y0 = Y(I)

280 U = 0

290 V = 0

300 FOR J = I + 1 TO N

310 X2 = X(J) - X0

320 Y2 = Y(J) - Y0

330 R2 = X2 * X2 + Y2 * Y2

340 IF R2 > 16 * .04 THEN 430

350 R6 = R2 ^ 3

360 F5 = 3.6E-11 / (R6 * R6 * R2) - .000006 / (R6 * R2)

370 F1 = F5 * X2

380 F2 = F5 * Y2

390 U(J) = U(J) + F1 * D1

400 V(J) = V(J) + F2 * D1

410 U = U - F1 * D1

420 V = V - F2 * D1

430 NEXT J

440 U(I) = U(I) + U

450 V(I) = V(I) + V

460 NEXT I

470 FOR I = 1 TO N

480 X = X(I) + U(I) * DT

490 Y = Y(I) + V(I) * DT

500 IF (X + L) * (X - L) <= 0 THEN 590

510 S1 = SGN(X)

520 X0 = X(I)

530 X3 = S1 * L

540 U = -U(I)

550 D3 = DT * (X3 - X0) / (X - X0)

560 X = X3 + U * (DT - D3)

570 U(I) = U

580 P1 = P1 + 2 * ABS(U)

590 IF (Y + L) * (Y - L) <= 0 THEN 680

600 S1 = SGN(Y)

610 Y0 = Y(I)

620 Y3 = S1 * L

630 V = -V(I)

640 D3 = DT * (Y3 - Y0) / (Y - Y0)

650 Y = Y3 + V * (DT - D3)

660 V(I) = V

670 P1 = P1 + 2 * ABS(V)

680 X(I) = X

690 Y(I) = Y

691 SCREEN 1

692 LINE (0, 0)-(200, 0)

693 LINE (0, 0)-(0, 200)

694 LINE (200, 0)-(200, 200)

Page 142: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

140

695 LINE (0, 200)-(200, 200)

696 XP% = INT(X(I) * 10 + 100)

697 YP% = INT(Y(I) * 10 + 100)

698 PRESET (XP%, YP%)

699 PSET (XP%, YP%)

700 NEXT I

710 T = T + DT

720 IF (T - T0) >= T1 THEN 750

730 D1 = DT

740 GOTO 250

750 E1 = 0

760 FOR I = 1 TO N

770 U = U(I)

780 V = V(I)

790 E1 = E1 + U*U + V * V

800 NEXT I

810 REM PRINT T, P1 / (4 * L * T1), E1

820 FOR I = 1 TO N

830 REM PRINT X(I), Y(I), U(I), V(I)

840 NEXT I

850 END

Program NGAS.FOR

DIMENSION XMOL(100), YMOL(100), VXMOL(100), VYMOL(100)

D = .01 hapi kohor

AL = 10. gjatësia e kutisë (enës)

T1 = 5. koha e printimit

DATA N/10/ numuri i të dhënave

AN=N

DO 5 I = 1,N

XMOL(I) = (I -1) *2.*AL / AN - AL YMOL(I) = AL - (I -1) *2.*AL / AN VXMOL(I) = 2. *A L / 10. 5 VYMOL(I) = - 2.* AL / 20.

pozicionet dhe shpejtësitë fillestare

T0 = 0.

T = 0.

D1 = D / 2. gjysëm-hapi fillestar, t/2

7 DO 25 I = 1,N hapi nga një grimcë në tjetrën

X0 = XMOL(I)

Y0 = YMOL(I)

VX = 0.

VY = 0.

DO 20 J = I + 1,N

X2 = XMOL(J) - X0

Y2 = YMOL(J) - Y0

R2 = X2 * X2 + Y2 * Y2

largësia nga grimca e i-të në atë të j-të

IF (R2-16. * .04) 10,20,20 nëse janë shumë larg,të mos bashkëveprojnë

Page 143: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

141

10 R6 = R2 ** 3

FR = 3.6E -11 / (R6 * R6 * R2) - 6.E - 6 / (R6 * R2) FX = FR * X2 Fx / m Fy = FR * Y2 Fy / m

forca F ji

VXMOL(J) = VXMOL(J) + FX * D1 VYMOL(J) = VYMOL(J) + FY * D1

shpejtësia e re e j-të

VX = VX - FX * D1 VY = VY - FY * D1

shpejtësia e re e i-të (e përkohëshme)

20 CONTINUE

VXMOL(I) = VXMOL(I) + VX 25 VYMOL(I) = VYMOL(I) + VY

shpejtësia e re e i-të

DO 40 I = 1,N

X = XMOL(I) + VXMOL(I) * D pozicioni i ri (i përkohëshëm)

Y = YMOL(I) + VYMOL(I) * D

IF ((X + AL) * (X - AL) ) 30,30,27 nësë është brenda enës ,lere

27 X0 = XMOL(I) X3 = SIGN(X) * AL VX = - VXMOL(I) D3 = D * (X3 - X0) / (X - X0) X = X3 + VX * (D - D3) VXMOL(I) = VX P1 = P1 + 2 * ABS(VX) shkwmbimi i impulsit

pasqyrimi në paret

30 IF ((Y +AL) * (Y -AL) ) 35,32,32 nëse është brenda enës,lere

32 Y0 = YMOL(I) Y3 = SIGN(Y) * AL VY = - VYMOL(I) D3 = D * (Y3 - Y0) / (Y - Y0) Y = Y3 + VY * (D - D3) VYMOL(I) = VY P1 = P1 + 2 * ABS(VY) shkwmbimi i impulsit

pasqyrimi në paret

35 XMOL(I) = X pozicioni i ri

40 YMOL(I) = Y

T = T + D koha e re

D1 = D heqja gjysëm-hapit fillestar

IF (T-T1) 7,50,50 nëse duhet të printojë

50 EN = 0. DO 45 I = 1,N VX = VXMOL(I) VY = VYMOL(I) 45 EN = EN + VX * VX + VY * VY

gjetja e energjisë totale

PRES=P1/(4.*AL*T1) shtypja(presioni)

PRINT 101,T, PRES, EN

DO 80 I = 1,N

80 PRINT 100,XMOL(I), YMOL(I), VXMOL(I), VYMOL(I) printimi

STOP

100 FORMAT(1X,4E12.4)

101 FORMAT(1X,2HT=,F10.3,5H P=,E12.4,5H E=,E12.4)

END

Page 144: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

142

Në këtë program janë përdorur dy ligje bashkëveprimi midis molekulave . Ligji i parë është ai

i sferave të ngurta, pra molekulat e gazit konsiderohen si sfera me një farë rezeje R që nuk

bashkëveprojnë veçse kur goditen në mënyrë elastike. Kjo situatë e përafron fare mirë gazin

ideal shumë i rralluar (nR3 « L

3 , ku ena është konsideruar një kub me brinjë L dhe në të ka n

molekula). Një ligj i dytë force është bshkëveprimi Lenard-Xhons (1/r6-1/r

12 ) , që është një

model për gazet realë.

Temperatura e gazit përcaktohet nga energjia kinetike fillestare mesatare e molekulave

(duke supozuar që në situatën fillestare ka bashkëveprim të papërfillëshëm midis molekulave):

___

½ mv2 = 3/2 kT __

ku m është masa e çdo molekule , v2 është mesatarja kuadratike e shpejtësisë dhe k është

konstantja e Boltzmanit, 1.38x10-23

J/grad. Meqë të gjitha bashkëveprimet nuk e ndryshojnë

energjinë (goditjet me paretin janë elastike), temperatura (në shumicën e rasteve) mbetet

konsatant ndërsa shpejtësitë tentojnë të shpërndahen sipas shpërndarjes së Boltzmanit.

Relacioni PVT mund të gjendet duke shqyrtuar të njëjtën numur grimcash ne disa enë me

përmasa të ndryshme, në çdo rast për disa temperatura. shtypja llogaritet nga mesatarizimi i

impulseve që shkëmbejnë grimcat me paretet e enës gjatë goditjeve.

Vështirësia është se këto llogaritje kërkojnë kohë të gjatë llogaritjeje në kompjuter.

Zgjidhni një metodë që e minimizon këtë kohë sa më shumë të jetë e mundur. Zakonisht ,

është e dobishme të llogariten forcat për distanca të vogla midis molekulave dhe vetëm për

largësi të tilla të përdoret algoritmi i rendit të katërt Runge-Kuta ose ndonjë algoritëm tjetër.

Në përshtatje të kompjuterit që keni në përdorim mund të lindë nevoja e ndryshimeve

përkatëse . Në variantin BASIC mund të vizualizoni grimcat që lëvizin në çdo PC që ka softin

QBASIC.

2.3 Mesataret statistikore

Të gjithë sistemet në ekuilibër termik kanë një shpërndarje të përcaktuar të shpejtësive të

grimcave. Një funksion i shpërndarjes është funksioni i Boltzmanit :

f(r,v) drdv = A” exp

E

kT

( )r v, dx dy dz dvx dvy dvz

ku A” është një konstante normalizimi (një numër që bën që integrali f drdv të jetë = 1) dhe

E(r,v) është energjia totale e grimcës në pzicionin r dhe shpejtësinë v . Funksioni i

shpërndarjes f varet si nga pozicioni (r) edhe nga shpejtësia (v).

Kur nuk ka bashkëveprim midis grimcave , shpërndarja thjeshtohet në shpërndarjen e

Maksuellit. Energjia totale është energjia kinetike ½m(vx2 + vy

2 + vz

2) :

f(vx , vy , vz ) = A’ exp

m v v v

kT

x y z( )2 2 2

2

Duke integruar këtë funksion shpërndarjeje sipas të gjitha drejtimeve të shpejtësisë merret

shpërndarja e Maksuellit për shpejtësitë:

f(v) = A v2 exp

mv

kT

2

2 , ku A = 4

m

kT2

3 2

/

Ky funksion shpërndarje f varet vetëm nga moduli i shpejtësisë v=| v |.

Page 145: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

143

Duke përdorur këtë funksion shpërndarjeje mund të gjenden shpejtësia mesatare, shpejtësia

më e mundëshme (më probabël), shpejtësia rms (rrënja katrore e mesatares kuadratike) etj.

Ndërkohë mund të aplikojmë edhe shpërndarjen ku futet edhe një energji potenciale e grimcës

p.sh në fushën gravitacionale , m g h (i ashtuquajturi ligji i atmosferës).. Me anë të komjuterit

mund të gjenden edhe madhësi të tjera interesante si p.sh. numuri i grimcave që kanë shpejtësi

më të vogël se një v0 duke integruar numerikisht (rezultati analitik përmban një funksion që

quhet funksioni i gabimit erf x ,që mund të llogaritet vetëm numerikisht). Mund të llogariten

mesataret termike të çdo madhësie , pjesa e molekulave që kanë energji kinetike më të madhe

se një farë vlere KE0, propabilitetin e ndodhjes së grimcave në një interval të dhënë

pozicionesh ose shpejtësish etj. . Të gjitha këto madhësi statistike mund të llogariten në

kompjuter me anë të integrimit numerik. Prgrami DSTFN printon vlerat e funksionit të

Maksuellit të shpërndarjes së shpejtësive. Programi DSTRFN llogarit propabilitetin që çdo

molekulë të ketë shpejtësi më të vogël se v0 dhe programi EMOLS llogarit pjesën e

molekulave që kanë energji më të madhe se një energji e dhënë . Të gjitha programet përdorin

shpërndarjen e Maksuellit të shpejtësive për një gaz pa bashkëveprime (dy programet e fundit

përdorin regullin e Simpsonit për integrimin).

Programi DSTFN.BAS

10 REM programi dstfn.bas llogarit vlerat e funksionit te shperndarjes

20 REM te Maksuellit per nje gaz ideal.

100 DEF fnm (v) = a * v * v * EXP(-m * v * v / (2 * k * t))

110 m = 1.67E-27

120 k = 1.38E-23

130 t = 300

140 a = 4 * 3.141519 * (m / (2 * 3.141519 * k * t)) ^ 1.5

150 v0 = SQR(2 * k * t / m)

160 PRINT "v (m/s)", "energjia", "propabiliteti"

170 FOR v = 0 TO 3 * v0 STEP v0 / 10

180 PRINT v, .5 * m * v * v, fnm(v)

190 NEXT v

200 END

Programi DSTNFN.FOR

FMAX(V)=A*V*V*EXP(-AM*V*V/(2.*AK*T)) shpërndarja e Maksuellit

AM = 1.67E-27 masa e hidrogjenit

AK = 1.38E-23 konstantja e Boltzmanit

T = 300. Temperatura

AK = 4.* 3.141519 * SQRT((AM / (2 * 3.141519 * AK * T))**3) koeficienti

V0 = SQRT(2. *AK *T /AM)

DO 10 i=1,31 hapi nga një shpejtësi në tjetrën

V = (I-1)* V0/ 10.

E=.5*AM*V*V

F=FMAX(V)

10 PRINT 100,V,E,F

STOP

100 FORMAT(1X,3E13.5)

END

Programi DSTRFN.BAS

10 REM programi dstrfn.bas llogarit propabilitetin qe molekula te kete

Page 146: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

144

20 REM shpejtesi v<v0 ne shperndarjen e Maksuellit per nje gaz ideal.

100 DEF fnm (v) = a * v * v * EXP(-m * v * v / (2 * k * t))

110 m = 1.67E-27

120 k = 1.38E-23

130 t = 300

140 a = 4 * 3.141519 * (m / (2 * 3.141519 * k * t)) ^ 1.5

150 v0 = SQR(2 * k * t / m)

160 d = SQR(2 * k * t / m) / 128

170 FOR v = 0 TO v0 - d STEP d

180 s1 = s1 + (fnm(v) + fnm(v + d)) * d / 2

190 s2 = s2 + fnm(v + d / 2) * d

200 NEXT v

210 PRINT s1 / 3 + 2 * s2 / 3

220 END

Programi DSTRFNB.FOR

FMAX(V) = A * V * V * EXP(-M * V * V / (2. * AK * T)) shpërndarja e Boltzmanit

AM = 1.67E-27 masa e hidrogjenit

AK = 1.38E-23 konstantja e Boltzmanit

T = 300 temperatura

A = 4. * 3.141519 * SQRT((AM / (2 * 3.141519 *AK * T))**3) konstantja

V0 = SQRT(2. * AK * T / AM) kufiri i sipërm i integrimit

D = SQRT(2. * AK * T / AM) / 128. hapi i integrimit

S1=0.

S2=0.

N=V0/D numri i intervaleve në shumën integrale

DO 10 I=1,N

V = (I-1)*D shpejtësia

S1 = S1 + (FMAX(V) + FNAX(V + D)) * D / 2. rregulli i trapezit në integrim

10 S2 = S2 + FMAX(V + D / 2.) * D shuma me pikë mesi

S=S1/3.+2.*S2/3. rregulli i Simpsonit

PRINT 100,T,V0,S

STOP

100 FORMAT(1X,3E13.5)

END

Programi EMOLS.BAS

10 REM programi emols.bas llogarit fraksionin e molekulave qe kane

20 REM energji E>E0 ne shperndarjen e Maksuellit per nje gaz ideal.

100 DEF fnm (v) = a * v * v * EXP(-m * v * v / (2 * k * t))

110 m = 1.67E-27

120 k = 1.38E-23

130 t = 300

140 e0 = k * t

150 v0 = SQR(2 * e0 / m)

160 v9 = 5 * v0

170 a = 4 * 3.14159 * (m / (2 * 3.14159 * k * t)) ^ 1.5

180 d = SQR(2 * k * t / m) / 100

190 s1 = 0

200 s2 = 0

210 FOR v = v0 TO v9 STEP d

Page 147: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

145

220 s1 = s1 + (fnm(v) + fnm(v + d)) * d / 2

230 s2 = s2 + fnm(v + d / 2) * d

240 NEXT v

250 PRINT s1 / 3 + 2 * s2 / 3

260 END

Programi EMOLS.FOR llogarit fraksionin e molekulave me

energji nën një vlerë të dhënë

DEF FMAX (V) = A * V * V * EXP(-AM * V * V / (2. * AK * T))

AM = 1.67E-27 masa e atomit të hidrogjenit

AK = 1.38E-23 konstantja e Boltzmanit

T = 300. temperatura

E0 = AK * T energjia e dhënë

V0 = SQRT(2. * E0 /AM) shpejtësia për energjinë e dhënë

VEND = 5. * V0 shpejtësia në bishtin e shpërndarjes

A = 4. * 3.14159 * SQRT((AM / (2. * 3.14159 * AK * T)) **3) koeficienti

D = SQRT(2. * AK * T /AM) / 100. hapi i integrimit

N=(VEND-V0)/D numri i intervaleve të integrimit

S1 = 0.

S2 = 0.

DO 10 I=1,N+1 cikli i integrimit

V=V0+(I-1)*D

S1 = S1 + (FMAX(V) + FMAX(V + D)) * D / 2. shuma trapezoidale

10 S2 = S2 + FMAX(V + D / 2.) * D shuma me pikë mesi

S=S1 / 3. + 2. * S2 / 3. rregulli i Simpsonit

PRINT 100,S

STOP

100 FORMAT(1X,E12.4)

END

Figura 2.5 tregon shpërndarjen e Maksuellit të shpejtësive për një gaz me atome

hidrogjeni në temperaturat T=3000

K, 5000 K, 1000

0 K dhe 1500

0 K, ndërsa figura 2.6 tregon

shpërndarjen në 10000 K me më shumë detaje , me mp (shpejtësia më probabël), av (shpejtësia

mesatare ) dhe rms që është v 2. Energjia kinetike e një atomi me shpejtësi rms është 3/2 kT.

Page 148: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

146

Figura 2.5 Shpërndarjet e Maksuellit të

shpejtësive, për temperaturat 3000 K,

5000 K, 1000

0 K. Janë treguar për

intervalin e shpejtësive 0 deri 1500

m/s.

Figura 2.6 Shpërndarja e Maksuellit e

shpejtësive për temperaturën 1000K në

të tregohen shpejtësia më probabël,

shpejtësia mesatare dhe shpejtësia rms .

2.4 Gazi me goditje të rastit

Duke përdorur kompjuterin mund të kuptojmë diçka edhe për zhvillimin e funksionit të

shpërndarjes duke shqyrtuar në kohë të ndryshme gazin e përbërë nga grimca që godinen

elastikisht me njëra tjetrën në mënyrë të rastit. Programi GAS3D kryen llogaritjet për këtë.

Grimcat mund ta nisin lëvizjen nga çdo gjendje që të doni. Një menyrë e përshtatëshme

është të nisen grimcat me energji të rastit brenda një intervali rreth një vlere të dhënë

mesatare. Pasi zgjidhet se sa goditje duam që të pësojë gazi dhe sa shpesh duam ta printojmë

rezultatin, fillojmë procesin e goditjeve. Për çdo goditje duhen zgjedhur në mënyrë të rastit dy

molekula që duhet të goditen . Pastaj duhet zgjedhur parametrat të cilat përcaktojnë që goditja

është elastike. Në rastin tre-dimensional mund të zgjidhen këndet (kosinuset e këndeve) me të

Page 149: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

147

cilat grimcat lëvizin pas goditjes; në bazë të ligjit të kosinuseve drejtues të një drejtimi dhe në

bazë të ligjit të ruajtjes së energjisë, përcaktohen energjitë e të dy grimcave pas goditjes. (Në

rastin një- dimensional mund të zgjidhet energjia e njerës grimcë pas goditjes dhe nga ligji i

ruajtjes gjendet energjia e grimcës tjetër. Në një situatë të tillë nuk ruhet impulsi). duke

përdorur një gjenerator numrash të rastit që ka kompjuteri, u jepen vlera të reja (të rastit)

parametrave të rastit.

Këto goditje të rastit kryhen një numer herësh që zgjidhet. Është e përshtatëshme që ta

ruajmë funksionin e shpërndarjes (numri i grimcave që kanë energji të ndryshme) gjatë

vazhdimit të egzekutimit të programit. Kjo mund të bëhet duke përcaktuar një vektor densiteti

elementët e të cilit paraqesin numrat e grimcave që kanë energji midis 0 dhe E, E dhe 2 E,

2 E dhe 3 E etj. Për të egzaminuar funksionin e shpërndarjes çdo herë printohet vektori i

shpërndarjes (ose vizatohet në grafik numri i grimcave në funksion të energjisë).

Ndërkohë që numri i goditjeve rritet, shpërndarja i afrohet asaj të Maksuell-Boltzman. Një

zgjerim tjetër i këtyre ideve do të ishte shqyrtimi i shpërndarjes së grimcave pas një numer

goditjesh në hapësirën fazore. Mund të vihet re se goditjet e rastit e çojnë gazin gjithnjë e më

afër funksionit të shpërndarjes të mirënjohur.

Programi GAS3D.BAS

10 REM programi gas3d llogarit funksionin e shperndarjes sipas energjive

20 REM ne nje gaz ideal me molekula qe goditen ne menyre te rastit.

100 DIM e(2001), d(101), x(101), y(101)

110 n = 2000

120 e1 = 12.5 / 100

130 n0 = 1000

140 FOR i = 1 TO n

150 e(i) = e1* 100 * RND

160 n1 = 1 + INT(e(i) / e1)

170 d(n1) = d(n1) + 1

180 NEXT i

190 REM PRINT "energjia", "nr. i molek afer kesaj energjie"

200 FOR k = 1 TO 5

210 FOR i = 1 TO n0

220 j0 = 1 + n * RND

230 j1 = 1 + n * RND

240 e0 = e(j0) + e(j1)

250 n1 = 1 + INT(e(j0) / e1)

260 d(n1) = d(n1) - 1

270 n1 = 1 + INT(e(j1) / e1)

280 d(n1) = d(n1) - 1

290 c0 = RND

300 c1 = RND

310 REM e(j0) = e0 / 2 + SQR(e0 ^ 2 - 4 * e(j0) * e(j1) * c0 * c0) * c1 / 2

311 e(j0) = e0 / 2 + (e(j0) - e(j1)) * c0 / 2

320 e(j1) = e0 - e(j0)

330 n1 = 1 + INT(e(j0) / e1)

340 d(n1) = d(n1) + 1

350 n1 = 1 + INT(e(j1) / e1)

360 d(n1) = d(n1) + 1

370 NEXT i

Page 150: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

148

375 SCREEN 1

380 FOR i = 1 TO 101

390 REM PRINT (i - .5) * e1, d(i)

391 y(i) = INT(d(i) / 2)

392 x(i) = INT(40 * (i - .5) * e1)

393 REM PRESET (x%, y%), k

394 REM PSET (x%, y%), k

395 LINE (x(i - 1), y(i - 1))-(x(i), y(i)), k

400 NEXT i

401 LINE (0, 0)-(250, 0)

402 LINE (0, 0)-(0, 200)

410 NEXT k

413 SCREEN 0

420 END

Programi GAS3D.FOR

DIMENSION EN(2000), NDENS(26)

NPART = 2000 numri i grimcave

DELTE=12.5/25. E për çdo densitet

NCOLL=1000 numri i goditjeve midis printimeve të rezultatit

DO 10 I=1,NPART

EN(I) = DELTE*25. * RANF(0.) energjia fillestare

N = 1 + INT(EN(I) / DELTE)

10 NDENS(N) = NDENS(N) + 1 densiteti i shpërndarjes

DO 40 K = 1,5 numri i printimit të rezultateve

DO 50 I = 1,NCOLL hapi nga njera goditje në tjetrën

J0 = 1 + NPART * RANF(0.) zgjedhja e grimcave që goditen rastësisht

J1 = 1 + NPART * RANF(0.)

ETOT = EN(J0) + EN(J1) energjia totale e çiftit që goditet

N = 1 + INT(EN(J0) /DELTE)

NDENS(N) = NDENS(N) - 1 heq grimcën e parë nga densiteti

N = 1 + INT(EN(J1) /DELTE

NDENS(N) = NDENS(N) - 1) heq grimcën e dytë nga densiteti

C0 = RANF(0.) zgjedhja e parametrave të goditjes

C1 = RANF(0.) në mënyrë të rastit

EN(J0)=ETOT/2.+SQRT(ETOT**2 - 4.*EN(J0)* EN(J1)*C0*C0)*C1/2. ener.e re

EN(J1)= ETOT-EN(J0) energjia e re e grimcës së dytë

N = 1 + INT(EN(J0) / DELTE)

NDENS(N) = NDENS(N) + 1 shton grimcën e parë në densitet

N = 1 + INT(EN(J1) / DELTE)

50 NDENS(N) = NDENS(N) + 1 shton grimcën e dytë në densitet

DO 40 I =1,26

AI=I

E=(AI-.5)*DELTE

40 PRINT 100,E,NDENS(I) printimi i densitetit të grimcave

100 FORMAT(1X,F10.2,I8)

STOP

END

2.5 Metoda Monte Karlo e përdorur për modelin e Izingut

Page 151: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

149

Proceset statistikorë mund të simulohen duke përdorur një gjenerator numrash të rastit.

Modeli i Izingut që është një rjetë dy-dimensionale në kulmet e së cilës ndodhen spine që janë

të orientuara poshtë ose lart , shërben si një ilustrim. Supozojmë se rjeta e spineve ndodhet në

një fushë manjetike uniforme. Seicili spin ka dy energji të mundëshme për dy orientime të

mundëshme të drejtimit të spinit në lidhje me fushën magnetike. Nëse, vec kësaj, çdo spin

ndjen edhe fushën magnetike të spineve fqinjë, atëhere rezulton një numër i madh i energjive

të mundëshme në varësi të asaj se si janë orientuar spinet fqinje (pra edhe fusha magnetike e

krijuar nga këto spine).

Nëse çiftimi midis spineve fqinje është mjaft i fortë, atëhere të gjitha spinet do të

orientoheshin në një drejtim spontanisht në temperatura mjaft të ulta. Nëse çiftimi midis

spineve është i tillë që i bën fqinjët të tentojnë të parelelizojnë spinet me njeri tjetrin, atëhere

rezulton një ferromagnet; nëse fqinjët tentojnë të të jenë antiparalel atëhere rezulton një

antiferromagnet. Në temperatura mjaft të larta ky çiftim midis spineve prishet nga çorientimi

termik, pra spinet nuk mund të paralelizohen edhe sikur të tentojnë si rezultat i

bashkëveprimit me fqinjët.

Metoda Monte-Karlo për këtë problem procedon me mënyrën e mëposhtëme. Kalohet

nëpër gjithë spinet e rjetës . Për çdo spin llogaritet energjia e spinit në drejtimin që është dhe

në drejtimin e kundërt. Nëse energjia është më e ulët në rastin e dytë atëhere përmbyset spini

(kthehet në drejtimin e kundërt);nëse energjia nuk është më e ulët, atëhere shqyrtojmë faktorin

e Boltzmanit (exp(- E/kT)), ku E është diferenca e energjive midis dy orientimeve të

ndryshme të spinit. Nëse energjia nuk është më e ulët kur përmbyset spini , atëhere spini

përmbyset në mënyrë statistikore me një probabilitet për njësi të kohës të dhënë nga faktori i

Boltzmanit. Teknika Monte-Karlo thërret një numër të rastit (midis 0 dhe 1) dhe krahason

numrin e rastit me faktorin e Boltzmanit. Nëse numri i rastit është më i vogël ose baraz me

faktorin e Boltzmanit atëhere kompjuteri e përmbys spinin; nëse numri i rastit është më i

madh se faktori i Boltzmanit; spini mbetet i pandryshuar. Duke qënë se numri i rastit ndryshon

në çdo hap,atëhere sekuenca e hapave simulon procesin statistikor. Programi që e realizon

këtë është programi ISING.

Me këtë program mund të studiohet rjeta e spineve në detaje. Jo vetëm mund të llogaritet

spini total mesatar (magnetizimi) i rjetës në një temperaturë të dhënë (i mesatarizuar mbi

shumë gjendje të mundëshme, dmth pas shumë iteracionesh nëpër rjetë) por mund të

llogariten edhe depërtueshmëria magnetike (susceptibiliteti ) dhe nxehtësia specifike e

sistemit (të cilat janë të lidhura me me fluktuacionet e sistemit rreth energjisë mesatare dhe

magnetizimit). Mund të printohen rjeta e spineve pas çdo iteracioni dhe të shqyrtohen një

numër statistikisht ekuivalentë gjendjesh të mundëshme.

Nëse çiftimi i spineve fqinje është i fortë dhe temperatura jo mjaft e ulët sa të lejojë

gjendjen komplet të renditur , atëhere tendenca e orientimit të spineve nuk e mposht dot

çorientimin termik dhe fluktuacionet e mesme e të mëdha bëhen të dukëshme. Rajone të

rjetës bëhen me spine të renditur megjithëse gjithë rjeta nuk e është e renditur. Temperatura

kalimit nga kjo gjendje në gjendje komplet të çorientuar quhet temperatura Kyri, e njejta

temperaturë për antiferromagnetikët quhet temperatura Neel. Përcaktimi i këtyre

temperaturave ka rëndësi të madhe praktike (në teknologji).

Programi ISING.BAS

10 REM PROGRAMI ISING LLOGARIT NXEHTESINE SPECIFIKE DHE

SUSCEPTIBILITETIN

20 REM E NJE MODELI ISING TE NJE RJETE SPINESH.

100 DIM S(11, 11), T(11, 11)

Page 152: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

150

110 PRINT "NUMRI I SPINEVE TE ORIENTUAR NE NJE ANE?";

120 INPUT N0

130 PRINT "KONSTANTJA E CIFTIMIT (NE MAGNETON TE BOHR-IT)?";

140 INPUT J0

150 PRINT "NUMURI I RASTEVE PER MESATARIZIM TE ANSAMBLIT?";

160 INPUT N9

170 PRINT

180 PRINT "T(KELVIN),B(TESLA)?";

190 INPUT T, B

200 FOR I = 1 TO N0 + 1

210 FOR J = 0 TO N0 + 1

220 S(I, J) = 1

230 T(I, J) = 1

240 NEXT J

250 NEXT I

260 N8 = 1

270 FOR K = 1 TO N9

280 FOR I = 1 TO N0

290 FOR J = 1 TO N0

300 S0 = T(I - 1, J) + T(I + 1, J) + T(I, J - 1) + T(I, J + 1)

310 E1 = -9.47E-24 * (B + J0 * S0) * S(I, J)

320 E3 = -E1

330 IF (E3 - E1) < 0 THEN 360

340 E9 = EXP(-(E3 - E1) / (1.3806E-23 * T))

350 IF E9 < RND THEN 370

360 S(I, J) = -S(I, J)

370 NEXT J

380 NEXT I

390 FOR I = 1 TO N0

400 T(N0 + 1, I) = S(1, I)

410 S(N0 + 1, I) = S(1, I)

420 T(0, I) = S(N0, I)

430 S(0, I) = S(N0, I)

440 T(I, N0 + 1) = S(I, 1)

450 S(I, N0 + 1) = S(I, 1)

460 T(I, 0) = S(I, N0)

470 S(I, 0) = S(I, N0)

480 NEXT I

490 IF N8 = 1 THEN 630

500 E1 = 0

510 M1 = 0

520 FOR I = 1 TO N0

530 FOR J = 1 TO N0

540 S0 = S(I + 1, J) + S(I - 1, J) + S(I, J + 1) + S(I, J - 1)

550 E1 = E1 - .67174 * (B + J0 * S0) * S(I, J) / T

560 M1 = M1 + S(I, J)

570 NEXT J

580 NEXT I

590 E0 = E0 + E1

Page 153: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

151

600 E2 = E2 + E1 * E1

610 M0 = M0 + M1

620 M2 = M2 + M1 * M1

630 NEXT K

640 IF N8 = 2 THEN 710

650 E0 = 0

660 E2 = 0

670 M0 = 0

680 M2 = 0

690 N8 = 2

700 GOTO 270

710 E0 = E0 / N9

720 E2 = E2 / N9

730 M0 = M0 / N9

740 M2 = M2 / N9

750 PRINT "ENERGJ. MESATARE="; E0 / (N0 * N0); "KT="; E0 * 1.3806E-23 * T

760 PRINT "NXEHT. SPECIFIKE="; (E2 - E0 * E0) / (N0 * N0); "NE NJESI

KT/NR.GRIMC."

770 PRINT "MAGNETIZ. MESATAR="; M0 / (N0 * N0)

780 PRINT "SUSCEPTIBILITETI="; .67174 * (M2 - M0 * M0) / (N0 * N0 * T);

"MAGN./TESLA-NR.GRIM."

790 GOTO 170

800 END

Programi ISING.FOR modeli 2-dimesional i Isingut për spinet që baskëveprojnë

REAL J0,MAG0,MAG1,MAG2,MAGAV

DIMENSION SNEW(12, 12), SOLD(12, 12)

DATA NSPIN,J0,NAV/10,.1,20/ gjeometria e spineve

ANSPIN=NSPIN

ANV=NAV

10 READ(5,100)T,B

IF (T-999.) 5,90,90

5 DO 20 I = 1,NSPIN+2 inicializimi i spineve

DO 20 J = 1,NSPIN+2

SNEW(I,J)=1.

20 SOLD(I,J)=1.

N8=1 kalimi për herën e parë nëpër rjetë

22 DO 70 K=1,NAV hapi nga një iteracion në tjetrin

DO 30 I=2,NSPIN+1 hapi nga një spin në tjetrin

DO 30 J=2,NSPIN+1

S0 = SOLD(I - 1, J) + SOLD(I + 1, J) + SOLD(I, J - 1) + SOLD(I, J + 1)

EN1 = -9.47E-24 * (B + J0 * S0) * SNEW(I, J) energjia e spineve lart

E3 = -EN1 energjia e spineve poshtë

IF (E3 - EN1) 28,25,25 nëse rritet energjia,përmbys spinin

25 E9 = EXP(-(E3 - EN1) / (1.3806E-23 * T)) faktori exp(- E/kT)

IF (E9 - RANF(0)) 30,28,28 përmbys spinin statikisht

28 SNEW(I, J) = -SNEW(I, J)

30 CONTINUE

DO 40 I=2,NSPIN+1

Page 154: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

152

SOLD(NSPIN + 2, I) = SNEW(1, I) kushtet kufitare periodike

SNEW(NSPIN + 2, I) = SNEW(1, I)

SOLD(1, I) = SNEW(NSPIN, I)

SNEW(1, I) = SNEW(NSPIN, I)

SOLD(I, NSPIN + 2) = SNEW(I, 2)

SNEW(I, NSPIN + 2) = SNEW(I, 2)

SOLD(I, 1) = SNEW(I, NSPIN+1)

40 SNEW(I, 1) = S(I, NSPIN+1)

IF (N8 - 1) 45,70,45

45 EN1 = 0.

MAG1 = 0.

DO 50 I = 2,NSPIN+1 shumimi i spineve

DO 50 J = 2 ,NSPIN+1

S0 = SNEW(I + 1, J) + SNEW(I - 1, J) + SNEW(I, J + 1) + SNEW(I, J - 1)

EN1 = EN1 - .67174 * (B + J0 * S0) * SNEW(I, J) / T energjia e spineve

50 MAG1 = MAG1 + SNEW(I, J) magnetizimi i spineve

EN0 = EN0 + EN1 shumimi për energjinë mesatare

EN2 = EN2 + EN1 * EN1 shumimi për nxehtësinë specifike

MAG0 = MAG0 + MAG1 shumimi për magnetizimin mesatar

MAG2 = MAG2 + MAG1 * MAG1 shumimi për susceptibilitetin

70 CONTINUE

IF (N8 - 2) 80,85,80

80 EN0 = 0.

EN2 = 0.

MAG0 = 0.

MAG2 = 0.

N8 = 2 kalimi për herën e dytë nëpër rjetë

GOTO 22

85 EN0 = EN0 / ANAV madhësitë mesatare

EN2 = EN2 / ANAV

MAG0 = MAG0 / ANAV

MAG2 = MAG2 / ANAV

EAV=EN0/ANSPIN**2 energji/spin

SPHT=(EN2-EN0**2)/NSPIN**2 nxehtësia specifike

MAGAV=MAG0/NSPIN**2 magnetizimi/spin

SUSC=.67174*(MAG2-MAG0**2)/(T*NSPIN**2 susceptibiliteti

PRINT 101,EAV,SPHT,MAGAV,SUSC

GOTO 10

90 STOP

100 FORMAT(2F10.5)

101 FORMAT(1X,4E12.4)

END

Problema

1. a. Shkruani një program që llogarit shpërndarjen e Maksuellit të shpejtësive.

b. Vizatoni shpërndarjen e Maksuellit për 1022

grimca në 40 K, 77

0 K, 20

0 C

10000 C dhe 10000

0 C.

c. Për seicilën temperaturë të pikës b. , përcaktoni sa grimca kanë energji të

mjaftueshme për të jonizuar atomin e hidrogjenit.

Page 155: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

153

2. a. Shkruani një program që llogarit shpërndarjen e Maksuellit të shpejtësive.

b. Modifikojeni programin në mënyrë që të trajtojë edhe shpërndarjen e

Boltzmanit për energjitë duke përfshirë energjinë kinetike dhe gravitacionale

(në fushën e Tokës vetëm).

c. Duke përdorur formën e përgjithëshme të energjisë gravitacionale, të tregohet

që rezulton ligji i atmosferës (që presupozon energjinë potenciale mgh ) kur

grimcat janë afër sipërfaqes së Tokës.

d. Studioni shpërndarjen e grimcave shumë larg Tokës.

Page 156: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

154

KAPITULLI I III

ELEKTRICITETI

3.1 Hyrje

Fushat elektrike zakonisht vizualizohen me anë të vijave të fushës ose sipërfaqeve

ekuipotenciale. Vijat e fushës elektrike kanë këto veti : 1) Në çdo pikë, tangentja në vijën e

fushës është paralel me fushën elektrike në këtë pikë. 2) Në çdo pikë, numri i vijave të fushës

(që çpojnë njësinë e sipërfaqes pingul me vijat) është proporcional me intensitetin e fushës në

këtë pikë, kjo dmth që aty ku intensiteti i fushës është më i madh aty vijat e fushës janë më të

dendura.Kjo tablo vizualizimi i fushës mund të përdoret edhe për fushën magnetike.

Sipërfaqet ekuipotenciale janë ato sipërfaqe në të cilat mund të lëvizë një ngarkesë

pikësore provë pa kryer punë, pra janë sipërfaqet pingul me vijat e fushës (F·dl =0). Kështu

mund të vizatohet një kontur ekuipotencial duke lëvizur pingul me vijat e fushës dhe kjo është

një mënyrë për të vizatuar konturet ekuipotenciale.

3.2 Formulat kryesore

1. Forca e bashkëveprimit midis dy ngarkesave pikësore q1 dhe q2 është:

F =1

4 0

1 2

3

q q

r

r ,

ku r është vektori që bashkon dy ngarkesat.

2. Forca që vepron mbi një ngarkesë pikësore q nga ana e ngarkesave q1 , q2 ...qN është:

Ftotale = Fi

i

N

1

=q q

r

i

4 0

3 r

3. Intensiteti i fushës elektrike , në çdo pikë jepet:

E = lim F

q0

, ku F është forca totale që vepron mbi ngarkesën

q00

q0 në pikën e dhënë nga ana e gjithë ngarkesave të tjera.

4. Vijat e fushës elektrike fillojnë në ngarkesa pozitive dhe mbarojnë në ngarkesa negative ose

në infinit.

5. Fluksi i vijave të fushës elektrike në çdo sipërfaqe S është : E SdS

.

6. Diferenca e potencialeve midis dy pikave A dhe B është VAB =WAB /q0 , ku WAB është

puna e kryer nga forca elektrike kur ngarkesa q0 zhvendoset nga A në B.

W dAB

A

B

F l

7. Potenciali i fushës që krijon një ngarkesë pikësore q në një pikë në largësi r prej saj është

Vq

r

1

4 0 , kur potenciali në infinit merret zero.

Page 157: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

155

8. Në të gjitha pikat e një sipërfaqeje ekuipotenciale, potenciali është i njëjtë.

9. Vijat e fushës elektrike në çdo pikë janë pingul me sipërfaqet ekuipotenciale.

3.3 Llogaritjet e vijave të fushës

Vijat e fushës mund të llogariten me anën e një procedure hap-pas-hapi. Në çdo hap përdoret

vetia e vijave që tangentja në to është paralel me drejtimin e fushës. Le të ndalemi në rastin

dy- dimensional (figura 3.1). Le ta zëmë se fusha është krijuar nga disa ngarkesa pikësore që

ndodhen në një plan dhe shqyrtojmë fushën në një pikë (x , y ) të këtij plani. Intensiteti i

fushës në këtë pikë eshtë gjetur nga shumimi i termave ( / )( )q r4 0

3 r / për të gjitha

ngarkesat. Le të përshkojmë një hap të vogël s përgjatë vijës së fushës nga pika (x, y) në

pikën (x+x , y+y ) . Për hapa të vegjël s , trekëndëshi i formuar nga x ,y dhe s është i

ngjashëm me trekëndëshin e formuar nga Ex , Ey dhe E Ex y

2 2 .

Figura 3.1 Trekëndëshat (x ,y , s)

dhe (Ex , Ey , E ) janë të ngjashëm në

çdo pikë të vijës së fushës.

Kështu x dhe y jepen nga

x sE

E E

x

x y

2 2

; y sE

E E

y

x y

2 2

. Duke nisur nga pika e re (x+x , y+y )

e duke nisur përsëri procesin ne mund të ecim hap pas papi nëpër vijën e fushës.

E njëjta strategji mund të përdoret edhe për trasimin e kontureve ekuipotenciale. Me që

këto konture janë pingule me vijat e fushës , mjafton që në çdo hap të lëvizet pingul me E .

Nëse çvendosemi me s përgjatë një konturi ekuipotencial atëhere kemi :

x sE

E E

y

x y

2 2

; y sE

E E

x

x y

2 2

. Të njëjtat rezultate do merreshin sikur të

rrotullonim sistemin x , y të kordinatave me këndin 900 në lidhje me orientimin e përdorur

për vijat e fushës. Duke nisur nga pika e re (x +x ,y+y ) në konturin ekuipotencial mund ta

përsërisim procesin . Programi EV kryen llogaritjet e vijave të fushës dhe konturet

ekuipotenciale sipas këtij algoritmi.Varianti BASIC i këtij programi përmban edhe komandat

grafike për vizualizimin e vijave të fushës dhe kontureve ekuipotenciale.

Page 158: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

156

Programi EV.BAS

10 REM PROGRAMI EV.BAS LLOGARIT VIJAT E FUSHES ELEKTRIKE DHE

KONTURET EKUIPOTENCIALE.

100 DIM Q(10), X(10), Y(10)

110 PRINT "NUMRI I NGARKESAVE";

120 INPUT N0

130 FOR I = 1 TO N0

140 PRINT "Q,X,Y PER NGARKESEN E"; I

150 INPUT Q(I), X(I), Y(I)

160 NEXT I

170 PRINT

180 PRINT "VIJA FUSHE (+1) OSE EKUIPOTENCIALE(-1)";

190 INPUT E

200 PRINT "PIKA E NISJES (X,Y)"

210 INPUT X0, Y0

220 REM PRINT "X", "Y"

230 X1 = X0

240 Y1 = Y0

250 D = 0

260 F1 = 0

270 F2 = 0

280 F0 = .1

290 F3 = 0

300 F4 = 0

310 FOR I = 1 TO N0

320 X9 = X1 + F1 / 2 - X(I)

330 Y9 = Y1 + F2 / 2 - Y(I)

340 R9 = SQR(X9 ^ 2 + Y9 ^ 2)

350 R9 = R9 ^ 3

360 F3 = F3 + Q(I) * X9 / R9

370 F4 = F4 + Q(I) * Y9 / R9

380 NEXT I

390 F5 = SQR(F3 ^ 2 + F4 ^ 2)

400 IF E = -1 THEN 440

410 F1 = F0 * F3 / F5

420 F2 = F0 * F4 / F5

430 GOTO 460

440 F1 = F0 * F4 / F5

450 F2 = -F0 * F3 / F5

460 X1 = X1 + F1

470 Y1 = Y1 + F2

480 D = D + F0

490 IF D < .5 THEN 520

500 D = 0

510 REM PRINT X1, Y1

520 IF ABS(X1 - X0) + ABS(Y1 - Y0) < .9 * F0 THEN 170

530 FOR I = 1 TO N0

540 IF ABS(X1 - X(I)) + ABS(Y1 - Y(I)) < .9 * F0 THEN 170

550 NEXT I

Page 159: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

157

560 IF ABS(X1) + ABS(Y1) > 300 THEN 170

561 SCREEN 1

562 FOR I = 1 TO N0

563 IF Q(I) < 0 THEN 566

564 LINE (INT(X(I)) - 1, INT(Y(I)))-(INT(X(I)) + 1, INT(Y(I)))

565 LINE (INT(X(I)), INT(Y(I)) - 1)-(INT(X(I)), INT(Y(I)) + 1)

566 LINE (INT(X(I)) - 1, INT(Y(I)))-(INT(X(I)) + 1, INT(Y(I)))

567 CIRCLE (INT(X(I)), INT(Y(I))), 2

568 NEXT I

569 PRESET (INT(X1), INT(Y1))

570 PSET (INT(X1), INT(Y1))

571 REM SCREEN 0

572 GOTO 290

580 END

Programi EV.FOR

DIMENSION Q(10), XPOS(10), YPOS(10)

READ(5,100)NUMQ

DO 10 I = 1,NUMQ,1

10 READ(5,101) Q(I), XPOS(I), YPOS(I) gjeometria e ngarkesave

20 READ(5,101) CONTUR,XSTART,YSTART pika nisëse

X = XSTART

Y = YSTART

PDIST = 0. inicializimi

DELTAX=0.

DELTAY=0.

DELTAS=0. hapi s

30 XFIELD = 0.

YFIELD =0.

DO 40 I = 1,NUMQ,1 shumimi për të gjithë burimet e fushës

XTOQ = X + DELTAX / 2. - XPOS(I)

YTOQ = Y + DELTAY / 2. - YPOS(I)

RTOQ = SQRT(XTOQ**2 + YTOQ**2) largësia r prej çdo ngarkese deri te pika

RCUBED= RTOQ**3 r3

XFIELD= XFIELD + Q(I) * XTOQ / RCUBED Ex

40 YFIELD= YFIELD + Q(I) * YTOQ / RCUBED Ey

ABSFLD=SQRT(XFIELD**2+YFIELD**) E

IF (CONTUR) 60,95,50

50 DELTAX=DELTAS*XFIELD/ABSFLD x për vijën e fushës

DELTAY=DELTAS*YFIELD/ABSFLD y për vijën e fushës

goto 70

60 DELTAX= - DELTAS*YIELD/ABSFLD x për konturin ekuipotencial

DELTAY=DELTAS*XELD/ABSFLD y për konturin ekuipotencial

70 X=X+DELTAX x i ri

Y=Y+DELTAY y i ri

PDIST=PDIST +DELTAS grupi i printimit

IF (PDIST.LT..5) GOTO 80

Page 160: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

158

PDIST=0.

PRINT 102,X,Y

80 IF (ABS(X-XSTART)+ABS(Y-YSTART).LT..9*DELTAS) GOTO 20 kushti i

rikthimit në vijën tjetër.

DO 90 I=1,NUMQ,1

90 IF (ABS(X-XPOS(I)+ABS(Y-YPOS(I)).LT..9*DELTAS) GOTO 20 kushti i

rikthimit tek ngarkesa tjetër

GOTO 30 rikthim tek hapi tjetër

100 FORMAT(I2)

101 FORMAT(3F5.2)

102 FORMAT(1X,2E15.5)

95 STOP

END

Duke përdorur këtë program mund të vizatohen vijat e fushës dhe sipërfaqet ekuipotenciale

për një sistem N ngarkesash pikësore. Edhe shpërndarje të tjera ngarkesash (si shufra të

ngarkuara, ngarkesa sferike etj) mund të përdoren në llogaritje, pra metoda nuk vë kufizime

për formën e shpërndarjes së ngarkesës. Figura 3.2 është një shembull prove për metodën.Në

të janë treguar vijat e fushës elektrike që fillojnë çdo 450 përreth një ngarkese pikësore si dhe

disa sipërfaqe ekuipotenciale që kanë të njëjtën diferencë potenciali. Vijat e fushës janë

radiale dhe sipërfaqet ekuipotenciale janë sferike (konturet ekuipotenciale janë rrethore) .

Figura 3.3 tregon një rast pak më të komplikuar , rasti i dy ngarkesave një pozitive dhe një

negative në madhësi të barabarta (dipoli elektrik).

Figura 3.2 Vijat e fushës dhe konturet

ekuipotenciale për një ngarkesë

pikësore. Vijat janë zgjedhur çdo 450

përreth ngarkesës; ekuipotencialet janë

për V=1,2,3,4 (në njësi të normalizuara)

Page 161: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

159

Figura 3.3 Vijat e fushës dhe konturet

ekuipotenciale për një dipol . Vijat e

fushës fillojnë në ngarkesën pozitive

dhe mbarojnë në ngarkesën negative.

3.4 Metoda e pasqyrimit

Një rezultat interesant i elektrostatikës është se, tabloja e fushës që krijon një ngarkesë

pikësore (ose disa ngarkesa pikësore) afër një pllake përcjellëse (të tokëzuar) (ose një grupi

pllakash) është i njëjtë me atë të krijuar nga ngarkesat origjinale dhe pasqyrimet e tyre nga

pllaka (ose pllakat). Nëse kemi vetëm një ngarkesë dhe një plan përcjellës atëhere ka vetëm

një ngarkesë të pasqyruar, e cila është e njëjtë në madhësi me ngarkesën origjinale por në

shenjë të kundërt dhe e vendosur prapa planit në të njëjtën largësi prej planit sa edhe ngarkesa

origjinale. Kur janë të pranishme më shumë plane atëhere ngarkesat e pasqyruara kanë

ngarkesa të tjera të pasqyruara dhe situata ndërlikohet.

Kompjuteri mund të përdoret për të plotuar vijat e fushës dhe ekuipotencialet pas

llogaritjes së fushës totale në çdo pikë. Kompjuteri mund të përdoret edhe për të llogaritur

pozicionet dhe vlerat e ngarkesave të pasqyruara. Programi PASQYRIM llogarit vijat e fushës

për një ngarkesë pikësore të vendosur në çdo vend midis dy pllakave përcjellëse paralele të

tokëzuara. Kur ngarkesa është në mesin e largësisë midis pllakave , pozicionet e ngarkesave të

pasqyruara i ngjajnë një serie binormale. Kur ngarkesa është jashtë qendrës, pozicionet

formojnë një seri të ndërlikuar. Kompjuteri gjen (dhe ruan) vlerat e pozicioneve të ngarkesave

pasqyrim në mënyrë iterative; ai llogarit pasqyrimet e pasqyrimeve me radhë. Duke patur të

ruajtura ngarkesat pasqyrim ai llogarit vijat e fushës (dhe ekuipotencialet) me metodën

iterative hap-pas-hapi duke supozuar që fusha krijohet nga ngarkesa origjinale dhe të gjitha

pasqyrimet e tyre.

Programi PASQYRIM.BAS

10 REM PROGRAMI PASQYRIM.BAS LLOGARI VIJAT E FUSHES OSE

15 REM EKUIPOTENCIALE PER

20 REM NJE NGARKESE MIDIS DY PLLAKAVE TE TOKEZUARA.

100 DIM Q(20), Y(20)

110 PRINT "LARTESIA E Q,LARGESIA MIDIS PLLAKAVE?"

120 INPUT D, L

130 N0 = 20

140 Q(1) = 1

Page 162: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

160

150 Y(1) = D

160 Q(2) = -1 —————————————— y=L

170 Y(2) = 2 * L - D Q

180 Q(3) = -1 D {

190 Y(3) = -D _____________________________ y=0

200 FOR I = 4 TO N0

210 IF INT(I / 2) <> I / 2 THEN 250

220 Y(I) = L + (L - Y(I - 1))

230 Q(I) = -Q(I - 1)

240 GOTO 270

250 Y(I) = -Y(I - 3)

260 Q(I) = -Q(I - 3)

270 NEXT I

280 PRINT "VIJA FUSHE (+1) OSE EKUIPOTENCIALE(-1),(X,Y) I NISJES?"

290 INPUT E, X1, Y1

300 REM PRINT "X", "Y"

310 X0 = X1

320 Y0 = Y1

330 F1 = 0

340 F2 = 0

350 F0 = .1

360 F3 = 0

370 F4 = 0

380 FOR I = 1 TO N0

390 X9 = X1 + F1 / 2

400 Y9 = Y1 + F2 / 2 - Y(I)

410 R9 = SQR(X9 ^ 2 + Y9 ^ 2)

420 R9 = R9 ^ 3

430 F3 = F3 + Q(I) * X9 / R9

440 F4 = F4 + Q(I) * Y9 / R9

450 NEXT I

460 F5 = SQR(F3 ^ 2 + F4 ^ 2)

470 IF E = -1 THEN 510

480 F1 = F0 * F3 / F5

490 F2 = F0 * F4 / F5

500 GOTO 530

510 F1 = F0 * F4 / F5

520 F2 = -F0 * F3 / F5

530 X1 = X1 + F1

540 Y1 = Y1 + F2

550 REM PRINT X1, Y1

560 IF ABS(X1 - X0) + ABS(Y1 - Y0) < F0 THEN 580

570 IF Y1 * (Y1 - L) > 0 THEN 280

571 SCREEN 1

572 LINE (0, 10)-(200, 10)

573 LINE (0, INT(L) + 10)-(200, INT(L) + 10)

574 CIRCLE (100, INT(D) + 10), 2

575 PRESET (INT(X1), INT(Y1) + 10)

576 PSET (INT(X1), INT(Y1) + 10)

Page 163: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

161

580 GOTO 360

590 END

Programi PASQYRIM.FOR

DIMENSION Q(20), YQ(20)

DATA HT,SEP,NUMQ/.5,1.,20/ lartësia e ngarkesës,largësia midis

pllakave,numri i ngarkesave të pasqyruara që merren në konsideratëimeve

Q(1) = 1. ngarkesa origjinale

YQ(1) = HT pozicioni i saj

YQ(2) = -1. pasqyrimi i parë njera pllakë

YQ(2) = 2. * SEP - HT pozicioni i saj

YQ(3) = -1. pasqyrimi i parë nga pllaka e dytë

YQ(3) = -HT pozicioni i saj

DO 10 I = 4,NUMQ cikli i pasqyrimeve të njëpasnjëshme

AI=I

IF (I / 2-AI / 2.) 5,4,5

4 YQ(I) = SEP + (SEP - YQ(I - 1))

Q(I) = -Q(I - 1)

GOTO 10

5 YQ(I) = -YQ(I - 3)

Q(I) = -Q(I - 3)

10 CONTINUE

15 READ(5,100)LINE,XST,YST vija fushe apo ekuipotenciale dhe pika fillestare

IF (LINE-999) 17,90,90

17 X = XST

Y = YST

DX = 0.

DY = 0.

DS = .1 hapi s

20 EX = 0.

EY = 0.

DO I = 1,NUMQ shumimi për gjithë ngarkesat

XTEM = X + DX / 2.

YTEM = Y + DY / 2. - YQ(I)

RTEM = (XTEM** 2 + YTEM** 2)**1.5 latgësia e seicilës ngarkesë nga

pika e fushës (me gjysëm-hap)

EX = EX + Q(I) * XTEM / RTEM Ex

40 EY = EY + Q(I) * YTEM / RTEM Ey

E = SQRT(EX** 2 + EY** 2) E

IF (LINE+1) 50,60,50

50 DX = DS*EY/ E x për ekuipotencialin

DY = -DS*EX/ E y për ekuipotencialin

GOTO 70

60 DX = DS*EX/ E x për vijën e fushës

DY = DS*EY/ E y për vijën e fushës

GOTO 70

70 X = X + DX x i ri

Y = Y + DY y i ri

Page 164: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

162

PRINT 101,X,Y

IF (ABS(X - XST) + ABS(Y - YST) - DS/2.) 15,15,80 rikthim në nisje?

80 IF(Y * (Y - SEP)) 20,15,15 a është jashtë pllakës?

90 STOP

100 FORMAT(15,2F10.5)

101 FORMAT(1X,2F10.4)

END

3.5 Lëvizja e ngarkesave në fushë elektrike

Me eksperiencën që është fituar nga programet që zbatojnë ligjin F= ma , ju mund të gjeni

trajektoret e ngarkesave në fushë elektrike dhe të demostroni ndryshimin midis trajektoreve

dhe vijave të fushës. Në fillim plotohet tabloja e vijave të fushës psh të një dipoli me ngarkesa

në pozicionet (+1,0) dhe (-1,0). Pastaj shkruhet programi i lëvizjes dy-dimensionale F = ma

ku si forcë merret qE në çdo pikë. Fillohet lëvizja psh nga pika (+1,+1) dhe duke integruar në

ligjin F = ma gjendet trajektorja e një ngarkese q. Do të vihet re se sapo ngarkesa fiton impuls

ajo tenton ti lërë vijat e fushës. Figura 3.4 tregon trajektore të një ngarkese pozitive në fushën

e një dipoli.

Figura 3.4 Trajektore e grimcës së

ngarkuar (vijat më të holla ) në fushën

e një dipoli.

Problema.

1. Llogaritni forcën që vepron mbi një ngarkesë pozitive njësi në pikën (0,+y) nga ana

e dyngarkesave pozitive 101 njësi të vendosura në pikëat (+x , 0) dhe (-x , 0). Merni

në fillim x =1. Vendosni edhe një ngarkesë në origjinë. Zgjidhni y =0.001,1,10,100

dhe 1000 njësi. Provoni që për y të vegjël ngarkesa e fiksuar në qendër është

e rëndësishme ,ndërsa për vlera të ndërmjetme të y, rezultati mund të përafrohet

me një shufër uniforme të pafundme të ngarkuar. Çfarë ndodh kur y merr vlera

të mëdha?

2. Llogaritni forcën mbi një ngarkesë provë nga ana e 36 ngarkesave të vendosura

në intervale 100 nëpër një rreth. Gjeni forcën për një seri pikash. Pse rezultati

Page 165: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

163

për qendrën e rrethi është jo tamam zero?

3. a. Të përafrohet një katror i ngarkuar (me një njësi brinja) që mbart ngarkesë

totale 1 njësi me një bashkësi 100 ngarkesash pikësore seicila me 0,01 njësi.

Të llogaritet fusha elektrike (në planin e ngarkesave) e këtyre ngarkesave në disa

pika të hapësirës. Sa larg prej katrorit ju mund të merni një përafrim të mirë?

Çfarë ndodh kur jemi shumë larg katrorit?

b. Duke përdorur llogaritjet e pikës a. dhe një subrutinë për vijat e fushës në

3 dimensione, llogaritni vijat e fushës së katrorit të përafruar.

c. Duke përdorur llogaritjet e pikës a., llogaritni dhe plotoni disa konture ekuipotenciale

në planin e katrorit.

4. Duke përdorur programin për vijat e fushës dhe ekuipotencialet, llogaritni dhe plotoni

vijat e fushës dhe ekuipotencialet për disa nga shpërndarjet e ngarkesave të mëposhtëme.

a. Ngarkesat pikësore: +2 në pikën (+1,0); -1 në pikën (0,0)

b. Ngarkesat pikësore: +1 në kulmet e një katrori; -4 në qendrën e tij

c. Ngarkesat pikësore : +1 dhe -1 të alternuara në kulmet e një oktaedri (një oktapol dy-

dimensional)

d. Dy sfera të vogla të ngarkuara uniformisht në shenja të kundërta

e. Katër drejtëza të pafundme uniformisht të ngarkuara pozitivisht që presin planin në kulmet

e një katrori.

5. Duke përdorur programin për integrimin e ekuacionit F = m a , të gjenden disa trajektore

për një ngarkesë pikësore a)pozitive dhe b)negative në fushën e një ngarkese të vetme

pozitive të fiksuar.

Përse për ngarkesa negative ndodhin orbita të mbyllura eliptike, ndërkohë që për të dy

sistemet ekuipotencialet janë rrathë? (Kujtoni që lëvizja orbitale ka energjinë totale

konstante)

6. a. Shkruani një program që llogarit fluksin nëpër plane pingule me boshtet kordinative

karteziane. Gjeni fluksin nëpër disa plane të tillë për fushën e krijuar nga një

ngarkesë pikësore në origjinë, një dipol me gjatësi të fundme të centruar në origjinë,

dhe një kuadripoli një dimensional të fundëm të centruar në origjinë.

Kujtoni tablotë e fushave për çdo rast shpërndarjeje.

b. Vendosini së bashku të gjitha llogaritjet për të gjetur fluksin nëpër sipërfaqen e një

kubi me me brinjë L të centruar në origjinë. Tregoni që ligji i Gausit kënaqet për çdo

shpërndarje ngarkesash për çdo kub (me çfardo brinje).

7. Fusha elektrike është konservative meqënëse diferenca e potencialeve midis çdo dy

pikave në fushë nuk varet nga rruga që ndiqet nga njera pikë në tjetrën. Shkruani një

program që llogarit diferencën e potencialeve për rrugë me pjesë segmentesh paralele

me boshtet kordinativë.

Fushën merreni të krijuar nga katër ngarkesa të barabarta në kulmet e një katrori.

Tregoni që diferenca e potencialeve nuk varet nga rruga që ndiqet. Me anë të kompjuterit

nuk mund të provohet pavarësia për çdo rrugë, prova bëhet vetëm analitikisht.

8. Ky problem demonstron një mënyrë për ndjekjen e vijave të fushës dhe ekuipotenciale

në mënyrë të ndryshme nga ajo e përshkruar deri tani.

a. Vendosim dy ngarkesa pikësore pozitive të njëjta në pikat (+1,0) dhe (-1,0). Mbuloni

katrorin me kulme ( 2,2) me një rjet prej 100 pikash. Llogaritni potencialin në çdo

pikë të kësaj rjete. Duke parë vlerat e potencialit ndiqni disa konture ekuipotencile.

duke parë vlerat e potencialit gjeni drejtimet e ndryshimit më të shpejtë të potencialit

në çdo pikë, që japin drejtimet e vijave të fushës.

b. Përfytyroni që këtë punë ta bëjë kompjuteri pra të ndjekë vlerat e potencialit të

ruajtura në kujtesë dhe të gjejë ekuipotencialet? Të shkruhet një program për

Page 166: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

164

këtë.Nganjëherë kjo mënyrë është më e mirë se ajo e diskutuar në tekst, nëse duam

të gjejmë shumë ekuipotenciale. Si mund të gjejmë vijat e fushës në këtë mënyrë?

9. Duke përdorur një program tuajin për vijat e fushës dhe ekuipotencialet, të gjënden ato

për një çift ngarkesash pikësore ose një shpërndarje vizore të ngarkesës që ju

mendoni se është interesant. Pastaj duke përdorur programin për F = m a , tregoni që

ngarkesa provë në fushë shumë rrallë do ndjekë vijat e fushës.

10. Mendoni për ndonjë problem të mësuar në kursin e elektricitetit në të cilin mund

të përdoret kompjuterin. Provoni ta zgjidhni problemin me kompjutër dhe krahasoni

rezultatin me atë që keni marrë nga kursi teorik.

3.6 Ekuacioni i Laplasit dhe i Puasonit.

Operacinet matematike si divergjenca,gradienti,rotori,laplasiani përdoren shumë në teorinë e

përgjithëshme të fushave elektrike e magnetike. P.sh. Intensiteti i fushës elektrike E është

gradienti i potencialit elektrostatik V : E = - V . Ligji i Gausit në trajtë diferenciale mund

të shkruhet nëpërmjet divergjencës së vektorit E ( E ) ,në formën :

E(x,y,z) = -

( , , )x y z

0

ku (x,y,z) është densiteti i ngarkesave në pikën (x,y,z). Aty ku nuk ka ngarkesa ana e djathtë e

ekuacionit bëhët zero. Një nga vetitë kryesore të fushës elektrostatike është që rotori i saj (

E) është zero kudo. Duke ditur që divergjenca e gradientit të një vektori ( E) jep

operatorin e Laplasit (2 = =

2

2

2

2

2

2x y z ) atëhere ekuacioni bazë i elektrostatikës

shkruhet :

2

V(x,y,z)= -

x y z, ,

0

,

që quhet edhe ekuacioni i Puasonit. Në zonat ku nuk ka ngarkesa , ky ekuacion sillet në

ekuacionin e Laplasit :

2

V(x,y,z)= 0 .

Para se të filloni zgjidhjen me kompjuter të ekucione të tilla, që janë ekuacione diferencile me

derivate të pjesëshme është mirë të praktikoheni me llogaritje derivatesh të pjesëshme. Në

programin GRAD ilustrohet një mënyrë e llogaritjes së komponenteve të gradientit të një

funksioni skalar i tre variablave. Funksioni i marë si shembull është potenciali elektrostatik i

fushës së krijuar nga një ngarkesë pikësore pozitive (me madhësi q = 0 ) të vendosur në

origjinë të kordinatave. Meqë fusha elekrike është radiale me kahe që i largohet ngarkesës q ,

gradienti në çdo pikë duhet të jetë drejtuar drejt origjinës. Për llogaritjen e derivateve është

përdorur përafrimi më i thjeshtë (diferenca në dy pika):

f

x

f x x y z f x x y z

x

( , , ) ( , , )

2

Në të njëjtën mënyrë janë përafruar edhe derivatet në lidhje me y dhe z . Ne mund të llogaritim

vlerat e komponenteve të gradientit numerikisht edhe nëse nuk mund të shkruajmë ekuacion

për funksionin skalar, sepse funksioni skalar mund të jepet edhe si një bashkësi vlerash, p.sh.

kur fusha elektrike është gjetur nga matjet e potencialit elektrik.

Programi GRAD.BAS llogarit gradientin e funksionit F(r)

100 DEF FNF(X,Y,Z)=1/SQR(X*X+Y*Y+Z*Z) F(r)

110 D=2^(-20) madhësia e intervalit

120 PRINT “PIKA E FUSHES” ;

Page 167: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

165

130 INPUT X0,Y0,Z0

140 G1=(FNF(X0+D,Y0,Z0)-FNF(X0-D,Y0,Z0))/(2*D) komponentja x e gradientit

150 G2=(FNF(X0,Y0+D,Z0)-FNF(X0,Y0-D,Z0))/(2*D) komponentja y e gradientit

160 G3=(FNF(X0,Y0,Z0+D)-FNF(X0,Y0,Z0+D))/(2*D) komponentja z e gradientit

170 PRINT “GRAD=“;G1,G2,G3

180 PRINT

190 GOTO 120

200 END

Programi GRAD.FOR llogarit gradientin e funksionit F(r)

F(X,Y,Z)=1/SQRT(X*X+Y*Y+Z*Z) F(r)

D=2.**(-20) madhësia e intervalit

10 READ(5,100) X0,Y0,Z0 pika e fushës

INPUT X0,Y0,Z0

20 GX=(F(X0+D,Y0,Z0)-F(X0-D,Y0,Z0))/(2*D) komponentja x e gradientit

GY=(F(X0,Y0+D,Z0)-F(X0,Y0-D,Z0))/(2*D) komponentja y e gradientit

GZ=(F(X0,Y0,Z0+D)-F(X0,Y0,Z0+D))/(2*D) komponentja z e gradientit

PRINT 101,X0,Y0,Z0

PRINT 102 GX,GY,GZ

GOTO 10

90 STOP

100 FORMAT(3F10.5)

101 FORMAT(1X,3F10.4)

102 FORMAT(1X,5H GRAD=,3E12.4)

END

Programi DIVROT tregon një mënyrë se si mund të gjenden divergjenca dhe rotori i një

vektori. Komponentet x,y,z të vektorit të fushës F janë funksione, në shembullin e zgjedhur

ato janë për fushën e një ngarkese pozitive të vendosur në origjinën e kordinatave. Edhe

divergjenca edhe rotori do të jenë zero kudo me përjashtim të origjinës së kordinatave.

Programi DIVROT.BAS divergjenca dhe rotori i vektorit F(r)

100 DEF FNX(X,Y,Z)=X/(X*X+Y*Y+Z*Z)^(3/2) Fx

110 DEF FNY(X,Y,Z)=Y/(X*X+Y*Y+Z*Z)^(3/2) Fy

120 DEF FNZ(X,Y,Z)=Z/(X*X+Y*Y+Z*Z)^(3/2) Fz

130 D=1/1024 intervali hapësinor për derivmin

140 PRINT “PIKA E FUSHES (X,Y,Z)”;

150 INPUT X0,Y0,Z0

160 D0=(FNX(X0+D,Y0,Z0)-FNX(X0-D,Y0,Z0))/(2*D)

170 D0=D0+(FNY(X0,Y0+D,Z0)-FNY(X0,Y0-D,Z0))/(2*D)

180 D0=D0+(FNZ(X0,Y0,Z0+D)-FNZ(X0,Y0,Z0+D))/(2*D) divergjenca

190 PRINT “DIV=“;D0

200 C1=(FNZ(X0,Y0+D,Z0)-FNZ(X0,Y0-D,Z0))/(2*D)

210 C1=C1-(FNY(X0,Y0,Z0+D)-FNY(X0,Y0,Z0-D))/(2*D) përbërësja x e rotorit

220 C2=(FNX(X0,Y0,Z0+D)-FNX(X0,Y0,Z0-D))/(2*D)

230 C2=C2-(FNZ(X0+D,Y0,Z0)-FNZ(X0-D,Y0,Z0))/(2*D) përbërësja y e rotorit

240 C3=(FNY(X0+D,Y0,Z0)-FNY(X0-D,Y0,Z0))/(2*D)

250 C3=C3-(FNX(X0,Y0+D,Z0)-FNX(X0,Y0-D,Z0))/(2*D) përbërësja z e rotorit

260 PRINT “ROT=“;C1;C2;C3

Page 168: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

166

270 PRINT

280 GOTO 140 rikthim tek pika e re e fushës

290 END

Programi DIVROT.FOR divergjenca dhe rotori i vektorit F(r)

FX(X,Y,Z)=X/(X*X+Y*Y+Z*Z)**1.5 Fx

FY(X,Y,Z)=Y/(X*X+Y*Y+Z*Z)**1.5 Fy

FZ(X,Y,Z)=Z/(X*X+Y*Y+Z*Z)**1.5 Fz

D=1./1024. intervali hapësinor për derivmin

10 READ(5,100)X0,Y0,Z0 pika e fushes

IF (X0-999.) 20,90,20

20 D0=(FX(X0+D,Y0,Z0)-FX(X0-D,Y0,Z0))/(2.*D)

D0=D0+(FY(X0,Y0+D,Z0)-FY(X0,Y0-D,Z0))/(2.*D)

D0=D0+(FZ(X0,Y0,Z0+D)-FZ(X0,Y0,Z0+D))/(2.*D) divergjenca

CX=(FZ(X0,Y0+D,Z0)-FZ(X0,Y0-D,Z0))/(2.*D)

CX=CX-(FY(X0,Y0,Z0+D)-FY(X0,Y0,Z0-D))/(2.*D) përbërësja x e rotorit

CY=(FX(X0,Y0,Z0+D)-FX(X0,Y0,Z0-D))/(2.*D)

CY=CY-(FZ(X0+D,Y0,Z0)-FZ(X0-D,Y0,Z0))/(2.*D) përbërësja y e rotorit

CZ=(FY(X0+D,Y0,Z0)-FY(X0-D,Y0,Z0))/(2.*D)

CZ=CZ-(FX(X0,Y0+D,Z0)-FX(X0,Y0-D,Z0))/(2.*D) përbërësja z e rotorit

PRINT 101,X0,Y0,Z0

PRINT 102,D0,CX,CY,CZ

GOTO 10 rikthim tek pika e re e fushës

90 STOP

100 FORMAT(3F10.5)

101 FORMAT(1X,3F10.4)

102 FORMAT(1X,6H DIV=,E10.4,7H ROT=,3E10.4)

END

3.6 Zgjidhja e problemeve të Elektrostatikës

Problemi i përgjithëshëm i Elekrostatikës është zgjidhja e ekuacionit të Puasonit: 2 V =- / 0

Ky ekuacion është thjeshtë kombinimi i ligjit të Gausit me faktin që E = - V . Në zonat ku

nuk ka ngarkesa, ekuacioni sillet në ekuacionin e Laplasit : 2 V = 0 . Situata më zakonshme

është kur njihet potenciali në sipërfaqen qe rrethon zonën që na intereson; duke përdorur

ekuacioni e Puasonit ose të Laplasit gjejmë potencialin kudo brenda zonës . Për ti zgjidhur

numerikisht këto ekuacione do ti përafrojmë derivatet e pjesëshme me diferencat :

a) e thjeshta (formula e dy pikave):

f

x

f x x y z f x x y z

x

f

x

f x x y z f x y z f x x y z

x

( , , ) ( , , );

( , , ) ( , , ) ( , , )

2

22

2 2

ose

b)të rendit më të lartë të përafrimit (formula e 4 pikave):

f

x

f x x y z f x x y z f x x y z f x x y z

x ( , , ) ( , , ) ( , , ) ( , , )2 8 8 2

12

,

2

2 2

2 16 30 16 2

12

f

x

f x x y z f x x y z f x y z f x x y z f x x y z

x ( , , ) ( , , ) ( , , ) ( , , ) ( , , )

Page 169: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

167

Duke përdorur këto diferenca mund të gjendet një shprehje që jep vlerën në një pikë në

funksion të vlerave në pikat përreth saj. Për thjeshtësi le të shqyrtojmë një zonë dy-

dimensionale. E ndajmë zonën në një rjetë pikash të barazlarguara me x dhe y. Vlera e V

në pikën (x , y ) mund të shprehet nëpërmjet vlerave në pikat më të afërta në rjetë. P.sh. duke

përdorur përafrimin e thjeshtë , ekuacioni i Laplasit shkruhet (me x = y =D) :

V x D y V x y D V x D y V x y D V x y

D

( , ) ( , ) ( , ) ( , ) ( , )

40

2 ose :

V x yV x D y V x y D V x D y V x y D

( , )( , ) ( , ) ( , ) ( , )

4 .

Pra potenciali në një pikë të të rjetës është përafruar si e mesme e vlerave në katër pikat fqinje

më të afërta. Programi LAPLAS ilustron një mënjyrë të zgjidhjes së ekuacionit të Laplasit me

këtë përafrim. Potenciali në kufirin e zonës katërkëndëshe këndrjetë ndryshon linearisht.

Fillimisht, të gjitha vlerat e V brenda zonës janë vendosur si mesatare e vlerave në

kufi.Ekuacioni i mësipërm për V në çdo pikë të rjetës është përdorur përsëri e përsëri në pikat

e brendëshme të rjetës derisa diferenca midis iteracioneve bëhet mjaft i vogël. Pikat kufitare

mbeten gjithë kohës në vlerat e tyre fillestare të përcaktuara.

Programi LAPLAS.BAS Zgjidhja e ekuacionit të Laplasit 2-dimensional

100 DIM V(10,10),U(10,10)

110 I0=10 numri i intervaleve sipas x

120 J0=10 numri i intervaleve sipas y

130 FOR I=1 TO 10 cikli i dhënies së vlerave të potencialit në dy brinjë të katerkëndshit

140 V(I,1)=I

150 V(I,J0)=J0+(I-1)

160 V0=V0+V(I,1)+V(I,J0)

170 NEXT I

180 FOR J=2 TO J0-1 cikli i dhënies së vlerave të potencialit në dy brinjët e tjera

190 V(1,J)=J

200 V(I0,J)=I0+(J-1)

210 V0=V0+V(1,J)+V(I0,J)

220 NEXT J

230 V0=V0/(2*(I0+J0)) mesatarizimi i V në kufi (katërkëndëshi)

240 FOR I=2 TO I0-1 inicializimi i potencialit në brendësi të katërkëndëshit

250 FOR J=2 TO J0-1

260 V(I,J)=V0

270 NEXT J

280 NEXT I

290 V1=0

300 FOR I=1 TO I0 ckli i ruajtjes së vlerave të potencialit nga iteracioni i fundit

310 FOR J=1 TO J0

320 U(I,J)=V(I,J)

330 NEXT I

340 NEXT J

350 FOR I=2 TO I0-1 kalimi nëpër të gjitha pikat e brendëshme

360 FOR J=2 TO J0-1

370 V(I,J)=(U(I+1,J)+U(I-1,J)+U(I,J+1)+U(I,J-1))/4 potenciali i ri

380 IF V1>ABS((V(I,J)-U(I,J))/V(I,J)) THEN 400

390 V1=ABS((V(I,J)-U(I,J))/V(I,J)) ndryshimi fraksional i fundit i potencialit

Page 170: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

168

400 NEXT J

410 NEXT I

420 N=N+1 numri i iteracionit

430 IF V1>.001 THEN 290 prova për saktësi 0,1 %

440 PRINT “# I ITERACIONEVE NEPER RJETE =“;N grupi i printimit

450 FOR J=J0 TO 1 STEP -1

460 FOR I=1 TO I0

470 PRINT V(I,J),

480 NEXT I

490 PRINT

500 NEXT J

510 END

Programi LAPLAS.FOR Zgjidhja e ekuacionit të Laplasit 2-dimensional

DIMESION V(10,10),U(10,10)

I0=10 numri i intervaleve sipas x

J0=10 numri i intervaleve sipas y

DO 10 I=1,10 cikli i dhënies së vlerave të potencialit në dy brinjë të katerkëndshit

V(I,1)=I

V(I,J0)=J0+(I-1)

10 VAV=VAV+V(I,1)+V(I,J0)

DO 20 J=2,J0-1 cikli i dhënies së vlerave të potencialit në dy brinjët e tjera

V(1,J)=J

V(I0,J)=I0+(J-1)

20 VAV=VAV+V(1,J)+V(I0,J)

VAV=VAV/(2*(I0+J0)) mesatarizimi i V në kufi (katërkëndësh)

DO 30 I=2,I0-1 inicializimi i potencialit në brendësi të katërkëndshit

DO 30 J=2,J0-1

30 V(I,J)=VAV

NUMIT=0

35 DVMAX=0.

DO 40 I=1,I0 ckli i ruajtjes së vlerave të potencialit nga iteracioni i fundit

DO 40 J=1,J0

40 U(I,J)=V(I,J)

DO 50 I=2,I0-1 kalimi nëpër të gjitha pikat e brendëshme

DO 50 J=2,J0-1

V(I,J)=(U(I+1,J)+U(I-1,J)+U(I,J+1)+U(I,J-1))/4. potenciali i ri

50 DVMAX=AMAX0 (DVMAX,ABS((V(I,J)-U(I,J))/V(I,J))) ruan ndryshimin

fraksional më të madh

NUMIT=NUMIT+1 numri i iteracionit

IF (DVMAX-.001) 55,55,35 prova për saktësi 0,1 %

55 PRINT 100,NUMIT grupi i printimit

DO 60 J=1,J0

DO 60 I=1,I0

60 PRINT 101.I,J,V(I,J)

STOP

100 FORMAT(1X,27H# I ITERACIONEVE NEPER RJETE = , i3)

101 FORMAT(1X,2I4,F10.4)

END

Page 171: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

169

Në mënyrë të ngjashme mund të zgjidhet edhe ekuacioni i Puasonit. duke përdorur të njëjtin

përafrim për 2 V dhe duke shtuar në çdo pikë densitetin e ngarkesës, ekuacioni për

diferencat bëhet :

V x yV x D y V x y D V x D y V x y D D x y

( , )( , ) ( , ) ( , ) ( , ) ( / ) ( , )

2

0

4

.

Programi PUASON ilustron këtë metodë për një katërkëndësh këndrejtë me potencial 0 në

brinjët e tij. /0 është zgjedhur që të jetë 1 kudo.

Programi PUASON.BAS Zgjidhja e ekuacionit të Puasonit

100 DIM V(10,10),U(10,10)

110 I0=10 numri i intervaleve sipas x

120 J0=10 numri i intervaleve sipas y

130 FOR I=1 TO 10 cikli i dhënies së vlerave të potencialit në 4 brinjët e katerkëndshit

140 FOR J=1 TO 10

150 V(I,J)=0

160 NEXT J

170 NEXT I

180 V0=V0/(2*(I0+J0)) mesatarizimi i V në kufi (katërkëndëshi)

190 FOR I=2 TO I0-1 inicializimi i potencialit në brendësi të katërkëndëshit

200 FOR J=2 TO J0-1

210 V(I,J)=V0

220 NEXT J

230 NEXT I

240 V1=0

250 FOR I=1 TO I0 ckli i ruajtjes së vlerave të potencialit nga iteracioni i fundit

260 FOR J=1 TO J0

270 U(I,J)=V(I,J)

280 NEXT I

290 NEXT J

300 FOR I=2 TO I0-1 kalimi nëpër të gjitha pikat e brendëshme

310 FOR J=2 TO J0-1

320 R=1 (x,y)/0

330 V(I,J)=(U(I+1,J)+U(I-1,J)+U(I,J+1)+U(I,J-1)+R)/4 potenciali i ri

340 IF V1>ABS((V(I,J)-U(I,J))/V(I,J)) THEN 360

350 V1=ABS((V(I,J)-U(I,J))/V(I,J)) ndryshimi fraksional i fundit i potencialit

360 NEXT J

370 NEXT I

380 N=N+1 numri i iteracionit

390 IF V1>.001 THEN 290 prova për saktësi 0,1 %

400 PRINT “# I ITERACIONEVE NEPER RJETE =“;N grupi i printimit

450 FOR J=J0 TO 1 STEP -1

460 FOR I=1 TO I0

470 PRINT V(I,J),

480 NEXT I

490 PRINT

500 NEXT J

Page 172: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

170

510 END

Programi PUASON.FOR Zgjidhja e ekuacionit të Puasonit

DIMENSION V(10,10),U(10,10)

I0=10 numri i intervaleve sipas x

J0=10 numri i intervaleve sipas y

DO 10 I=1,10 cikli i dhënies së vlerave të potencialit në 4 brinjët e katerkëndshit

DO 10 J=1,10

V(I,J)=0.

10 V0=V0+V(I,J)

V0=V0/(2.*(I0+J0)) mesatarizimi i V në kufi (katërkëndëshi)

DO 20 I=2,I0-1 inicializimi i potencialit në brendësi të katërkëndëshit

DO 20 J=2,J0-1

20 V(I,J)=V0

NUMIT=0

30 DVMAX=0.

DO 40 I=1,I0 ckli i ruajtjes së vlerave të potencialit nga iteracioni i fundit

DO 40 J=1,J0

40 U(I,J)=V(I,J)

DO 50 I=2,I0-1 kalimi nëpër të gjitha pikat e brendëshme

DO 50 J=2,J0-1

RHO=1. (x,y)/0

V(I,J)=(U(I+1,J)+U(I-1,J)+U(I,J+1)+U(I,J-1)+RHO)/4 potenciali i ri

50 DVMAX=AMAX0 (DVMAX,ABS((V(I,J)-U(I,J))/V(I,J))) gjen ndryshimin maximum

NUMIT=NUMIT+1 numri i iteracionit

IF (DVMAX-.001) 55,55,30 prova për saktësi 0,1 %

55 PRINT 100,NUMIT grupi i printimit

DO 60 J=1,J0

DO 60 I=1,I0

60 PRINT 101.I,J,V(I,J)

STOP

100 FORMAT(1X,27H# I ITERACIONEVE NEPER RJETE = , I3)

101 FORMAT(1X,2I4,F10.4)

END

Zgjidhja e ekuacioni të Laplasit dhe Puasonit në zona me shumë kufinj është më i

ndërlikuar. Disa raste do te jepen në pjesën e dytë të këtij teksti. Ka një problem të përbashkët

për këto zona, të cilin e ilustrojmë me rastin kur kemi vendosur një ngarkesë pikësore pozitive

brenda një zone pa ngarkesa e cila ka potencial të fiksuar në kufijtë e saj. Një mënyrë e

zgjidhjes së problemit është të fiksojmë potencialin në pikat e rjetës që janë shumë afër

ngarkesës sepse në këto pika kontributi kryesor në krijimin e fushës është ai i ngarkesës

pikësore. Pra, aty ku ka ngarkesa pikësore mund të imagjinojmë brima sferike rreth

ngarkesave (shumë afër tyre) me potenciale të fiksuara.

Problema

1. Shqyrtojmë një zonë dy-dimensionale katrore pa ngarkesa në kufijtë e të cilës potenciali

rritet linearisht.

Page 173: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

171

a. Duke përdorur programin që zgjidh ekuacionin e

Laplasit, të gjendet potenciali brenda katrorit me

saktësi deri 0.1%.

b. Varioni numrin e pikave të rjetit që mbulon zonën

dhe gjeni se sa shpejt (në numër iteracionesh dhe kohë

ekzekutimi në kompjuter të përdorur) arrihet saktësia

0.1%.

c.Për një numër të caktuar pikash të rjetit, varioni

saktësinë dhe shikoni sa kohë zgjat ekzekutimi në

kompjuter.

2. Shqyrtojmë një zonë në formë katërkëndësh këndrejtë pa ngarkesa me potencial

konstant në brinjët e katërkëndëshit.

a. Duke përdorur programin që zgjidh ekuacionin e Laplasit , gjeni

potencialin brenda katërkëndëshit me saktësi deri 0.1%.

b. Varioni numrin e pikave të rjetit që mbulon zonën dhe gjeni sa

shpejt (në numër itëracionesh dhe kohë ekzekutimi në

kompjuter përdoret) arrihet skatësia 0.1%.

c. Për një numër të caktuar pikash të rjetit, varioni saktësinë

dhe shikoni sa kohë zgjat ekzekutimi në kompjuter.

3. Shqyrtojmë një zonë dy-dimensionale në formë katrore me një ngarkesë elektrike të

shpërndarë uniformisht brenda katrorit me densitet konstant =0 dhe me kufinj që

mbahen në potencial V=0.

a. Duke përdorur programin për zgjidhjen e ekuacionit të Puasonit, gjeni potencialin në

pikat brenda katrorit me saktësi deri 0.1%.

b. E zemë se densiteti i ngarkesës ndryshon me pozicionin sipas (x,y)=0 xy. Gjeni

potencialin e brendëshëm me saktësi deri 0.1%.

4. Të përdoren përafrimet e rendeve më të lartë për derivatet e dyta në ekuacionin e

Laplasit.

a. Shkruani programin duke përdorur këtë përafrim.( Për pikat afër kufirit është e

nevojëshme përdorimi i përafrimit të thjeshtë.)

b. Gjeni vlerat për potencialin e brendëshëm (me saktësi 0.1%) për një zonë katrore

pa ngarkesa dhe me potencial konstant në kufijtë e saj. Krahasoni këtë rezultat me

atë që merret kur përdoret përafrimi i thjeshtë. Shikoni numrin e iteracioneve dhe

kohën e ekzekutimit në kompjuter për një saktësi të dhënë.

c. Përgjithësojeni programin për zgjidhjen e ekuacionit të Puasonit.

3.7 Fusha Magnetike

Fushat magnetike statike krijohen nga rrymat stacionare . Telat ku rjedhin rrymat mund të jenë

të drejtë ose të përkulur; bobinat përcjellëse janë më të zakonëshme për prodhimin e fushave

magnetike. Sikurse fushat elektrostatike , fushat magnetostatike mund të vizualizohen me anë

të vijave fushës .Nëse rrymat ndryshojnë mjaft ngadalë në kohë , fusha magnetike që ndryshon

me kohën mund të llogaritet njëlloj si fushat statike . Vijat e fushës përcaktohet nga po ato

veti:

Page 174: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

172

1. Në çdo pikë, tangentja në vijën e fushës është paralel me fushën (vektorin e induksionit B )

në këtë pikë.

2. Në çdo pikë, numri i vijave të fushës (që kalojnë në njësinë e sipërfaqes pingul me vijat e

fushës) është proporcional me madhësinë e fushës (B) në këtë pikë.

Në rastin dy-dimensional , duke ecur sipas vijës së fushës me një hap s atëhere përbërëset e

zhvendosjes paralel me boshtet kordinative janë:

x sB

B By s

B

B B

x

x y

x

x y

2 2 2 2

Një ndryshim midis magnetostatikës dhe elektrostatikës është që nuk mund të veçojmë një

ngarkesë magnetke pozitive nga nje ngarkesë magnetike negative. Si pasojë në dallim nga

vijat e fushës elektrike , vijat e fushës magnetike nuk kanë fillim ose mbarim, pra janë të

mbyllura. Si ilustrim do shikojmë fusha të krijuara nga bobina e tela. Për këtë do kemi

parasysh formulat e mëposhtëme:

1. Forca që vepron mbi një ngarkesë q0 e cila lëviz me shpejtësi V në fushë elektrike e

magnetike është:

F=q0 ( E + V B )

ku E është intensiteti i fushës elektrike dhe B është induksioni i fushës magnetike.

2. Fusha magnetike që krijon një përcjellës i drejtë me rrymë I jepet :

B

0

02

I ,

drejtimi i saj përcaktohet nga rregulla e dorës së djathtë.

3. Cirkulacioni i fushës magnetike në një vijë të mbyllur jepet :

B l d I0 ,

ku I është intensiteti total i rrymës në sipërfaqen që qarkon kjo vijë e mbyllur.

4. Fusha magnetike e një elementi të vogël dl me rrymë I në një pikë në largësi r prej

elementit jepet nga ligji Bio-Savar :

dI d

rB

l r

0

34 dhe B = dB

5. F.e.m. (forca elektromotore) që lind në një kontur si rezultat i ndryshimit të fluksit në

sipërfaqen që kufizon konturi është :

E E l = -dd

dt

3.8 Disa raste të fushës magnetike

Si rasti më i thjeshtë është llogaritja e fushës magnetike që krijojnë përcjellsat drejtëvizorë.

Programi BWIRE bën ndjekjen evijave të fushës së disa përcjellsave drejtvizorë. Varianti

BASIC vizaton vijat e kësaj fushe.

Programi BWIRE.BAS

10 REM Programi BWIRE.BAS llogarit vijat e fushës të deri 100përcjellsave paralel me

boshtin Z

Page 175: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

173

90 DIM x(100), y(100), I(100)

100 S0 = .02 hapi s

110 PRINT " Numri i përclellsave?" ;120 INPUT N0130 FOR j = 1 TO N0140 PRINT " X, Y, I për përc jellsin e " ; j;150 INPUT x(j), y(j), I(j)160 NEXT j

gjeometria e pwrcjellsave

170 PRINT "Pika nisëse X,Y ";

180 INPUT X0, Y0

190 PRINT "X", "Y"

200 X1 = X0210 Y1 = Y0220 X2 = 0230 Y2 = 0240 B1 = 0250 B2 = 0

inicializimi

260 FOR j = 1 TO N0 shumimi sipas pwrcjellsave

270 X9 = Y1 + Y2 / 2 - y(j)280 Y9 = - (X1 + X2 / 2 - x(j))290 r2 = X9 * X9 + Y9 * Y9

r prej pwrcjellsit deri te pika e fushws(gjys.hap)

300 B1 = B1 + .0000002 * I(j) * X9 / r2 Bx

310 B2 = B2 + .0000002 * I(j) * Y9 / r2 By

320 NEXT j

330 B0 = SQR(B1 * B1 + B2 * B2) B

340 X2 = S0 * B1 / B0 x

350 Y2 = S0 * B2 / B0 y

360 X1 = X1 + X2 x i ri

370 Y1 = Y1 + Y2 y i ri

380 REM PRINT X1, Y1

390 IF ABS(X1 - X0) + ABS(Y1 - Y0) < .9 * S0 THEN 170 kthim nw nisje?

400 IF ABS(X1) + ABS(Y2) > 400 THEN 170 a wshtw shumw larg?

401 SCREEN 1402 FOR j = 1 TO N0403 IF I(j) < 0 THEN 405404 LINE (INT(x(j)), INT(y(j)) - 1) - (INT(x(j)), INT(y(j)) + 1)405 LINE (INT(x(j)) - 1, INT(y(j))) - (INT(x(j)) + 1, INT(y(j)))406 CIRCLE (INT(x(j)), INT(y(j))), 2407 NEXT j408 PRESET (INT(X1), INT(Y1))409 PSET (INT(X1), INT(Y1))

plotimi i vijave

410 GOTO 240 rikthim pwr njw vijw tjetwr

420 END

Programi BWIRE.FOR Vijat e fluksit magnetik të disa përclellsave paralel me Z

DIMENSION X(100), Y(100), CUR(100)

DATA NWIR,X(1),Y(1),CUR(1),X(2),Y(2),CUR(2)/2,1.,0.,1.,-1.,0.,1./

DS = .02 hapi s

10 READ(5,100)XST,YST pika nisëse

IF (XST-999.) 15,90,15

Page 176: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

174

15 X1 = XST inicializimi

Y1 = YST

DX = 0.

DY = 0.

20 BX = 0.

BY = 0.

DO 30 j = 1,NWIR cikli për shumim për gjithë përcjellsit

X9 = Y1 + DY / 2. - Y(j)

Y9 = -(X1 +DX / 2. - X(j))

r2 = X9 * X9 + Y9 * Y9 r nga çdo përclellës tek pika e fushës(gjysëm-hapi)

BX = BX + .0000002 * CUR(j) * X9 / r2 Bx

30 BY = BY + .0000002 * CUR(j) * Y9 / r2 By

B = SQRT(B1 * B1 + B2 * B2) |B|

DX = DS * BX / B x

DY = DS * BY / B y

X1 = X1 + DX x i ri

Y1 = Y1 + DY y i ri

PRINT 101,X1, Y1

IF (ABS(X1 - XST) + ABS(Y1 - YST) - .9 * DS) 10,20,20 fillon vijë e re?

90 STOP

100 FORMAT(2F10.5)

101 FORMAT(1X,2F10.4)

END

Një rast tjetër është fusha e krijuar nga një përcjellës rrethor dhe pastaj duke marrë disa

përcjellsa të tillë gjendet fusha e bobinave.E njejta gjë mund të bëhet edhe për bobinat me

spira katrore ose katërkëndëshe. Në të gjitha rastet fusha magnetike në çdo pikë llogaritet në

bazë të ligjit Bio-Savar. P.sh. le të jetë një spirë rrethore paralel me planin xy me rreze A

(figura 3.4) e me qendër në pikën (0,0,z). Kërkojmë fushën në pikën (x2,y2,z2). E ndajmë

spirën në segmente të vegjël dhe e përafrojmë çdo segment me një vijë të drejtë dl .Përdorim

ligjin Bio-Savar për të gjetur fushën e çdo segmenti të vogël dhe i mbledhim fushat e gjithë

segmenteve. Produkti vektorjal në ligjin Bio-Savar në kordinata karteziane merret:

(dlr)x = (dl)y (r)z - (dl)z (r)y

(dlr)y = (dl)z (r)x - (dl)x (r)z

(dlr)z = (dl)x (r)y - (dl)y (r)x

Rezultati i kësaj subrutine do të jetë fusha magnetike (Bx , By , Bz ) në pikën (x2 , y2 , z2 ).

Këtë fushë magnetike të gjetur mund ta përdorim qoftë për të ecur një hap gjatë vijës së fushës

dhe në pikën tjetër ta rithërasim subrutinën qoftë për të llogaritur fushën e një spire tjetër.

P.sh. duke mbledhur fushat e dy spirave me qendra në (0,0,-A/2) dhe (0,0,+A/2) mund të

gjendet fusha e spirave të Helmholcit (fig. 3.6). Gjithashtu, një solenoid të shkurtër mund ta

përafrojmë me një seri spirash (fig. 3.7)

Programi COIL kryen llogaritjet e fushës magnetike ndërsa programi BLINE llogarit

fluksin e vijave të fushës të një vargu spirash rrethore paralel me planin YZ.

Programi COIL.BAS Fusha e N0 spirave paralel me planin YZ

100 N0=2 numri i spirave

Page 177: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

175

110 DIM X(N0), R(N0), I(N0), C(100),S(100)120 FOR J = 1 TO N0130 READ X(J), R(J), I(J)140 NEXT J

gjeometria e spirave

150 DATA .5,1,1,-.5,1,1

160 PI=6.2831850 2

170 N9=10 numri i segmenteve pwr çdo spirw

180 FOR I = 1 TO N9190 T = PI * (I-.5) / N9200 C(I) = COS(T)210 S(I) = SIN(T)220 NEXT I

ruhen vlerat e sinusit dhe kosinusit pwr çdo segment

230 PRINT “PIKA E FUSHES X,Y,Z?”

240 INPUT X0,Y0,Z0

250 B1 = 0260 B2 = 0270 B3 = 0

inicializimi

280 FOR J=1 TO N0 shumimi pwr gjithw spirat

290 FOR I=1 TO N9 shumimi pwr gjithw segmentet e çdo spire

300 L1 = 0310 L2 = -PI *R(J) *S(I) / N9320 L3 = PI *R(J) *C(I) / N9

dl

330 L7 = X(J)340 L8 = R(J) *C(I)350 L9 = R(J) *C(I)

kordinatat e elementit dl

630 X6 = X0- L7370 Y6 = Y0- L8380 Z6 = Z0- L9390 R6 = SQR(X6*X6+ Y6*Y6+ Z6*Z6)

r prej segmentit deri te pika e fushws

400 R6=R6*R6*R6 r3

410 C1 = L2*Z6- L3*Y6420 C2 = L3*X6- L1*Z6430 C3 = L1*Y6- L2*X6

dl r

440 B1=B1+1E-7*I(J)*C1/R6 Bx

450 B2=B2+1E-7*I(J)*C2/R6 By

460 B3=B3+1E-7*I(J)*C3/R6 Bz

470 NEXT I

480 NEXT J

490 PRINT B1;B2;B3

500 GOTO 230 rikthim pwr pikwn tjetwr tw fushws

510 END

Programi COIL.FOR Fusha B e disa spirave në paralel me planin XY

DATA CURENT,RADIUS,NCOIL,SEP/1.,.01,2,.005/ gjeometria e spiave

10 READ (5,101)X,Y,Z pika e fushës

BX=0.

BY=0.

BZ=0.

DO 20 N=1,NCOIL,1 shumimi sipas spirave

Page 178: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

176

AN=N

ZCOIL=(AN-1.)*SEP Z i spirës

BXCOIL=0.

BYCOIL=0.

BZCOIL=0.

DO 30 I =1,16,1 shumimi sipas sementeve të çdo spire

AI=I

ANG=(AI-1.)*3.14159/16.

COSANG=COS(ANG)

SINANG=SIN(ANG)

DLX=-6.28318*RADIUS*SINANG/32. dlx

DLY=6.28318*RADIUS*COSANG/32. dly

DLZ=0.

XSEG=X-RADIUS*COSANG

YSEG=Y-RADIUS*SINANG

ZSEG=Z-ZCOIL

RSEG=SQRT(XSEG**2+YSEG**2+ZSEG**2) r prej dl deri te pika e fushës

RCUBED=RSEG**3 r3

XCROSS DLY*ZSEG DLZ*YSEGYCROSS DLZ*XSEG DLX*ZSEGZCROSS DLX*YSEG DLY*XSEG

dlr

BXCOIL=BXCOIL+1E-7*CURENT*XCROSS/RCUBED Bx për një spirë

BYCOIL=BYCOIL+1E-7*CURENT*YCROSS/RCUBED By për një spirë

30 BZCOIL=BZCOIL+1E-7*CURENT*ZCROSS/RCUBED Bz për një spirë

BX=BX+BXCOIL Bx totale

BY=BY+BYCOIL By totale

20 BZ=BZ+BZCOIL Bz totale

PRINT 102, BX,BY,BZ

IF (CURENT) 10,40,10 rikthim tek pika tjetër e fushës

101 FORMAT(3F5.3)

102 FORMAT(1X,3E15.5)

40 STOP

END

Programi BLINE.BAS Vijat e fushws pwr disa spira paralel me planin YZ

100 N0=2 numri i spirave

110 DIM X(N0),R(N0),I(N0),C(100),S(100)

120 FOR J = 1 TO N0130 READ X(J), R(J), I(J)140 NEXT J150 DATA .5,1,1,-.5,1,1

gjeometria e spirave

160 PI=6.2831850 2

170 N9=10 numri i segmenteve pwr çdo spirw

180 FOR I = 1 TO N9190 T = PI * (I-.5) / N9200 C(I) = COS(T)210 S(I) = SIN(T)220 NEXT i

sinuset dhe kosinuset qw duhen nw llogaritje

230 D=.1 hapi s

Page 179: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

177

240 PRINT “(X,Y) PIKA E FILLIMIT TE VIJES SE FUSHES ?”

250 INPUT X5,Y5

260 X0 = X5270 Y0 = Y5280 X1 = 0290 Y1 = 0300 S0 =.5310 S = 0 320 B1 = 0330 B2 = 0

inicializimi

340 B3=0

350 FOR J=1 TO N0 shumimi sipas gjithw spirave

360 FOR I=1 TO N9 shumimi sipas gjithw segmenteve tw çdo spire

370 L1 = 0380 L2 = -PI *R(J) *S(I) / N9390 L3 = PI *R(J) *C(I) / N9

dl

400 L7 = X(J)410 L8 = R(J) *C(I)420 L9 = R(J) *C(I)

kordinatat e dl

430 X6 = X0+ X1/ 2 - L7440 Y6 = Y0+ Y1/ 2 - L8450 Z6 = Z0- L9460 R6 = SQR(X6*X6+ Y6*Y6+ Z6*Z6)

r prej dl deri te pika e fushws

470 R6=R6*R6*R6 r3

480 C1 = L2*Z6- L3*Y6490 C2 = L3*X6- L1*Z6500 C3 = L1*Y6- L2*X6

dlr

510 B1=B1+1E-7*I(J)*C1/R6 Bx

520 B2=B2+1E-7*I(J)*C2/R6 By

530 B3=B3+1E-7*I(J)*C3/R6 Bz

540 NEXT I

550 NEXT J

560 B0=SQR(B1*B1+B2*B2+B3*B3) B

570 X1=D*B1/B0 x

580 Y1=D*B2/B0 y

590 X0=X0+X1 x i ri

600 Y0=Y0+Y1 y i ri

610 S = S + D620 IF S < S0 THEN 650630 S = 0640 PRINT X0, Y0

grupi i printimit

650 IF ABS(X0)+ABS(Y0)>10 THEN 670 a wshtw pika shumw larg?

660 IF ABS(X0-X5)+ABS(Y0-Y5)>.9*D THEN 320 kthim nw nisjw?

670 PRINT X0,Y0 printo pikwn e fundit

680 GOTO 240 rikthim nw vijwn tjetwr

690 END

Programi BLINE.FOR Fluksi i vijave te fushës sëdisa spirave në paralel me planin XY

DIMENSION X(10),R(10),CUR(10),C(10),S(10)

Page 180: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

178

NCOI=2 numri i spirave

DATA X(1),R(1),CUR(1),X(2),R(2),CUR(2)/.5,1.,1.,-.5,1.,1./ gjeometria e spiave

NPIEC=10 numri i segmenteve për çdo spirë

TWOPI=6.2831853 2

DO 10 I = 1,NPIEC AI = I T = TWOPI *(AI-.5) / NPIEC C(I) = COS(T) 10 S(I) = SIN(T)

ruhen vlerat e sinusit e cosinusit që do përdoren

DS=.1 hapi S

15 READ (5,100)XST,YST pika e nisëse e vijës

IF (XST-999.) 20,90,90

10 X0 = XST Y0 = YST 20 DX = 0. DY = 0. PRNTS =.5 DIST = 0. 25 BX = 0. BY = 0. BZ = 0.

Inicializimi

DO 30 J=1,NCOI shumimi sipas spirave

DO 30 I=1,NPIEC shumimi sipas segmenteve të çdo spire

DLX=0. dlx

DLY=TWOPI*R(I)*S(I)/NIPEC dly

DLZ=TWOPI*R(I)*C(I)/NIPEC dlz

XDL=X(J) kordinata x e elementit dl

YDL=R(J)*C(I) kordinata y e elementit dl

ZDL=R(J)*S(I) kordinata z e elementit dl

XX=X0+DS/2.-XDL

Y=Y0+DY/2.-YDL

Z=-ZDL

RR=SQRT(XX**2+Y**2+Z**2) r prej dl deri te pika e fushës

CX DLY*Z- DLZ*YCY DLZ*XX DLX*ZCZ DLX*Y DLY*XX

dlr

BX=BX+1E-7*CUR(J)*CX/RR Bx për një spirë

BY=BY+1E-7*CUR(J)*CY/RR By për një spirë

30 BZ=BZ+1E-7*CUR(J)*CZ/RR Bz për një spirë

B=SQRT(BX**2+BY**2+BZ**2) B

DX=DS*BX/B x

DY=DS*BY/B y

X0=X0+DX x i ri

Y0=Y0+DY y i ri

DIST = DIST + DS IF (DIST - PRNTS) 50,40,40 40 DIST = 0. PRINT 101,X0,Y0

grupi i printimit

50 IF (ABS(X0-XST)+ABS(Y0-YST)-.9*DS) 60,60,25 rikthim tek fillimi?

60 PRINT 101,X0,Y0

Page 181: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

179

GOTO 15 rifillimi i një vije tjetër

90 STOP

100 FORMAT(2F10.5)

101 FORMAT(1X,2F10.4)

END

Figura 3.4 Një spirë rrethore paralele

me planin xy; (0,0,z) është qendra e

spirës ; (x2 , y2 , z2 ) është pika në të

cilën llogaritet fusha magnetike.

Figura 3.5 Vijat e fushës magnetike të një

spire përclellëse me rrymë. Spira është pingul

me planin e figurës , megjithëse në figurë është

vizatuar në formën e një elipsi. Vijat e fushës

janë simetrike në lidhje me boshtin e spirës.

Page 182: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

180

Figura 3.6 Vijat e fushës magnetike të çiftit

të spirave të Helmholcit (dy spira të njejta të

larguara njera nga tjetra aq sa është rrezja e

tyre). Spirat janë pingul me planin e vizatimit.

Afër mesit midis spirave fusha është

homogjene.

Figura 3.7 Vijat e fushës magnetike të 7

spirave të njejta të baraslarguara , që janë

pingul me planin e vizatimit. Ato përafrojnë

solenoidin e shkurtër. Spirat duhet të jenë sa

më afër njera tjetrës në mënyrë që të realizohet

fushë homogjene brenda solenoidit. Sigurisht

spirat përcjellëse duhet të jenë të izoluara njera

nga tjetra.

3.9 Lëvizja e ngarkesave në fushë magnetike

Tashmë që e dimë se si llogaritet fusha magnetike, mund të provojmë të llogaritim trajektoret

e ngarkesave që lëvizin në këto fusha. Programi kryesor është për ligjin F=ma, ku forca është

ajo e Lorencit : F = q (vB). Meqë forca varet nga shpejtësia duhet të kemi kujdes në

integrimin e ekuacionit F=ma . Programi EBTRAJ është pikërisht për llogaritjen e

trajektoreve në fushë magnetike.

Programi EBTRAJ.BAS Lwvizja e ngarkesws nw E, B

100 D=.1 hapi kohor t

110 D1=1 koha e printimit

120 Q=1 q/m

130 READ E1, E2, E3, B1, B2, B3140 DATA 0,0,0,0,0,1

E dhe B (pwrbwrwset e tyre)

150 PRINT “KUSHTET FILLESTARE (X,Y,Z) & (VX,VY,VZ)?”

Page 183: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

181

160 INPUT X1,Y1,Z1,V1,V2,V3

170 T=0

180 T0=10 koha pwrfundimtare

190 V0=SQR(V1*V1+V2*V2+V3*V3)

200 PRINT T,X1,Y1,Z1,V0

210 A1 = Q*((V2*B3- V3*B2) + E1)220 A2 = Q*((V3*B1- V1*B3) + E2)230 A3 = Q*((V1*B2 - V2*B1) + E3)

llogaritja e parw e nxitimit

240 IF T > 0 THEN 290250 V1 = V1+ A1* D / 2260 V2 = V2 + A2 * D / 2270 V3 = V3 + A3* D / 2280 GOTO 380

gjyswm-hapi fillestar

290 U1 = V1+ A1*D / 2300 U2 = V2 + A2*D / 2310 U3 = V3+ A3*D / 2

vlerwsimi i shpejtwsisw nw çdo hap

320 A1 = Q*((U2*B3- U3*B2) + E1)330 A2 = Q*((U3*B1- U1*B3) + E2)340 A3 = Q*((U1*B2 - U2*B1) + E3)

vlerwsimi i dytw i nxitimit

350 V1 = V1+ A1*D360 V2 = V2 + A2*D370 V3 = V3+ A3*D

shpejtwsia e re (nw çdo gjysem-hapi)

380 X1 = X1+ V1*D390 X2 = X2 + V2*D400 Z1 = Z1+ V3*D

pozicioni i ri

410 T=T+D koha e re

420 IF ABS(T - D1) > D / 2 THEN 460430 V0 = SQR(U1*U1+ U2*U2 + U3*U3)440 PRINT T, X1, Y1, Z1, V0450 D1 = D1+1

grupi i printimit

460 IF T<T0 THEN 210 rikthim pwr hapin tjetwr t

470 END

Programi EBTRAJ.FOR Grimca e ngarkuar në E,B

DT=.01 hapi kohor t

PINT=1. koha e printimit

QTOM=1. q/m

DATA EX,EY,EZ,BX,BY,BZ/0.,0.,0.,0.,0.,1./ E dhe B

DATA X,Y,Z,VX,VY,VZ/-1.,0.,0.,0.,1.,0./ pozicioni filestar dhe shpejtësia

TIM=0.

TEND=10. koha përfundimtare

VMAG=SQRT(VX**2+VY**2+VZ**2)

PRINT 101,TIM,X,Y,Z.VMAG

5 AX = QTOM *((VY*BZ - VZ*BY) + EX) AY = QTOM *((VZ*BX - VX*BZ) + EY) AZ = QTOM *((VX*BY - VY*BX) + EZ)

llogaritja e parë e nxitimit

Page 184: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

182

IF (TIM) 10,10,20 10 VX = VX + AX*DT / 2. VY = VY + AY*DT / 2. VZ = VZ + AZ*DT / 2.

gjysëm-hapi fillestar

GOTO 30

20 V1X = VX + AX*DT / 2. V1Y = VY + AY*DT / 2. V1Z = VZ + AZ*DT / 2.

vlerësimi i përkohëshëm i shpejtësisë

AX = QTOM*((V1Y*BZ - V1Z*BY) + EX) AY = QTOM*((V1Z*BX - V1X*BZ) + EX) AZ = QTOM*((V1X*BY - V1Y*BZ) + EZ)

llogaritja e dytë e nxitimit

VX = VX + AX*DT VY = VY + AY*DT VZ = VZ + AZ*DT

shpejtësia e re

30 X = X + VX*DT Y = Y + VY*DT Z = Z + VZ*DT

pozicioni i ri

TIM=TIM+DT koha e re

IF (ABS(TIM - PINT) - DT / 2. ) 40,40,50 40 VMAG = SQRT(V1X**2 + V1Y**2 + V1Z**2) PRINT 101, TIM, X, Y, Z, VMAG PINT = PINT +1.

grupi i printimit

50 IF (TIM-TEND) 5,60,60 rikthim tek hapi tjetër t

60 STOP

101 FORMAT(1X,5F10.5)

END

Problema

1. Llogaritni forcën totale mbi njësinë e ngarkesës pozitive në fushat e mëposhtëme.

Zgjidhni disa pika të ndryshme në hapësirë për llogaritjen e forcës

a. E=0, B uniforme në drejtimin +Z; shpejtësia e ngarkesës v=1 paralel me boshtin +X

dhe v=1 paralel me boshtin +Z

b. E që krijohet nga një ngarkesë pozitive njësi e vendosur në origjinë, ndërsa B dhe

v janë si në pikën a.

2. Shkruajmë forcën mbi një element me gjatësi dl e me rrymë I në formën :

dF=I dl B

a. Llogaritni forcën totale mbi një spirë katërkëndëshe (me brinja 1 dhe 2 m) që

shtrihet në planin xy dhe ka rrymë prej 1 A. Fusha mgnetike është uniforme 1 T

paralel me boshtin +z. Pastaj mereni B paralel me boshtin +x dhe përsëri llogaritni

forcën.

b. Një spirë përcjellse rrethore (me rreze 1 m) është futur në fushë magnetike uniforme

B paralel me boshtin +z si në pikën a. Spira mund të rrotullohet përreth diametrit

paralel me boshtin +x. Llogaritni forcën totale mbi spirë për kohë të ndryshme gjatë

një rrotullimi të plotë.

3. Shkruani një program që llogarit integralin e Bdl përgjatë segmenteve drejtvizorë paralel

me boshtet kordinative. Duke përdorur këtë program dhe programin për llogaritjen e fushës

magnetike të provohet Ligji i Amperit për situatat e meposhtëme:

Page 185: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

183

a. Fusha mganetike është krijuar nga një përcjellës i drejtë me rrymë 1 A.

b. Fusha magnetike është krijuar nga një spirë rrethore me rrymë 1 A.

c. Fusha magnetike është krijuar nga një shpërndarje rryme çfardo që e zgjidhni vetë. A

mund të provohet një ligj si ai i Amperit me anë te kompjuterit?

4. a. Shkruani një program që përdor ligjin e Bio-Savarit për të llogaritur fushën e krijuar nga

një përcjellës i drejtë me gjatësi l paralel me boshtin x , në një pikë çfardo.

b. Rishkruajeni programin si një subrutinë. përcjellsin e drejtë merreni të shtrirë midis dy

pikave çfardo (x1 , y1 , z1 ) dhe (x2 ,y2 ,z2 ) që jepen saherë thirret subrutina.

c. Përdoreni subrutinën e mësipërme për të llogaritur fushën e një spire katërkëndëshe në

disa pika.

d. Duke zhvilluar këtë procedurë llogaritni fushën e krijuar nga një solenoid i shkurtët me

seksion katërkëndësh këndrejtë,

5. a. Duke përdorur idenë e spirës rrethore , shkruani një program që llogarit fushën magnetike

të një kuadripoli i formuar nga spira.

b. Fushat magnetike të kuadripoleve përdoren në kontrollin dhe drejtimin e tufës së

grimcave të ngarkuara.Llogaritni trjektoret e disa grimcave të ngarkuara në një fushë të

tillë.

6. Ligji i Faradeit lidh f.e.m. në një qark me shpejtësinë e ndryshimit të fluksit magnetik në

sipërfaqen që kufizon qarku.Konceptet që lidhen me ligjin e Faradeit janë induktiviteti

reciprok dhe auto induktiviteti.

a. Supozojmë se rryma në një spirë ndryshon sipas ligjit I=I0 sin t. Duke përdorur

subrutinën e gjetjes së fushës magnetike llogaritni fushën diku në çdo kohë t .

b. Vendosni një spirë të dytë me rreze tjetër dhe me orintim sipas fushës së spirës së parë.

Ndajeni seksionin tërthor të spirës në një numër pjesësh dhe llogaritni fluksin ne spirë

sipas:

B i

i

N

1

A i në çdo moment kohe.

c. Gjeni f.e.m. në spirën e mësipërme duke llogaritur derivatin kohor të fluksit të llogaritur

në pikën b. Si varet f.e.m nga orientimi relativ i dy spirave? Për disa pozicione dhe

orientime gjeni induktivitetin reciprok M =/I.

d. Mbajmë rrymën në spirë të pandryshuar dhe largojeni spirën e dytë nga spira e parë me

shpejtësi konstante në drejtime të ndryshme dhe për orientime relative të ndryshme.

Llogaritni shpejtësinë e ndryshimit të fluksit në spirën e dytë dhe f.e.m. Kjo është f.e.m

e lëvizjes , si varet ajo nga shpejtësia e zhvendosjes së spirës?

e. Kur rryma është konstante në spirën e parë, rrotullojeni spirën e dytë dhe llogaritni f.e.m

Si varet ajo nga frekuenca e rrotullimit? Në këtë bazohet puna e motorit gjenerator.

7. Mendoni ndonjë problem të vështrë të magnetostatikës që mund ta sqaroni me anë të

kompjuterit duke hartuar edhe programin përkatës.

3.10 Relativiteti i vektorëve E dhe B

Sipas parimit të relativitetit të gjithë sistemet inercialë të referimit janë ekuivalentë. Në një

sistem referimi ku një ngarkesë provë është në prehje fusha magnetostatike nuk krijon forcë

mbi të (forca e Lorencit F=q(vqB) është zero kur vq është zero). Në sistemin laboratorik ku

ngarkesa është në lëvizje , forca nuk është zero.Sipas parimit të relativitetit rezultati duhet të

jetë i njëjtë në të dy sistemet e referimit, por ajo që në sistemin laboratorik çfaqet si fushë

magnetike në sistemin ku ngarkesa prehet çfaqet si fushë elektrike. Në teorinë speciale të

relativiteti jepen lidhjet e vektorëve të fushave E dhe B kur kalojmë nga një sistem inercial

Page 186: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

184

referimi në një tjetër. Ato bazohen në transformimet e Lorencit për kordinatat dhe kohën për

dy sisteme inercialë S dhe S’ që lëvizin ndaj njeri tjetrit me shpejtësi v :

x’=(x - vt) dhe inversi x=(x’

+ vt)

y’=y y=y

z’=z z=z

t' (t

vx

c2) t t

vx

c ( '

')

2

ku

1

1 2 2v c/ , boshtet x dhe x

’ janë zgjedhur paralel, t dhe t

’ janë zgjedhur të jenë

zero kur origjinat e të dy sistemeve përputhen.

Një nga rjedhimet e transformimeve të Lorencit është shkurtimi Lorencian, pra që një

shufër me gjatësi L0 në prehje në sistemin S’ , paralel me boshtin x (drejtimi i lëvizjes së

sistemeve ndaj njeri tjetrit), rezulton që në sistemin S ka gjatësinë : L L v c 0

2 21 / :

L x xx x

Lv

c

( )

( )' '

2 1

2 1

0

2

21

Vrojtuesi në prehje në sistemin S’, që është sistemi ku shufra prehet, do të thotë që skajet e

shufrës janë matur në kohë të ndryshme t’ . Këto kohë (për vrojtuesin në prehje në lidhje me

shufrën ), janë:

tt vx

ct

t vx

c2

2

2 1

1

2

'

'

'

'

;

Më poshtë jepet një program i shkurtër (LOROBS) që llogarit pozicionet e pikave që lëvizin ,

pozicionet sipas boshteve pingul me lëvizjen (boshtet y dhe z) nuk ndryshonjë në dy sistemet e

referimit.

Programi LOROBS.BAS Vrojtuesi relativist Lorencian

10 C=1 shpejtësia e dritës

20 V=.9*C shpejtësia relative e sistemeve

30 G=1/SQR(1-V*V/(C*C)) gama

40 INPUT T koha e vrojtimit

50 FOR I=1 TO 6

60 READ X1,Y1,Z170 DATA -1,-1,0,1,-1,0,1,0,080 DATA 1,1,0,-1,1,0,-1,0,0

Kordinatat e pikave të objektit

90 T1=T/G-V*X1/(C*C) kaha në sistemin e referimit të objektit

100 X=G*(X1+V*T1) Transformimi i Lorencit për x

110 PRINT X,Y1,Z1

120 NEXT I

130 RESTORE

140 GOTO 40 rikthim për një kohë tjetër observimi

150 END

Programi LOROBS.FOR Vrojtuesi relativist Lorencian

DIMENSION X(6,3)

DATA C,V/1.,.9/ shpejtësia e dritës , shpejtësia relative e sistemeve

GAM=1/SQRT(1.-V*V/(C*C)) gama

Page 187: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

185

DATA X(1,1),X(1,2),X(1,3) / -1.,-1.,0./ DATA X(2,1),X(2,2),X(2,3) / 1.,-1.,0./ DATA X(3,1),X(3,2),X(3,3) / 1.,0.,0./ DATA X(4,1),X(4,2),X(4,3) / 1.,1.,0./ DATA X(5,1),X(5,2),X(5,3) / -1.,1.,0./ DATA X(6,1),X(6,2),X(6,3) / -1.,0.,0./

Kordinatat e pikave të objektit

5 READ(5,100)T Koha e vrojtimit

IF (T-999.) 7,20,20

7 DO 10 I=1,6

TPRIM=T/GAM-V*X(I,1)/(C*C) kaha në sistemin e referimit të objektit

XOBS=GAM*(X(I,1)+V*TPRIM) Transformimi i Lorencit për x

10 PRINT 101,XOBS,X(I,2),X(I,3)

GOTO 5 rikthim për një kohë tjetër observimi

100 FORMAT(F10.4)

101 FORMAT(3E12.4)

20 STOP

END

Një objekt (shufër) që lëviz prej -x (larg) deri +x (larg) dhe shikohet nga një vrojtues lokal i

vendosur p.sh. në origjinën e kordinatave do të duket në fillim më i gjatë se gjatësia e prehjes

e objektit dhe më i shkurtër se gjatësia e shkurtuar lorenciane në fund. Drita që arrin në sytë e

vrojtusit vjen nga pika të ndryshme të shufrës në momente kohe të ndryshme për dy arsye: Së

pari ,për arsye të vetë transformimit të Lorencit; së dyti, duhet kohë e ndryshme që drita nga

pikat e ndryshme të objektit të arrijë në sy. Le të jetë t koha në të cilën drita arrin sytë nga

pika e dukëshme (x,y,z) në sistemin S dhe t’ e (x

’ , y’ , z

’ ) koha dhe kordinatat e pikës së

objektit në sistemin S’ (sistemi ku objekti prehet), atëhere nga transformimet e Lorencit kemi:

tx y z

ct

vx

cx x vt y y z z

2 2 2

2 2 '

'' ' ' ', , ,

Duke zëvëndësuar barazimin e dytë tek barazimi i parë ,gjendet kuadratik për t’ :

c2 (t

’)2 - 2tc2

(t’) + [c

2 t

2 -2tvx

’ - (x

’)2 - (y

’)2 - (z

’)2 ] = 0 . Ndërsa duke zëvëndësuar në këtë

ekuacion t’=(x/-x’)/v, gjendet ekuacioni kuadratik për x :

x2/2

-2(x/+vt).x+ x’2/2

+ 2.v.t.x’/ + v2.t

2 +v

2/c

2 .[-y’

2 + z’

2 ]=0 ,

i cili zgjidhet me formulën kuadratike . Programi LOCOBS kryen këto llogaritje.

Programi LOCOBS.BAS Vrojtuesi lokal relativist

100 C=1 shpejtësia e dritës

110 V=.9*C shpejtësia relative e sistemeve

120 G=1/SQR(1-V*V/(C*C)) gama

130 PRINT “KOHA KUR SYRI SHIKON?”

140 INPUT T koha e vrojtimit

150 FOR I=1 TO 6

160 READ X1,Y1, Z1170 DATA -1,-1,0,1,-1,0,1,0,0180 DATA 1,1,0,-1,1,0,-1,0,0

Kordinatat e pikave të objektit

Page 188: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

186

190 A0 1/ (G *G)200 B0 2*(X1/ G V*T)210 C0 V^2*T^2 + X1^2 / G^2 + 2*X1*V*T / G220 C0 = C0- V^2*(Y1^2 + Z1^2) / C^2

koeficentët e formulës kuadratike

230 X=(-B0-SQR(B0^2-4*A0*C0))/(2*A0) kordinata e vrojtuar x

240 PRINT X,Y1,Z1

250 NEXT I

260 RESTORE

270 GOTO 130 rikthim për një kohë tjetër observimi

280 END

Programi LOCOBS.FOR Vrojtuesi lokal relativist

DIMENSION X(6,3)

DATA C,V/1.,.9/ shpejtësia e dritës , shpejtësia relative e sistemeve

GAM=1/SQRT(1.-V*V/(C*C)) gama

ACOE=1./(GAM*GAM) koeficenti kuadratik

DATA X(1,1),X(1,2),X(1,3) / -1.,-1.,0./ DATA X(2,1),X(2,2),X(2,3) / 1.,-1.,0./ DATA X(3,1),X(3,2),X(3,3) / 1.,0.,0./ DATA X(4,1),X(4,2),X(4,3) / 1.,1.,0./ DATA X(5,1),X(5,2),X(5,3) / -1.,1.,0./ DATA X(6,1),X(6,2),X(6,3) / -1.,0.,0./

Kordinatat e pikave të objektit

5 READ(5,100)T Koha e vrojtimit

IF (T-999.) 7,20,20

7 DO 10 I=1,6 cikli nëpër pikat e objektit

BCOE 2*(X(I,1) / GAM V*T) CCOE V**2*T**2 + X(I,1) **2 / GAM**2 + 2.*X(I,1) *V*T / GAM CCOE = CCOE - V**2*((X(I,2)**2 + X(I,3) **2) / C**2

koeficentët e formulës kuadratike

XOBS=(-BCOE-SQRT(BCOE**2-4.*ACOE*CCOE))/(2.*ACOE kordinata e

vrojtuar x

10 PRINT 101,XOBS,X(I,2),X(I,3)

GOTO 5 rikthim për një kohë tjetër observimi

100 FORMAT(F10.4)

101 FORMAT(3E12.4)

20 STOP

END

Le të shqyrtojmë tani tablonë e vijave të fushës së një ngarkese pikësore të vrojtuar nga një

vrojues Lorencian që lëviz ndaj ngarkesës. Vizatimin e vijave të fushës në sistemin e referimit

të prehjes e kemi bërë me programin EV. Për çdo pikë të vijës së fushës (ose ekuipotenciale),

transformojmë kordinatat për vrojtuesin që lëviz paralel me boshtin x me shpejtësi v . Në këtë

situatë ne njohim pozicionin në një sistem referimi dhe kohën në sistemin tjetër, pra problemi

sillet në shkurtimin Lorencian të kordinatës x. Figura 3.8 tregon vijat e fushës dhe një

ekuipotencial ashtu siç vrojtohen nga vrojtuesi që lëviz me shpejtësi 0.9 c. Në sistemin e

referimit ku ngarkesa është në prehje vijat e fushës janë shpërndarë simetrikisht (të ndara me

të njëjtin kënd) dhe ekuipotenciali është rreth , pra konturet E dhe V janë pingul. Ndërsa në

Page 189: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

187

sistemin e referimit ndaj të cilit ngarkesa lëviz me shpejtësi 0.9 c vijat e fushës janë më të

ngjeshura në drejtimin pingul me lëvizjen (megjithëse janë radiale). Konturi ekuipotencial

është eliptik dhe jo më pingul me vijat e fushës.Fakti që konturi nuk është më pingul me vijat

e fushës elektrike të vrojtuar tregon se një fushë tjetër ekziston që në një farë mënyre

Figura 3.8 Vijat e fushës dhe një kontur

ekuipotencial ashtu siç duken nga një vrojtues

Lorencian që lëviz në drejtimin +x me shpejtësi

0.9 c

ekuilibron komponenten tangeciale të forcës që shkakton fusha elektrike E. Kjo fushë shtesë

është një fushë magnetike B. Pra ndërsa për vrojtuesin në prehje ndaj ngarkesës fusha është

thjeshtë elektrostatike , për vrojtuesin ku ngarkesa lëviz fusha është elektromagnetike,

Vektorët E dhe B janë relativë. Tablo të ngjashme mund të merren edhe për shpërndarje të

tjera të ngarkesave duke përdorur programin EV dhe transformimet e Lorencit.

Në rastet më të përgjithëshme kur drejtimi i lëvizjes së sistemeve të referimit është

çfardo mund të veprohet në mënyrë analoge duke futur tek transformimet e Lorencit tre

përbërëse të shpejtësisë (vx , vy , vz ) dhe ngjeshja Lorenciane e vijave të fushës bëhet në të tre

drejtimet.

Problema

1. a. Shkruani një program që llogarit shkurtimin Lorencian të gjatësisë paralel me boshtin

x dhe nuk ndryshon përmasat në drejtimet y dhe z.

b. Shqyrtojmë një sferë që lëviz me 99% të shpejtësisë së dritës. Duke gjetur pikat

në vijat e paraleleve dhe meridianeve në sistemin e referimit ku sfera është në prehje

dhe duke përdorur programin e pikës a. , vizatoni se si vrojtohet sfera nga një vrojtues

Lorencian në sistemin e referimit ku sfera lëviz.

c. Çfarë efekti tjetër duhet të merni në konsideratë për të vizatuar se si çfaqet sfera për

një vrojtues lokal në sistemin e referimit ku sfera lëviz?

2. a. Shkruani një program që llogarit ngjeshjen Lorenciane të gjatësive paralel me boshtin

x dhe nuk i ndryshon përmasat sipas y dhe z. Çfarë situate fizike i korespondon kjo?

b. Shqyrtojmë një ngarkesë që lëviz me 99% të shpejtësisë së dritës . Duke llogaritur

pikat mbi vija fushe dhe ekuipotenciale në sistemin e prehjes së ngarkesës dhe duke

përdorur programin e transformimit të këtyre pikave në sistemin e referimit

laboratorik, plotoni vijat e fushës dhe ekuipotencialet siç duken nga vrojtuesi Lorencian

i sistemit laboratorik.

c. Shpjegoni lidhjen midis plotimit tuaj dhe konceptit të fushës magnetike.

Page 190: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

76

KAPITULLI I KATERT

OPTIKA GJEOMETRIKE

4.1 Hyrje

Optika gjeometrike ka të bëjë me thjerrzat (lentet) dhe pasqyrat dhe është e bazuar në

trasimin e rrezeve të dritës nëpër mjedise të ndryshme. Ne do ta fillojmë këtë kapitull me

përdorimin e kompjuterit në zgjidhjen e problemave të thjeshta me pasqyra e thjerrza të holla.

Duke u praktikuar me këto shembuj të thjeshtë do të kuptoni më mirë shembëllimet virtuale

dhe objektet virtuale. Në vënd të idealizimit të rrezeve paraksiale dhe lenteve të holla, ju

mund shqyrtoni edhe lente të trasha ose rreze larg boshtit . Në të gjithë shembujt ne do të

mbështetemi në këto formula kryesore:

1. Rrezja rënëse, e pasqyruar dhe e thyer ndodhen në një plan (i cili përmban gjithashtu

normalen mbi sipërfaqen ndarëse në pikën e ndërprerjes).

2. Pasqyrimi: këndi i rënies 1 = këndin e pasqyrimit 2 .

3. Thyerja: n1 sin 1 = n2 sin 2 .

4. Pasqyrimi i plotë i brëndëshëm : sin kritike = n1 / n2 .

5. Këndi i polarizimit : tg polaizim = n2 / n1 .

6.Formula e lentes së hollë ose pasqyrës : 1/a1 + 1/a2 = 1/f , ku a1 ëhtë largësia e objektit ,

a2 është largësia e shëmbëllimit , f është largësia e vatrës (largësia fokale) (janë të gjitha

madhësi me shenja).

7. Për lentet e holla : 1/f = (n - 1) (1/r1 - 1/r2 ) .

8. Pasqyra sferike : f = r/2

4.2 Lentet dhe pasqyrat sferike

Si shembull i parë është zgjedhur zbatimi i formulave të lenteve të holla ose pasqyrave.

Programi LENMIR kërkon si të dhëna largësinë fokale, pozicionin dhe lartësinë e objektit dhe

llogarit kordinatat e shëmbëllimit (pozicionin dhe lartësinë).

Programi LENMIR.BAS

10 REM PROGRAMI LLOGARIT POZICIONIN DHE LARTESINE E SHEMBELLIMIT

NGA LENTET OSE PASQYRAT

100 PRINT “PASQYRE APO LENTE”;

110 INPUT M$

120 IF M$=“PASQYRE” THEN 240

130 PRINT “FUT LARGESINE FOKALE , NEPERMJET RREZEVE APO NDRYSHE (PO

APO JO)”;

140 INPUT Y$

150 IF Y$=“PO” THEN 210

160 PRINT “TREGUESI i THYERJES, RREZJA E SIPERFAQE SE PARE & RREZJA E

SIPERFAQES SE DYTE”;

170 INPUT N,R1,R2

180 F=1/((N-1)*(1/R1-1/R2))

190 PRINT “LARGESIA FOKALE=“;F;”cm.”

200 GOTO 230

Page 191: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

77

210 PRINT “LARGESIA FOKALE E LENTES”;

220 INPUT F

230 GOTO 280

240 PRINT “RREZJA E KURBATURES”;

250 INPUT R1

260 F=R1/2

270 PRINT “LARGESIA FOKALE =“;F;”cm.”

280 PRINT “POZICIONI DHE LARTESIA E OBJEKTIT(999,999 PER TA

PERFUNDUAR)”;

290 INPUT X5,Y5

300 IF (X5-999)*(Y5-999)=0 THEN 410

310 IF X5><F THEN 340

320 PRINT “NUK MUND TE LLOGARIT RASTET INFINIT.”

330 GOTO 280

340 X6=1/(1/F-1/X5)

350 M=-X6/X5

360 Y6=Y5*M

370 PRINT “POZICIONI i SHEMBELLIMIT DHE LARTESIA: “;X6;”,”;Y6;”cm.”

380 PRINT “ZMADHIMI:”;M

390 PRINT

400 GOTO 280

410 END

Programi LENMIR.FOR Lentja e hollë dhe pasqyra

DATA ANLEN,R1LEN,R2LEN/1.5,10.,-10./ tregusi i thyerjes,rrezet e sipërfaqeve

DATA RMIR/10./ rrezja e pasqyrës

FLEN=1./((ANLEN-1.)*(1./R1LEN-1./R2LEN)) largësia fokale e lentes

FMIR=RMIR/2. largësia fokale e pasqyrës

5 READ(5,100) XOBJ,YOBJ pozicioni dhe lartësia e objektit

IF(XOBJ-999.) 10,50,10

10 PRINT 101,XOBJ,YOBJ

XLIM=1./(1./FLEN-1./XOBJ) formula e lentes

ALMAG=XLIM/XOBJ zmadhimi

YLIM=YOBJ*ALMAG

XMIM=1./(1./FMIR-1./XOBJ) formula e pasqyrës

AMMAG=XMIM/XOBJ zmadhimi

YMIM=YOBJ*AMMAG

PRINT 102,FMIR,XMIM,YMIM,AMMAG

PRINT 102,FNEN,XLIM,YLIM,ALMAG

GOTO 5

50 STOP

100 FORMAT(2F10.4)

101 FORMAT(1X,2E12.4)

102 FORMAT(1X,4E12.4)

END

Programi THLEN trason rrezen nëpër një seri mjedisesh me trgues thyerje të ndryshëm.

Mjediset janë të ndara me sipërfaqe sferike që e kanë qendrën mbi boshtin x . Si të dhëna për

programin do futni pikën nisëse të rrezes dhe këndin që formon kjo rreze me boshtin x;

programi llogarit pikprerjen e rrezes me sipërfaqen e parë. Duke përdorur këndin midis

Page 192: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

78

normales në sipërfaqe dhe rrezes rënëse gjendet nga ligji i thyerjes këndi i thyerjes në mjedisin

tjetër; pastaj llogaritet këndi që formon rrezja e thyer me boshtin x dhe procesi përsëritet.

Programi është kufizuar për një renditje të caktuar të sipërfaqeve ndarëse sferike, por edhe ky

kufizim mund të hiqet dhe ta bëni programin më të përgjithëshëm.

Programi THLEN.BAS Trasimi i rrezeve nëpër lentet e trasha

100 PRINT “SA ZONA TW NDRYSHME KENI?”;

110 INPUT N0

115 DIM N(N0),X(N0),R(N0)

120 FOR I=1 TO N0-1

130 PRINT “TREGUESI I THYERJES PER ZONEN”;I;

140 INPUT N(I)

150 PRINT “POZ. I KULMIT & RREZJA E SIPERFAQES MIDIS ZONAVE”;I;”&”;I+1

160 INPUT X(I),R(I)

170 NEXT I

180 PRINT “TREGUESI I THYERJES I ZONES SE FUNDIT”;

190 INPUT N(N0)

200 I=0

210 PRINT “Y I BURIMIT,KENDI I RREZES ME BOSHTIN (GRADE)”;

220 INPUT Y0,A

230 A=3.14159*A/180

240 X1 = 0250 Y1 = Y0260 PRINT X1, Y1

pika fillestare mbi rreze

270 I=I+1

280 IF I=N0 THEN 650

290 T=TAN(A) pjerrësia e rrezes

300 RR=R(I)

310 X7=X(I)+RR

320 E=T*T+1

330 F=2*(Y0*T-X7-X1)

340 G=Y0*Y0+X7*X7-RR*RR+X1*X1-2*Y0*X1

350 F1=F*F-4*E*G

E,F,G janë koeficientët në

ekuacionin kuadratik për gjetjen e pikprerjes së rrezes me sipërfaqen tjetër

360 IF F1>0 THEN 400

370 PRINT “MUNGON SIPERFAQJA TJETER”

380 PRINT

390 GOTO 200

400 IF RR<0 THEN 430

410 X0=(-F+SQR(F1))/(2*E)

420 GOTO 440

430 X0=(-F+SQR(F1))/(2*E) x i pikprerjes së rrezes me sipërfaqen

440 Y0=Y0+T*(X0-X1) y i pikprerjes së rrezes me sipërfaqen

450 X1=X0

460 Y1=Y0

470 PRINT X1,Y1 pika tjetër mbi rreze

480 A1=ATN(Y0/(X7-X0)) këndi i rrezes me boshtin x

490 A3=A1

Page 193: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

79

500 A0=A+A3 këndi i rrezes me normalen në sipërfaqe

510 FOR J=1 TO 4

520 IF ABS(A0)-J*3.14159/2>0 THEN 550 në cilin kuadrant bie këndi

530 J0=J-1

540 GOTO 560

550 NEXT J

560 S1=SIN(A0)

570 S2=N(I)*S1/N(I+1) ligji i thyerjes

580 IF ABS(S2)<1 THEN 610

590 PRINT “PASQYRIM I PLOTE I BRENDESHEM”

600 GOTO 200

610 A2 = ATN(S2 / SQR(1-S2*S2))620 A2 = A2 -SGN(A0) *J0*3.14159 / 2630 A = A2 - A3

gjen këndin e ri

640 GOTO 270

650 Y1 = Y1+ TAN(A) *(10- X1)660 X1 = 10670 PRINT X1, Y1

gjen pikën e fundit mbi rreze

680 GOTO 200

690 END

Programi THLEN.FOR Trasimi i rrezeve nëpër lentet e trasha

DIMENSION AN(3),VERT(2),RAD(2)

DATA AN(1),VERT(1),RAD(1)/1.,-5.,3./

DATA AN(2),VERT(2),RAD(2),AN(3)/2.,5.,-3.,1./

10 REDA(5,101) Y,ANG pika fillestare dhe këndi i rrezes

IF (Y.EQ.9999.) GOTO 70

ANG=3.14158*ANG/180.

X=0.

PRINT 104,X,Y pika e parë mbi rreze

TANANG=SIN(ANG)/COS(ANG)

DO 60 I=2,3,1

XCENT=VERT(I-1)+RAD(I-1)

ASQR=TANANG**2+1.

BSQR=2.*(Y*TANANG-XCENT-X*TANANG**2)

CSQR=Y**2+XCENT**2-RAD(I-1)**2+(TANANG*X)**2-2.*Y*TANANG*X

DSQR=BSQR**2-4.*ASQR*CSQR

IF (DSQR) 20,30,30

20 PRINT 102

GOTO 10

30 XTEMP=X

X=(-BSQR-(RAD(I-1)/ABS(RAD(I-1))*SQRT(DSQR))/(2.*ASQR)

Y=Y+TANANG*(X-XTEMP)

PRIMT 104,X,Y

ANGTOX=ATAN(Y/ABS(XCENT-X))

ANGTONANGTOX+(RAD(I-1)/ABS(RAD(I-1)))*ANG

SINNEW=AN((I-1)*SIN(ANGTON)/AN(1)

IF (ABS(SINNEW)-1.) 50,50,40

40 PRINT 103

GOTO 10

Page 194: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

80

50 ANG=ATAN(SINNEW/SQRT(1.-SINNEW**2))

ANG=-(RAD(I-1)/ABS(RAD(I-1)))*(ANGTOX-ANG)

60 TANANG=SIN(ANG)/COS(ANG)

Y=Y+TANANG*(10.-X)

X=10.

PRINT 104,X,Y

GOTO 10

101 FORMAT(2F5.2)

102 FORMAT(1X,27HMUNGON SIPERFAQJA E LENTES.)

103 FORMAT(1X,30PASQYRIM I PLOTE I BRENDESHEM)

104 FORMAT(1X,2E15.5)

70 STOP

END

Me anë të këtij programi ju mund edhe të vizualizoni aberracionet e sistemit të lenteve. P.sh.

aberracioni sferik mund të duket duke plotuar rreze te ndryshme që bien paralel me boshtin

optik, siç tregohet në figurën 4.1 për një lente dopjo konvekse , ku rrezet paralele që janë larg

boshtit fokusohen në pika të ndryshme nga fokusi. Disa rreze që bien mbi sipërfaqen e dytë

me kënde të mëdhenj pësojnë pasqyrim të plotë të brëndëshëm. Në figurën 4.2 tregohen rrezet

që kalojnë nëpër një lente dopjo konkave. Në qoftë se lentet do të ishin të holla dhe rrezet

paraksiale, rrezet që dalin nga lentja do të dukeshin sikur divergjojnë nga një pikë , vatra. Për

lentet e trasha , rrezet duket sikur dalin nga pika të ndryshme.

Figura 4.1 Trasimi i rrezeve nëpër lenten e

trashë bikonvekse. Rrezet paraksiale priten

në vatër, rezet larg boshtit çfaqin

aberracion dhe rrezet shumë larg pësojnë

reflekrim të plotë të brëndëshëm.

Figura 4.2 Trasimi rrezeve nëpër lenten

bikonkave.Rrezet paraksiale duket sikur

divergjojnë nga vatra. Rrezet më larg

çfaqin aberracion dhe rrezet shumë larg

pësojnë reflektim të plotë të brëndëshëm

Llogaritje të ngjashme , duke përdorur metodën e trasimit të rrezeve , mund të kryhen edhe

për pasqyrat [shih programin MIRROR].

Programi MIRROR.BAS Pasqyrimi i rrezeve nga pasqyra sferike

100 PRINT “RREZJA, RREZJA E KURBATURWS”;

110 INPUT R,R1

Page 195: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

81

120 PRINT “LARGESIA E BURIMIT NGA PASQYRA, LARTESIA MBI BOSHT”;

130 INPUT L,L1

140 PRINT “# I HAPAVE NGA “;-R;”NE “;R;

150 INPUT S

160 FOR I=-R TO R STEP 2*R/S hap pas hapi nëpër pasqyrë

170 X1= L180 Y1= L1190 PRINT X1,Y1

pika fillestare e rrezes(origjina e boshtit x është kulmi i pasqyrës)

200 Y1=I kordinata y e pikës në pasqyrë ku bie rrezja

210 X0=R1-SQR(R1*R1-I*I) kordinata x e pikës në pasqyrë ku bie rrezja

220 X1=X0

230 PRINT X1,Y1

240 T1=ATN(I/(R1-X0)) këndi që formon normalja në pasqyrë me boshtin x

250 T2=ATN((I-L1)/(L-X0)) këndi që formon rrezja rënëse me boshtin x

260 T3=-(2*T1-T2) këndi që formon rrezja e pasqyruar me boshtin x

270 T4=TAN(T3) pjerrësia e rrezes së pasqyruar

280 X1=10 pika më e fundit e rrezes së pasqyruar

290 Y1=1+T4*(X1-X0)

300 PRINT X1,Y1

310 PRINT

320 NEXT I

330 END

Programi MIRROR.FOR Pasqyrimi nga pasqyra sferike

DATA RAD,RADCU/3.,5./ rrezja,rrezja e kurbaturës

DATA XSOUR,YSOUR,NSTEP/10.,1.,8/ pika burim,numri i rrezeve

DO 60 I=1,NSTEP+1 hapi nëpër pasqyrë

YMIR=-RAD+(I-1)*2.*RAD/NSTEP

X=XMIR pika fillestare e rrezes

Y=YSOUR

PRINT 100,X,Y

XMIR=RADCU-SQRT(RADCU**2-YMIR**2) pika ku bie rrezja në Pasq.

X=XMIR

PRINT 100,X,YMIR

ATN1=ATAN2(YMIR,RADCU-X)

ATN2=ATAN2(YMIR-YSOUR,XSOUR-X)

ATN3=-(2.*ATN1-ATN2)

TN3=SIN(ATN3)/COS(ATN3) pjerrësia e rrezes së pasqyruar

X=10. pika më e largët në rreze

Y=YMIR+TN3*(X-XMIR)

60 PRINT 100,X,Y

STOP

100 FORMAT(1X,2F10.4)

END

Figura 4.3 tregon rrezet e pasqyruara nga pasqyra sferike. në të mund të shikoni efektin e

aberracionit sferik. Njëkohësisht, për lentet dhe pasqyrat ju mund të tregoni që duke zgjedhur

Page 196: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

82

me formë të përshtatëshme sipërfaqet mund të arrijmë që për burimin pikësor të merret një

pikprerje e rrezeve të thyera(ose të pasqyruara) pra të zhduket aberacioni sferik.

Figura 4.3 Trasimi i rrezeve për një pasqyrë

sferike. Rrezja e pasqyruar formon me

normalen në siërfaqen e pasqyrës të njëjtin

kënd. Janë treguar rrugët e disa rrezeve që

dalin nga një burim pikësor.

4.3 Trasimi i rrezeve në një mjedis të vazhduar

Metoda e trasimit të rrezeve mund të shtrihet edhe në situatat kur treguesi i thyerjes është

funksion i vazhduar i pozicionit. Situata të tilla ndodhin gjatë mirazheve dhe fenomeneve të

lidhura me to. Kur Toka është më e nxehtë se ajri, një shtresë ajri që është afër Tokës ka

tregues thyerje më të vogël se shtresat më lart dhe rrezet e dritës përkulen gjatë hyrjes në këtë

shtresë të rralluar, disa nga këto rreze pësojnë pasqyrim total të brendëshëm dhe kthehen

përsëri lart në ajër. Këto rreze krijojnë shëmbëllime (imazhe) virtuale të objekteve nga vijnë ,

ato janë të përmbysura dhe duken si poshtë Tokës. Mirazhet tipike të rrugës janë imazhet e

qiellit.

Programi MRAG kryen llogaritjet e rrugës që ndjek rrezja në një mjedis ku treguesi i

thyerjes n është funksion i lartësisë y, n(y), duke përdorur ligjin e thyerjes në çdo pikë të

rrezes.Rrezja ndiqet hap pas hapi. Po të lëvizim me një distancë ds përgjatë rrezes (shih

figurën 4.4) nga ligji i thyerjes kemi :

nth sin th = nr sin r ose ndx

dsn

dx

dsth

th

r

r

kështu që dx=dsn

n

dx

ds

r

th r

dy ds dx

22

Kështu arrijmë në pozicionin e ri (x+dx, y+dy). Metoda na kujton programin për zgjidhjen e

ekuacionit F=ma ose programin për plotimin e vijave të fushës. Meqë nuk e dimë nth atë

mund ta gjejmë duke konsideruar që ndryshimi i n në këtë hap është i njëjtë me hapin e

mëparëshëm ose mund të përdorim procedurën e gjysëm-hapit për të rritur saktësinë. Figura

4.5 tregon disa rreze prej një objekti. Treguesi i thyerjes në këtë figurë është një model i

ndryshimit të n mbi Tokën e nxehtë. Disa rreze arrijnë tek vrojtuesi në të djathtë të figurës

drejtpërdrejtë nga objekti; rreze të tjera janë përkulur dhe duket sikur vijnë nga një pikë poshtë

tokës. Megjithëse nga ana cilësore rruga e rrezeve nuk varet nga formula e saktë se si

ndryshon n me latësinë, rruga e saktë e rrezeve dhe ku çfaqet mirazhi varet shumë nga modeli

i n(y). fenomeni ka analogji edhe me përhapjen e radiovalëve nëpër jonosferë.

Page 197: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

83

Figura 4.4 Gjeometria për ligjin e thyerjes

dhe llogaritjen e mirazhit. Rrezja vjen nga

mjedisi me indeks r (rënëse) dhe del në

mjedisin me indeks th (thyer).

Figura 4.5 Trasimi i rrezeve nëpër një

zonë mirazhi. Indeksi i thyerjes ndryshon

me lartësinë mbi Tokën e nxehtë. Rrezet

janë përkulur në mënyrë të tillë që që një

vrojtues sheh edhe objektin edhe një

shëmbëllim të objektit të përmbysur nën

Tokë.

Programi MRAG.BAS Trasimi i rrezeve të mirazhit

100 PRINT “PIKA FILLESTARE (X,Y) DHE KENDI I RREZES ME BOSHTIN X

(GRADE)”;

110 INPUT X1,Y1,T

120 T=90-T këndi me vertikalen

130 T=3.14159*T/180

140 I=0

150 D3=SIN(T) x/s fillestar

160 D2=COS(T) y/s fillestar

170 S9=SGN(T)

180 PRINT “X”,”Y”

190 I=I+1

200 D1=.1 hapi s

210 N0=N

220 Y=Y1+D2*D1/2 lartësia me gjysëm-hapi

230 N=2

240 IF Y>3 THEN 260

250 N=1+.1*Y*Y treguesi i thyerjes

260 IF i>1 THEN 290

270 N0=N treguesi fillestar i thyerjes

280 D1=0

290 D3=N0*D3/N ligji i thyerjes; y/s i ri

300 IF ABS(D3)<=1 THEN 340

310 S9=-S9

320 D2=-D2

330 GOTO 350

Page 198: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

84

340 D2=S9*SQR(1-D3*D3)

350 Y1=Y1+D2*D1 y i ri

360 X1=X1+D3*D1 x i ri

370 IF ABS(X1- X0) + ABS(Y1- Y0) <.5 THEN 410380 PRINT X1, Y1390 X0 = X1400 Y0 = Y1

grupi i printimit

410 IF X1*(X1-10) > 0 THEN 430420 IF Y1*(Y1-10) <= 0 THEN 190

prova nëse jemi jashtë faqes

430 PRINT

440 GOTO 100 rikthim për rreze tjetër

450 END

Programi MRAG.FOR Trasimi i rrezeve gjatë mirazhit

10 READ(5,100)X,Y,ANG pozicioni fillestar dhe këndi i rrezes

IF (X.EQ.9999.) GOTO 80

ANG=(90.-ANG)*3.14159/180. këndi me vertikalen në radian

PDIST.=0.

DXDS=SIN(ANG) x/s fillestare

DYDS=COS(ANG) y/s fillestare

SIGNDY=DYDS/ABS(DYDS

DS=.001 hapi s

AN=Y-DYDS*DS

20 ANOLD=AN

AN=Y

DXDS =ANOLD*DXDS/AN ligji i thyerjes; x/s i ri

IF (ABS(DXDS) -1.) 40,40,30 30 SIGNDY = -SIGNDY DYDS = -DYDS GOTO 45

pasqyrim i plotë i brëndëshëm

40 DYDS=SIGNDY*SQRT(1.-DXDS**2) y/s i ri

45 Y=Y+DYDS*DS y i ri

X=X+DXDS*DS x i ri

PDIST = PDIST + DS IF (PDIST-.5) 60,60,50 50 PRINT 101,X,Y PDIST = 0.

grupi i printimit

60 IF (X*(X-10.)) 70,70,10 prova nëse është shumë larg

70 IF (Y*(Y-7.)) 20,10,10

100 FORMAT(3F5.2)

101 FORMAT(1X,2E15.5)

80 STOP

END

4.4 Valët mbi pasqyra

Page 199: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

85

Më lart fenomenet e optikës gjeometrike i kemi përshkruar me anë të rrezeve. Për objektet me

përmasa të mëdha në krahasim me gjatësinë e valëve ky përshkrim është i përshtatshëm. Por

në disa fenomene si kalimi i dritës nëpër pengesa , përshkrimi me anë të valëve është më i

përshtatshëm. Me anë të kompjuterit ne mund të ndjekim tablonë e valëve që përplasen në

pengesa. Një shembull për këtë jepet në programin SPHR. Një burim S emeton paketa valore

që përhapen me shpejtësi v , të cilat bien mbi një pasqyrë . Në një çast kohe t fronti i valëve

sferike që lëshon burimi ka arritur distancën D=vt (figura 4.6) prej burimit. Kontrollojmë

gjithë pikat e pasqyrës nëse fronti i valëve ka mbritur në to. Në se ka mbritur në pikën e

pasqyrës , atëhere llogaritet se ku do të përfundonte kjo pjesë e valës në kohën t .Pra , gjendet

distanca D0 që fronti i valëve përshkruan pasi ka goditur pasqyrën, duke ditur edhe këndin A

që formon drejtimi i valëve me normalen në pasqyrë (po kaq është edhe këndi midis drejtimit

të valëve të pasqyruara me normalen).

Figura 4.6 Gjeometria e një fronti valor të

emetuar nga një burim dhe është duke mbritur

në pasqyrë. Fronti valor ecën me shpejtësi v.

Gjatë kohës t ka përshkuar distancën vt.

Procedura është e përgjithëshme në program. Përdorusi përcakton formën e pasqyrës

nëpërmjet një funksioni njëvariabël psh të x që të jetë i derivueshëm . Programi përdor

produktin skalar për të gjetur kosinusin e këndit A dhe produktin vektorjal për të gjetur sinusin

e këndit Përdorimi i produkteve të vektorëve është më i shpejtë në kompjuter sepse përdor

vetëm operacionet matematike (+,-,*,/).

Programi SPHR.BAS Fronti i valëve sferike mbi pasqyrë

100 PRINT “BURIMI I VALEVE DHE SHPEJTESIA E TYRE”;

110 INPUT S1,S2,V kordinatat në plan të burimit dhe shpejtësia e valëve

120 PRINT “KOHA”;.

130 INPUT T koha gjatë të cilës fronti i valëve është përhapur

140 D=T*V largësia që ka përshuar fronti i valëve

150 FOR J=-5 TO 5 STEP .5 hapi sipas x

160 F=J*J/4 forma e pasqyrës : funksioni y=x2/4

170 F1=J/2 derivati i parë i funksionit të formës

180 F2=SQR(1+F1*F1)

190 Y2=S2-F y prej burimit tek pika e rradhës e pasqyrës

200 X2=S1-J x prej burimit tek pika e rradhës e pasqyrës

210 R=SQR(X2*X2+Y2*Y2) r prej burimit tek pika e rradhës e pasqyrës

220 IF D<R THEN 330 në se fronti ka arritur tek pasqyra

230 D0=D-R distanca pas pasqyrimit

240 N1=-F1/F2 përbërësja x e vektorit njësi normal me pasqyrën

250 N2=1/F2 përbërësja y e vektorit njësi normal me pasqyrën

Page 200: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

86

260 C=X2/R*N1+Y2/R*N2 kosinusi i këndit midis rrezes dhe normales

270 S=Y2/R*N1-X2/R*N2 sinusi i këndit midis rrezes dhe normales

280 D1 = C*N1+S*N2290 D2 = C*N2 -S*N1

vektori njësi i normales mbi frontin e valës së pasqyruar

300 X = J + D1*D0310 Y = F + D2*D0

kordinatat e pikës mbi frontin e pasqyruar

320 GOTO 350

330 X = S1- X2 / R*D340 Y = S2 - Y2 / R*D

kordinatat e pikës mbi frontin e papsqyruar

350 PRINT X,Y

360 NEXT J

370 GOTO 120 rikthim për një kohë tjetër përhapjeje

380 END

Programi SPHR.FOR Fronti i valëve sferike mbi pasqyrë

DATA XSOUR,YSOUR,C/2.,0.,1./ Burimi,shpejtësia

10 READ(5,100)T koha e përhapjes

IF (T-999.) 20,90,90

20 D=T*V distanca e përhapjes

DO 80 J=1,21 hap pas hapi sipas x

AJ=-.5+(J-1)*.5

F=AJ*AJ/4. forma e pasqyrës

F1=AJ/2. derivati i parë i funksionit të formës

F2=SQRT(1.+F1*F1)

Y2=YSOUR-F y prej burimit tek pika e rradhës e pasqyrës

X2=XSOUR-AJ x prej burimit tek pika e rradhës e pasqyrës

R=SQRT(X2*X2+Y2*Y2) r prej burimit tek pika e rradhës e pasqyrës

IF (D-R) 70,30,30 nese ka arritur pasqyrën

30 D0=D-R distanca pas pasqyrimit

AN1 = -F1/ F2 AN2 = 1./F2

vektori njësi i normales

C=X2/R*AN1+Y2/R*AN2 kosinusi i këndit midis rrezes dhe normales

S=Y2/R*AN2-X2/R*AN1 sinusi i këndit midis rrezes dhe normales

D1 = C*AN1+S*AN2 D2 = C*AN2 -S*AN1

vektori njësi në drejtimin e pasqyruar

X = AJ + D1*D0 Y = F+ D2*AN1

pika mbi frontin e pasqyruar

GOTO 80

70 X=XSOUR-X2/R*D pika mbi frontin e papasqyruar

Y=YSOUR-Y2/R*D

80 PRINT 101,X,Y

GOTO 10 rikthim për një kohë të re përhapjeje

90 STOP

100 FORMAT(F10.5)

101 FORMAT(1X,2F10.4)

END

Page 201: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

87

Në programin SPHR pasqyra është zgjedhur paraboloide dhe nëqoftë se burimi ndodhet në

vatër të tij, atëhere të gjitha frontet valorë pas pasqyrimit janë paralel me njeri tjetrin, kështu

që vala totale e pasqyruar (mbështjellsja e gjithë fronteve valore të pasqyruara) është plan-

paralele. Ka vënd edhe e kundërta d.m.th., valët plan-paralele pas pasqyrimit do të fokusohen

në vatër të pasqyrës paraboloide. Kjo përdoret në teleskopët optikë. Nëse pasqyra do të ishte

sferike dhe valët rënëse sferike me burim në vatër(në lagësinë sa gjysma e rrezes prej kulmit të

pasqyrës) valët e pasqyruara do të jenë thuajse plan-paralele afër qendrës ndërsa në skaje do

çfaqin aberracion sferik. Nëse pasqyra do të ishte elipsoidale programi do të tregojë se valët

sferike të emetuara nga vatra e elipsit do të jenë të fokusuara në vatrën tjetër të elipsit. Kjo

veti përdoret në lazerat pulsues. Të gjitha këto veti të pasqyrave të ndryshme mund të

ilustrohen me programin SPHR duke futur ekuacionin përkatës për sipërfaqen e pasqyrës. Një

teknikë e ngjashme mund të përdoret edhe për valët e thyera ose për kombinimin e pasqyrimit

dhe të thyerjes.

Problema

1. Të gjendet pozicioni dhe latrësia e shëmbëllimit për secilin nga objektet më poshtë kur

jepen edhe të dhënat për pasqyrën:

a. r=10 cm; objektet(pozicioni, lartësia): (10,1),(5,1),(-10,1),(-5,1),(10,-1)

b. r=-10 cm; objektet : sikurse në pikën a.

2. Të gjendet pozicioni dhe lartësia e shëmbëllimit për secilin nga objektet më poshtë kur

jepen të dhënat për lenten:

a. n=1.5, r1 =10, r2 =-10;objektet (pozicioni, lartësia): (10,1),(-10,1),(2.5,1),(-2.5,1)

b. n=1.5, r1 =10, r2 =10; objektet: sikurse në pikën a.

3. a. Shkruani një program për gjetjen e këndit të pasqyrimit të çdo rrezeje nga çdo pikë e

pasqyrës sferike.

b. Duke përdorur programin e mësipërm, gjeni dhe plotoni disa rreze nga ndonjë objekt.

Demostroni aberracionin.

c. Demostroni se rrezet paraksiale i binden teorisë së thjeshtë (formulave në hyrje).

4. a. Shkruani një program që trason rrezet nëpër një lente që kufizohet nga dy sipërfaqe

sferike me rreze dhe tregues thyerje që i zgjidhni vetë.

b. Ekzekutoni programin e mësipërm dhe plotoni disa rreze.Demostroni aberracionin.

c. Provoni se për rrezet paraksiale dhe lentet e holla ka vend teoria e thjeshtë.

d. Treguesit e thyerjes janë zakonisht funksione të gjatësisë së valëve (ngjyrës).

Provoni aberracionin kromatik (të ngjyrës) duke përdorur programin tuaj dhe rrezet

që keni zgjedhur por me dy tregues thyerje të ndryshme - një për dritën e kuqe dhe

një për dritën blu.

5. Një model i ndryshimit të n mbi tokën e nxehtë është: n=1+n0 [1-exp(-y/y0)], ku n0+1

është treguesi i thyerjes larg tokës dhe y0 një lartësi karakteristike.

a. Shkruani një program që trason rrezet nëpër mjedisn ku n=n(y).

b. Duke përdorur këtë model për n , gjeni rrugën e disa rrezeve që dalin nga një burim

pikësor në lartësinë y . I plotoni pastaj këto rreze.

Page 202: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

88

Page 203: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

201

KAPITULLI I V

ANALIZA FURJE DHE PERHAPJA E VALEVE

5.1 Hyrje

Çdo funksion periodik mund të paraqitet me anë të një serie Furje; dhe pothuaj çdo funksion

mund të paraqitet me një integral Furje (transformim Furje). Kuptimi i analizës Furje shtron

rrugën për një kuptim më të plotë mbi përhapjen e valëve, një nga fushat më të rëndësishme të

Fizikës. Valët ndeshen kudo në natyrë - jo vetëm si valë zanore ose valë në ujë për edhe valët

e lëndës (grimcat në mekanikë kuantike). Shumë nga vetitë e valëve që do të diskutohen në

këtë kapitull ndeshen shpesh në Fizikë.

Së pari, ne do fillojmë me seritë Furje për çdo funksion periodik dhe do të vazhdojmë

me përhapjen e paketave valore dhe përdorimin e transformimit Furje. Zakonisht është e

mundur që për situatat e ndryshme fizike të gjejmë zgjidhje në formën e funksioneve të njohur

si sinusi, kosinusi, funksionet e Besselit ose polinomet e Lezhandrit. Zbërthimi i një vale

çfardo në valë sinusoidale ose kosinusoidale me anë të transformimit Furje është i ngjashëm

me zbërthimin në funksione të tjerë. Zgjidhjet e ekuacioneve shpesh janë më të lehta për tu

interpretuar kur zbërthimi bëhet në funksione të thjeshtë.

Zakonisht, në kurset e hyrjes të Fizikës trajtohen vetëm situata kur të gjithë përbërëset e

valëve (që kanë frekuenca të ndryshme) përhapen së bashku me të njëjtën shpejtësi (përhapja e

valëve pa dispersion) . Për disa valë, ky përafrim është i vlefshëm. Por më realiste është kur

valët përbërëse me frekuenca të ndryshme përhapen me shpejtësi të ndryshme. Siç do të

shohim, kompjuteri është mjaft i përshtatëshëm për studimin e valëve dispersive.

Më poshtë do të jepen disa fakte dhe ekuacione bazë.

1. Valët jodispersive: çdo valë (e çdo forme) përhapet me shpejtësi fazore v , shpejtësia me të

cilën çdo fazë lëviz me kohën.

Për një valë skalare plane : Nëse f(x) është forma e valës në t=0, atëhere f(x-vt) është

forma e saj në kohën t. [f(x+vt) do paraqiste valën që përhapet në drejtim të kundërt]

2. Teorema Furje: Çdo funksion f(x) i diferencueshëm dhe për të cilin ekziston integrali :

| ( )|f x dx , mund të zbërthehet në formën (transformimi ose integrali Furie) :

f x a k kx b k kx dk( ) [ ( ) cos( ) ( ) sin( )] ; ku

a k f x kx dx( ) ( ) cos( )1

2 dhe b k f x kx dx( ) ( ) sin( )

1

2

3. Seritë Furje: Nëse një funksion f është periodik, zbërthimi i f do të përmbajë vetëm

harmonika të frekuencës themelore (frekuenca që i takon periodës L të funksionit ):

f xA

Anx

LB

nx

Ln n

n

( ) [ cos( ) sin ( )]0

12

2 2 ; ku :

AL

f xnx

Ldxn

L2 2

0

( ) cos( ) dhe BL

f xnx

Ldxn

L2 2

0

( ) sin( )

4. Në çdo mjedis linear, çdo harmonikë përbërëse e valëve përhapet pavarësisht nga të tjerat.

Përbërëset mund ose jo të kenë shpejtësi të njëjtë përhapjeje (ato mund të mos

Page 204: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

202

absorbohen në mënyrë të njëjtë).

5.2 Seritë Furje

Për çdo funksion që mund të zbërthehet në seri Furje mund të gjenden koeficientët An dhe Bn

sipas formulave që jepen më në hyrje. P.sh. le të shqyrtojmë funksionin që është paraqitur në

figurën 5.1 .

Figura 5.1 Një valë në formë trekëndëshe e

ndërprerë. Gjatësia e valës ose perioda është L.

Ky është një funksion çift i x , f(-

x)=f(x); prandaj nuk ka terma me

sinuse në zbërthimin Furje të tij.

Pra të gjithë koeficientët Bn janë

zero dhe mbetet të llogarisim vetëm

koeficirntët An .

AL

f xnx

Ldx

L

x

L

nx

Ldx

x

L

nx

Ldx

nx

L L

L

n

nx

L

L

n

nx

L

L

L

n

L

L

L

L

L

L

L

2 2 21

3 21

3 2

2 6

4

2

2

2

4

2

2

3

0

0

3

3

3

2

2

2 2 3

0

2

2

( ) cos cos cos

sin cos sin

/

/

/

/

/

/

/

1

n

-6

2 2 0

32

2

2

n

nx

L

L

n

nx

L

Lcos sin /

Përfundimisht kemi :

An

nA

Lf x dxn

L3

12

3

2 2

32 2 0

0

cos ( ) dhe

Tani mund të shkruajmë serinë Furje të funksionit f(x):

f xn

n n

L( ) cos cos

1

3

31

2

3

22 2

Një seri e tillë konvergjon shpejt dhe pas shumimit të pak harmonikave merret një përafrim i

mirë i funksionit. Kjo realizohet në programin SPIKE.

Programi SPIKE.BAS Sinteza e një vale trekëndëshe të ndërprerë.

f x

Lx

L

Lx

Lx

Lx x

L

Lx

L

( )

,

,

,

,

02 3

13

30

13

03

03 2

Page 205: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

203

100 P=3.14159

110 L=3 perioda

120 H=50 numri i harmonikave

130 PRINT “X”,”AMPLITUDA”

140 FOR X=0 TO L STEP L/(5*H) hapi sipas boshtit x

150 Y=1/3

160 FOR N=1 TO H shumimi sipas harmonikave

170 A=3/(P*P*N*N)*(1-COS(2*P*N/3)) koeficienti

180 Y=Y+A*COS(2*P*N*X/L) amplituda

190 NEXT N

200 PRINT X,Y

210 NEXT X

220 END

Programi SPIKE.FOR Sinteza e valës trekëndëshe të ndërprerë

PI=3.14159

ALEN=3. perioda

NHARM=50 numri i harmonikave

NSTEP=5*NHARM+1

ANSTEP=NSTEP-1

DO 20 I=1,NSTEP,1 hapi sipas x

AI=I-1

X=AI*ALEN/ANSTEP

Y=1./3.

DO 10 N=1,NHARM,1 shumimi sipas harmonikave

AN=N

A=(3./(PI**2*AN**2))*(1.-COS(2.*PPI*AN/3.)) koeficienti

10 Y=Y+A*COS(2.*PI*AN*X/ALEN) amplituda

20 PRINT 100,X,Y

100 FORMAY(1X,3E15.5)

30 STOP

END

Figura 5.2 tregon rezultatin e shumimit të serisë për numër harmonikash të ndryshme.

Funksioni është vizatuar deri në largësi 2L për të treguar periodicitetin e serisë.

Page 206: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

204

Figura 5.2 Shumimi i nje numri të

ndryshëm harmonikash të valëve

trekëndëshe të ndërprerë : duke filluar

nga grafiku më i sipërm i figurës: n=1 ,

n=2 , n=4 , n=10.

Në mënyrë të ngjashme mund të

gjendet paraqitja Furje e funksioneve të tjerë periodike, disa shembuj funksionesh të tillë janë

funksioni trekëndësh dhe funksioni katror :

f x L

Lx

Lx x

Lf x

xL

Lx L

( ) ( )1+

2x

0

+1 0

20

12

2

2

12

ose funksioni në formën e dhëmbëve të sharrës: f(x)=x 0<x<L .

Eshtë mirë që për këto funksione të llogaritni koeficientët Furje . Në figurën 5.3 është

treguar rezultati i shumimit të një numri të ndryshëm harmonikash të valëve në formë katrori

(funksioni i dytë i mësipërm). Në këtë rast (edhe në rastin e valëve në formë sharre) edhe për

numër të madh harmonikash vihet re një kapërxim vlere (përtejvlera) në pikat ku funkasioni

nuk është i vazhdueshëm, ky njihet si fenomeni i Gibsit. Programi SQRWAVE kryen

shumimin e harmonikave për valët katrore. Në disa kompjuter, llogaritja e sinuseve dhe

kosinuseve është i ngadaltë, prandaj përdoret një teknikë (FFT, Fast Furie Transformation) që

do të trajtohet në pjesën e dytë të këtij kursi.

Page 207: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

205

Figura 5.3 Shumimi i një numri të

ndryshëm harmonikash për valët katrore.

Prrogrami SQRWAVE Sinteza e valëve katrore

100 P=3.14159

110 L=2*P Perioda

120 H=50 numri i harmonikave

130 DIM B(50)

140 FOR N=1 TO H

150 B(N)=2/(P*N)*(1-COS(P*N)) koeficienti për harmonikën e N

160 NEXT N

170 PRINT “X”, “AMPLITUDA”

180 FOR X=0 TO L STEP L/10 hapi sipas x

190 Y=0

200 FOR N=1 TO H

210 Y=Y+B(N)*SIN(2*P*N*X/L) shumimi sipas harmonikave

220 NEXT N

230 PRINT X,Y

240 NEXT X

250 END

Programi SQRWAVE.FOR Sinteza e valëve katrore

DIMESNSION B(50)

PI=3.14159265

WL=2.*PI Perioda

IH=50 numri i harmonikave

DO 5 N=1,IH

5 B(N)=2./(PI*N)*(1-COS(PI*N)) koeficienti për harmonikën e N

DO 15 IX=1,11 hapi sipas x

X=(IX-1)*WL/10.

Page 208: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

206

Y=0.

DO 10 N=1,IH shumimi sipas harmonikave

10 Y=Y+B(N)*SIN(2*PI*N*X/WL) Amplituda

15 PRINT 100,X,Y

20 STOP

100 FORMAT(1X,2F10.4)

END

Nuk është e domosdoshme që të kemi një shprehje të thjeshtë analitike për një funksion në

mënyrë që të përcaktojmë zbërthimin Furje të tij. Programi FSCOEFF përdor integrimin

numerik për të gjetur koeficientët Furje të çdo funksioni periodik ose për çdo bashkësi të

dhënash periodike. Ai mund të përdoret për llogaritjen e koeficientëve të valëve katrore të

parqitur në figurën 5.3 . Amplituda e valës katrore , për vlera të x të barazlarguara, ruhet në

një vektor. Integrimi numerik është kryer sipas regullit trapezoidal. Sa më i vogël është hapi

sipas x , aq më e madhe është saktësia e llogaritjes së koeficientëve , sidomos koeficientëve të

rendit të lartë. Duke mbushur një vektor me pika të dhënash, mund të bëjmë analizën Furje të

çdo funksioni periodik duke përcaktuar koeficientët. Integrimi numerik është më i lehtë nëse

pikat e të dhënave janë të barazlarguara gjatë gjithë periodës.

Programi FSCOEFF.BAS Llogaritja e koeficientëve Furje

100 DIM F(101)

110 P=3.14159

120 N1=10 numri i koeficientëve që do llogariten

130 N=100 numri i intervaleve të të dhënave

140 FOR I=1 TO N+1 cikli i leximit të vlerave të funksionit

150 READ F(I)

160 NEXT I

170 DATA .5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

180 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0

190 DATA .5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1

200 DATA 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.5

210 A0=1/N*F(1)/2 koeficienti i rendit zero

220 FOR I=2 TO N cikli i integrimit numerik (rregulli i trapezit)

230 A0=A0+1/N*F(I)

240 NEXT I

250 A0=A0+1/N*F(N+1)/2 koeficienti i rendit zero

260 PRINT “A0=“;2*A0

270 PRINT “HARMONIKA”,”A”,”B”

280 FOR J=1 TO N1 cikli për koeficientet e rendeve 1 deri N

290 A=0

300 B=0

310 FOR I=1 TO N+1 cikli i integrimit numerik (rregulli i trapezit)

320 A=A+2/N*F(I)*COS(2*J*P*(I-1)/N)

330 B=B+2/N*F(I)*SIN(2*J*P*(I-1)/N)

340 NEXT I

350 A=A-1/N*F(1)-1/N*F(N+1)

360 PRINT J,A,B

370 NEXT J

380 END

Page 209: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

207

Programi FSCOEFF.FOR Llogarit koeficientët e serisë Furie

DIMENSION FNCT(101)

PI=3.14159

NUM=10 Numri i koeficientëve që do llogariten

INTRVL=100 numri i intervaleve të dhëna

FINT=INTRVL

DATA FNCT/.5,49*0.,.5,49*1.,.5/ forma e valës

A0=1./FINT koeficienti i rendit zero

DO 10 LOC=2,INTRVL shumimi(regulli trapezoidal) për llogaritjen e koef. rend.0

10 A0=A0+1./FINT*FNCT(LOC+1)/2.

A0=2.*A0

PRINT 101,A0

DO 20 INDEX=1,NUM cikli i llogaritjes së koeficentëve të rendeve jo zero

FINDEX=INDEX

A=0.

B=0.

DO 30 LOC=1,INTRVL+1

FLOC=LOC

A=A+2./FINT*FNCT(LOC)*COS(2.*FINDEX*PI*(FLOC-1.)/FINT)

30 B=B+2./FINT*FNCT(LOC)*SIN(2.*FINDEX*PI*(FLOC-1.)/FINT)

A=A-1./FINT*FNCT(1)-1./FINT*FNCT(INTRVL+1)

20 PRINT 106,INDEX,A,B

101 FORMAT(1X,3HA0=,F10.5)

106 FORMAT(I3,2F10.5)

END

Ka një numër të madh zbatimesh të analizës Furje në trajtimin e të dhënave. Ju mund

krijoni bjë bashkësi të dhënash eksperimentale p.sh. duke fotografuar një EKG ose një ton

muzikor të çfaqur në një oshiloskop.Nga kjo mund të nxjerrim një seri vlerash për një

funksion kohor perodik të dhënë numerikisht, të cilat mund ti nënshtrohet analizës Furje si

më lart. Rezultati është spektri frekuencial , i cili për shembujt e përmëndur ka frekuencën

bazë (atë të rrahjeve të zemrës ose tonin themelor te sinjalit muzikor); komponentët më të

latrë vijnë nga lëvizjet e pjesëve të ndryshme të zemrës ose nga overtonet e instrumentit

muzikor. Mbi çdo informacion real vendoset një tablo zhurme. e cila në hapësirën e

frekuencave Furje mund të kapet lehtë dhe mund të eliminohet gjatë sintetizimit të

harmonikave duke përmirësuar kështu sinjalin , ndërkohë që informacioni për spektrin

frekuencial mbetet në kompjuter për përpunim të mëtejshëm. Në shembullin e paraqitur në

figurën 5.4, të dhënat e një EKG për një segment kohor .83 sek i janë nënshtruar analizës

Furje dhe vlerat që rezultojnë të koeficientëve për 45 harmonikat e para janë paraqitur në

tabelën që pason.

n An Bn n An Bn n An Bn

1 47.5 39.4 16 33.8 19.5 31 5.2 10.3

Page 210: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

208

2

3

4

5

6

7

8

9

10

11

12

13

14

15

0.8

117.4

31

88.5

60.6

102.2

72.2

63.2

48.7

21.2

27.8

20.7

16.6

37.4

-100.4

-53.4

28.2

-8.5

46.3

19.6

16.9

36.3

21.9

30.9

25.8

26.8

20.3

22.8

17

18

19

20

21

21

23

24

25

26

27

28

29

30

31.7

24.3

23.3

21.8

19.9

8.7

12.7

15.3

10

-0.5

4.6

-0.8

0.6

3.5

24.9

15.6

20.6

8.8

10.9

9.2

2.6

6.1

2.5

3.1

6.3

11.9

3.6

11.7

32

33

34

35

36

37

38

39

40

41

42

43

44

45

6.2

0.2

2.5

2.4

5.8

5

3.6

6.2

0.1

2.9

-0.9

0.3

0.8

3.5

14.1

7.3

4.3

4.4

0.9

5.5

6.3

7.7

7.2

1.6

5.2

-0.6

3.3

-1.9

Figura 5.4 Një plot i një EKG dhe

sinteza e saj me 25 harmonika dhe 100

harmonika. Për 25 harmonika, shumica

e zhurmave janë hequr. Për 100

harmonika, kurba është riprodhuar

pothuaj ekzaktësisht.

5.3 Transformimi Furje

Shumica e valëve në natyrë janë pulsive, pra që parqiten nga një funksion jo periodik por që

shuhet pas një intervali kohe. Sipas teoremës Furje këto funksione mund të konsiderohen si

shumë e një infiniteti harmonikash me frekuenca të ndryshme shumë afër njera tjetrës. P.sh. ,

konsiderojmë një puls trekëndësh simetrik ndaj x=0 (figura 5.5) . Kur e transformojmë këtë

puls në hapësirën Furje (të ashtuquajturën k hapësirën ose hapësirën e vektorëve valorë) , do

Page 211: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

209

të gjejmë vetëm valë cosinusoidale (harmonikat mind të jenë sinusoidale dhe kosinusoidale).

Kjo për arsye se f(x)=f(-x), pra pulsi është simetrik. Kosinuset janë funksione çift ndërsa

sinuset janë funksione tek.

Figura 5.5 Një puls trekëndor simetrik ndaj zeros.

Koeficientët e valëve kosinusoidale mund të gjenden nga

integrali :

a k f x kx dx( ) ( ) cos( )1

2 , ku për çdo vlerë të k kemi një amplitudë a(k); a(0) është

amplituda më e madhe për pulsin trekëndor (fig. 5.5) ; a(k) është kryesisht sasia e cos(kx) në

pulsin origjinal.

Valët sinusoidale ose kosinusoidale përhapen në mjedis me shpejtësinë e tyre që në

përgjithësi varet nga numri valor v(k) [edhe absorbimi i tyre në përgjithësi varet nga numri

valor A(k)]. Programi WAVES jep një mënyrë për kryerjen e llogaritjeve të përhapjes së

valëve . Në fillim llogaritet transformimi Furje i pulsit fillestar. Pastaj kryhen llogaritjet e

përhapjes së komponentit valor me numër valor k sipas shpejtësisë v(k) për një farë kohe.

Pastaj programi risintetizon (i rimbledh harmonikat) pulsin duke përdorur të njëjtat sasira

a(k) të komponenteve që ishin prezent fillimisht (pra duke konsideruar që nuk kemi absorbim

të valëve përbërëse) [ju mund ta rishkruani programin duke futur edhe absorbimin, duke i bërë

koeficientët më të vegjël në një mjedis “linear” pra që i absorbon valët përbërëse në mënyrë

të njëjtë ose “jo linear” duke i ndryshuar a(k) në mënyrë jo të njëjtë para risintetizimit].

Programi WAVES i përafron integralet infinitë të analizës Furje në integrale nga -5 në +5 me

hap /16. Janë zgjedhur këto vlera sepse duket se për to integralet infinite llogariten me

saktësi të arsyeshme duke minimizuar kohën në kompjuter

Programi WAVES.BAS Përhapja dispersive e pulseve valorë

100 DIM F(161),G(161)

110 FOR I=1 TO 161 Cikli ku ruhen amplitudat Furje të komponenteve

120 K0=-5*3.14159+(I-1)*3.14159/16

130 F(I)=1.41421*EXP(-K0*K0) pjesa reale

140 IF F(I)>1E-12 THEN 160 nëse amplituda është shumë e madhe

150 F(I)=0

160 G(I)=0

170 NEXT I

180 DIM C(360),S(360)

190 P0=6.28318/360

200 FOR I=1 TO 360 ckli i llogaritjes së sinuseve dhe kosinuseve

210 C(I)=COS((I-1)*P0)

220 S(I)=SIN((I-1)*P0)

230 NEXT I

Page 212: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

210

240 PRINT “KOHA”;

250 INPUT T1 koha e përhapjes

260 PRINT “X”,”AMPLITUDA 2”

270 FOR X1=-5 TO 5 STEP .5 hapi sipas x

280 I1=0

290 I2=0

300 FOR I=1 TO 161 shumimi i gjithë komponeteve

310 K0=-5*3.14159+(I-1)*3.14159/16

320 V0=1+.01*K0 shpejtësia për vektorin valor k0

330 K9=K0*(X1-V0*T1)

340K8=1+INT((K9-INT(K9/6.28318)*6.28318)/P0) këndi i saktë për sinusin dhe kosinusin

350 R1=C(K8)*F(I)+S(K8)*G(I) pjesa reale e sintezës

360 R2=C(K8)*G(I)-S(K8)*F(I) pjesa imagjinare

370 I1=I1+R1

380 I2=I2+R2

390 IF (I-1)*(I-161)<>0 THEN 420 pikat e skajeve në rregullin trapezoidale

400 I1=I1-R1/2

410 I2=I2-R2/2

420 NEXT I

430 I1=I1*3.14159/16/SQR(6.18318) normalizimi pjesës reale

440 I2=I2*3.14159/16/SQR(6.18318) normalizimi pjesës imagjinare

450 PRINT X1,I1*I1+I2*I2

460 NEXT X1

470 PRINT

480 GOTO 240 rikthim për një kohë tjetër të përhapjes

490 END

Programi WAVES.FOR Përhapja dispersive e pulseve valorë

DIMENSION REPULS(161),REFOUR(161),AIFOUR(161)

PI=3.14159

DO 20 IK=1,161,1 ruan amplitudat Furje të komponenteve

AIK=IK-1

AK=-5.*PI+AIK*PI/16.

REFOUR(IK)=1.41421*EXP(-AK*AK) pjesa reale e amplitudës Furje

IF (REFOUR(IK)-1.E-12) 15,20,20

15 REFOUR(IK)=0.

20 AIFOUR(IK)=0.

30 READ(5,100)TPROPD koha e përhapjes se pulsit

IF (TPROPD.EQ.999.) GOTO 60

DO 50 IX=1,21 hapi sipas x

AIX=IX-1

X=-5.+AIX*.5

RESYN=0.

AIMSYN=0.

DO 40 IK=1,161 shumimi i komponentev(harmonikave)

AIK=IK-1

AK=-5.*PI+AIK*PI/16.

VELATK=1.+.01*AK shpejtësia për vektorin valor të radhës

CSSYN=COS(AK*(X-VELATK*TPROPD))

Page 213: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

211

SNSYN=SIN(AK*(X-VELATK*TPROPD))

RESYN=RESYN+(1.25331/16.)*(CSSYN*REFOUR(IK)+SNSYN*AIFOUR(IK)

40 AIMSYN=AIMSYN+(1.25331/16.)*(CSSYN*AIFOUR(IK)+SNSYN*REFOUR(IK)

AMPL=RESYN**2+AIMSYN**2 amplituda

50 PRINT 101,X,AMPL

GOTO 30 rikthim për një kohë tjetër përhapjeje

100 FORMAT(E5.2)

101 FORMAT(1X,2E15.5)

60 STOP

END

Figura 5.6 Përhapja e një impulsi

trekëndësh nëpër një mjedis pak

dispersiv . a) Impulsi origjinal; b)Pjesa

reale e transformimit Furje të impulsit

fillestar; c) - g) Impulsi pas 2,4,6,8,10

njësi kohe. Deformimi i impulsit bëhet

për shkak të natyrës dispersive të

mjedisit. Zeroja e kordinatave hapsinore

në transformimin Furje është në qendër

të figurës; majtas dhe djathtas figurës i

takon -4 dhe +4 .

Figura 5.6 tregon përhapjen e një pulsi trekëndësh në një mjedis që është pak dispersiv.

Shpejtësia e përhapjes së valëve në mjedis është marë: v(k)=v0 (1+0.01k) . Pra shpejtësia

varet pak nga numri valor k i komponenteve (harmonikave). Kur komponentet risintetizohen

japin një distorsion (deformim) të formës së pulsit valor. Ky distorsion rritet gjatë lëvizjes së

pulsit. Shpejtësia e grupit e pulsit përcaktohet si shpejtësia me të cilën përparon qendra e

pulsit valor. Kjo shpejtësi mund të mos jetë e njëjtë me shpejtësinë e ndonjë komponenteje.

Mund të shqyrtohen edhe mjedise me dispersion më të fortë , psh v(k)=v0(1+0.1k) ose pulse

valore me formë tjetër, psh një copë prej një sinusoide. Në të dy rastet distorsioni i pulsit në

mjedis do të jetë më i dukshëm.

Figura 5.7 (a) Përhapja e një paketi

valor fonon nëpër një rjetë një-

dimensionale. Figura tregon impulsin

origjinal, spektrin e tij Furje dhe

përhapjen e tij pas 12 dhe 24 njësi

kohore. impulasi ka gjatësi vale shumë

më të madhe se konstantja e rjetës,

prandaj distorsioni është i vogël.

Page 214: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

212

Figura 5.7 (b) Përhapja e paketit valor

fonon nëpër një rjetë një-dimensionale.

Figura tregon efektet kur gjatësia bazë e

impulsit është afro dy herë konstanten e

rjetës. Distorsioni i impulsit është më i

dukshëm dhe shpejtësia e grupit është

më e vogël.

Figura 5.7 tregon një zbatim interesant të përhapjes dispersive të valëve në fizikën e trupit

të ngurtë. Del se valët elastike (fotonet) që përhapen nëpër një kristal ( një-dimensional) me

shpejtësi fazore : v(k)=v0 sin(ka/2), ku a është distanca midis atomeve të rjetës (kristalit) dhe

k=2 / , ku është gjatësia e valës. Kur gjysma e gjatësisë se valës është sa hapi i rjetës a

,vala nuk përhapet [ka= , pra v(k)=0]. në rastin a) të figurës 5.7 ëhtë marë një puls me gjatësi

vale shumë më të madh se a pulsi valor përhapet dhe deformohet pak. Në rastin b) gjysëm-

gjatësia e pulsit valor është shumë afër a, pulsi valor deformohet më shpejt dhe shpejtësia e

grupit është mjaft më e vogël.

Ka një sërë efektesh që mund të ilustrohen në situatat e përhapjes së valëve reale .

Problema

1. Duke përdorur seritë Furje, të shkruhet një program që shumon 1,5,10 dhe 100 terma për

funksionet e mëposhtëme:

a. funksioni trekëndësh

b. funksioni në formën e dhëmbëve të sharrës

c. funksioni katror

Tregoni dhe shpjegoni fenomenin e Gibsit.

2.a. Shqyrtoni transformimin Furje të pulsit katror.

b. Shkruani një program për përhapjen e pulseve katrorë në një mjedis të tillë që v(k)=k2.

[fillimisht e kontrolloni programin duke marë: v(k)=a (konstante)]

c. Përhapeni pulsin në kahen e rritjes së kohës dhe atë të zvogëlimit të kohës. Shpjegoni

rezultatin fizikisht.

3. a. Merrni një fotografi (duke përdorur oshiloskopin, një mikrofon dhe kamer fotografike)

të amlitudës në varësi të kohës për disa nota muzikore pë luajtura në një instrument.

Sigurohuni që çdo fotografi ka 1½ deri 2 cikle pë formës valore që përsëritet.

b. Nga fotografia lexoni amplitudat për 100 intervale kohore të barazlarguar të një cikli (101

pika duke përfshirë edhe skajet e ciklit). Futini këto amplituda si të dhëna në programin

llogarit koeficientët Furje. Sa është frekuenca e seicilës notë?

c. Gjeni koeficientët Furje për 10 harmonikat e para të fomës valore të fotografuar.

d. Vrojtoni me kujdes përmbajtjen në harmonika të çdo note (nga instrumenta të ndryshëm).

Page 215: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

213

Përpiquni të lidhni përmbajtjen në harmonika me timbrin e notës.

4. Wshtë e mundur që të bëjmë me kompjuter analizën Furje të çdo pulsi me formë çfardo

në spektrin e tij Furje [duke bërë integrimin numerik f x kx dx( ) cos( ) etj. ] . Shkruani një

program për analizën Furje dhe analizoni ndonjë puls me formë interesante që nuk mund

trajtohet analitikisht. (Së pari kontrollojeni programin për një puls trekëndësh për të cilin

spektrin Furje e njohim).

Page 216: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

214

KAPITULLI I VI

VALET E QENDRUESHME DHE INTERFRENCA

6.1 Hyrje

Valët janë procese që ndeshen shpesh në natyrë , efekte të tilla si rezonanca, interferenca,

difraksioni etj janë të zakonëshme në jetën e përditëshme. Përhapja e tingujve nga një

altoparlant shoqërohet nga efektet e difraksionit; hyrja e dritës nëpër çarje i dedikohet

difraksionit; tingulli i instumentave me tela është rezultat i valëve të qëndrueshme; tablotë e

brezave të ngjyrosur janë rezultat i interferencës; valët zanore në frekuencën e rezonanës

mund të thyejnë qelqin e një gote; etj.

Valët, kur mbivendosen mblidhen. Në qoftë se në një pikë të hapësirës arrijnë njëkohësisht

dy valë me të njëjtën frekuencë dhe gjatësi vale [ njëra valë A1 cos(kx+t+1 ); vala e dytë A2

cos(kx+t+2 )] atëhere rezultati i lëkundjeve në këtë pikë është thjeshtë:

A=A1 cos(kx+t+1 )+ A2 cos(kx+t+2 ). Një rezultat interesant merrët kur fazat 1 , 2

janë të tilla që valët shuajnë ose forcojnë njera tjetra. Praktikisht matet(ndjehet) intensiteti i

valëve (mesatarja kohore e katrorit të amplitudës) rezultante. Interferenca ndodh për shkak të

termit të dytë në katrorin e A. Çdo numër valësh mund të interferojë në çdo pikë dhe tabloja e

intensitetit rezultant pas interferencës mund të jetë e komplikuar. Valët e qëndrueshme

ndodhin kur një seri valësh nga i njëjti burim vazhdimisht arrijnë të njëjtën pikë me diferencë

faze të pandryshuar.

6.2 Valët e qëndrueshme

Teoria e përgitheshme e valëve të qëndrueshme është e ndërlikuar, veçanërisht nëse merren

parasysh edhe humbjet e valëve. Por ideja bazë e kësaj teorie është e lehtë për tu kuptuar.

Rezultatet e llogaritjeve të valëve të qëndrueshme një-dimensionale tregojnë se do kemi

përgjigje rezonative nga sistemi ku përhapen valët vetëm për frekuenca dhe gjatësi vale

të përcaktuara.P.sh. , nëse dy skajet e një shufre janë të fiksuara (ose tubi i organos ka dy

skajet të mbyllura), atëhëre pritet rezonancat për =2L,L,2

3

L , 1

2

L ,.. , ku L është gjatësia e

shufrës.Valët e pasqyruarta në skajet e shufrës (ose tubit) janë në diferencë faze me 1800 me

valët rënëse; kështu që në tablonë e valëve të qëndrueshme kemi nyje në këto skaje.

Në qoftë se njeri nga skajet është i fiksuar (i mbyllur) dhe tjetri i lirë(i hapur), atëhere

rezonancat priten për =4L,4

3

L , 4

5

L ,.., sepse valët e pasqyruara në skajin e hapur janë në

fazë me valët rënësë. Në se të dy skajet janë të hapura, përsëri do kemi rezonancë të ngjashme

me rastin kur të dy skajet janë të mbyllura me ndryshimin që nyjet e valëve bien aty ku binin

barqet në tubin e mbyllur dhe barqet bien aty ku binin nyjet në tubin e mbyllur. Në këto

arsyetime është nënkuptuar që kemi pasqyrime perfekte pa zvogëlim të amplitudës,

megjithëse realisht mund të kemi humbje të valëve dhe devijime në kufijtë e mjediseve ku ato

pasqyrohen.

Metoda e përdorur në kompjuter mund të zbatohet si për rastet e pasqyrimeve perfekte në

skaje ashtu edhe për rastet reale me kushte kufitare reale të caktuara. Një burim emeton valë

që arrijnë pikën e observimit drejtpërsëdrejti. Këto valë gjithashtu vazhdojnë rrugën deri në

skaj dhe pasqyrohet (pjesërisht). Vala e pasqyruar arrin pikën e observimit dhe i mblidhet

valës primare. Valët vazhdojnë të pasqyrohen nga skajet dhe rezultantja në pikën e observimit

Page 217: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

215

është rezultat qoftë i valëve që vijnë direkt qoftë të pasqyruara. Vala e vrojtuar është shuma e

një serie. Nëse shpejtësia e valëve është v dhe frekuenca e valëve është f , atëhere vektori

valor është k=2/=2f/v . Nëse burimi është në pikën x9 dhe pika e observimit në pikën x0 ,

vala direkte është Acos[k(x0 - x9)], ku A është amplituda origjinale. {Një humbje e amplitudës

si rezultat i absorbimit mund të futet duke ndryshuar amplitudën. P.sh. , vala origjinale mund

të bëhet me amplitudë Aexp[-(x0-x9)]}. Kur vala e pasqyruar për herë të parë kthehet tek pika

e observimit, ajo ka amplitudë të ndryshme [Apasq.=(Arënës)· (koeficienti i pasqyrimit)] dhe fazë

të ndryshme {Ppasq.=Prënës + [2k(xskaj - x0 )]}. Kemi përdorur faktin që vala ka bërë dy rrugë-

një drejt skajit dhe një mbrapsht. Vala tjetër e pasqyruar bën ndryshime të ngjashme por

pasqyrohet nga skaji tjetër.

Programi STAND kryen këto llogaritje duke përdorur funksionet sinus dhe cosinus. Rezultat

i ekzekutimit të programit është apmlituda në pikën e observimit pas pasqyrimeve të

shumëfishta në skaje. Ju mund ta ekzekutoni programin për disa frekuenca dhe të demonstroni

kurbat e rezonancës.

Programi STAND.BAS Valët e qëndrueshme

100 READ X1,R1,X2,R2,X9,A,V skaji i pare , koeficienti i pasqyrimit, skaji i dytë, koefic.

110 DATA 0,-.8,.165,-.8,0,1,330 i pasqyrimit, pozic. i burimit,amplituda, shpejtësia e valëve

120 I0=-7.6/LOG(ABS(R1*R1)) numri i pasqyrimeve që konsidertohen

130 PRINT “SKAJET E TUBIT:”;X1,X2

140 PRINT “SHPEJTWSIA E VALEVE=“;V

150 PRINT “PIKA E OBSERVIMIT”;

160 INPUT X0

170 PRINT “FREK. ME E ULET , FREK. ME E LARTE”;

180 INPUT F1,F2

190 PRINT “F”,”LLANDA”,”AMPLITUDA”

200 FOR F=F1 TO F2 STEP (F2-F1)/10 hapi sipas frekuencave

210 W=2*3.14159*F frekuenca këndore

220 K=W/V vektori valor

230 A0=0

240 T0=3.141519/W perioda

250 FOR T=0 TO T0 STEP T0/18 hapi nëpër periodë

260 A8=A

270 P8=K*(X0-X9)-W*T faza në pikën e obsevimit

280 A1=A*COS(P8) amplituda në pikën e observimit

290 FOR i=1 TO I0 shumimi sipas pasqyrimeve

300 A8=A8*R2

310 P8=P8+2*K*(X2-X0) faza në skajin e dytë

320 A1=A1+A8*COS(P8) amplituda në skajin e dytë

330 A8=A8*R1

340 P8=P8+2*K*(X0-X1) faza në skajin e parë

350 A1=A1+A8*COS(P8) amplituda në skajin e parë

360 NEXT i

370 IF ABS(A1) < A0 THEN 390380 A0 = ABS(A1)390 NEXT T

gjen amplitudën maksimale

400 PRINT F,2*3.14159/K,A0

410 NEXT F

420 GOTO 170 rikthim për një interval tjetër frekuencash

Page 218: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

216

430 END

Programi STAND.FOR Valët e qëndrueshme

DATA END1,RFCOE1,END2,RFCOE2/0.,-.8,.165,-.8/

DATA SOURC,AMPLI,V/0.,1.,330./

I0=IFIX(-7.6/ALOG(ABS(RFCOE1*RFCOE2)))

5 READ(5,100)PTOBS,ALF,UF pika e observimit,kufijtë e frekuencave

IF(PTOBS-999.) 10,80,80

10 DO 70 J=1,11 hapi për frekuencat

F=ALF+(J-1)*(UF-ALF)/10.

W=2.*3.14159*F frekuenca këndore

AK=W/V vektori valor

AMX=0.

T0=4.14159/W perioda

DO 60 IT=1,19 hapi për përiodën e plotë

T=(IT-1)*T0/18.

AM=AMPLI

PHA=AK*(PTOBS-SOURC)-W*T faza në pikën e observimit

AM1=AMPLI*COS(PHA) amplituda në pikën e observimit

DO 50 I=1,I0 shumimi i pasqyrimeve

AM=AM*RFCOE2

PHA=PHA+2.*AK*(END2-PTOBS) faza në skajin e dytë

50 AM1=AM1+AM*COS(PHA) amplituda pas skajit të dytë

60 AMX=AMX1(AMX,ABS(AM1)) gjen amplitudën maksimale

ALAM=2.*3.1415/AK

70 PRINT 101,F,ALAM,AMX

GOTO 5 rikthim për frekuencën tjetër

80 STOP

100 FORMAT(3F10.4)

101 FORMAT(1X,3F10.4)

END

Figura 6.1 Përgjigjet rezonuese të

një sistemi(tubi) me dy skaje të

mbyllura. Amplituda e valës në

qendër të tubit është treguar në

varësi të frekuencës.Gjatësia etubit

është zgjedhur në mënyrë që tubi të

rezonojë në 1000 Hz. Koeficientët e

pasqyrimit për kurbat e ndryshme

janë -0.8,-0.6,-0.4, dhe 0. Modet për

2000 dhe 4000 Hz mungojnë sepse

amplituda e tyre në qendër është

shumë e vogël.

Page 219: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

217

Figura 6.2 Përgjigjet rezonative të

sistemit si në figurën 6.1 . Pika e

observimit është 1/8 e gjatësisë së

tubit larg prej skajit të tij, kështu që

observohen të gjitha rezonancat nën

5000 Hz.

Figura 6.3 Përgjigjet rezonative

të një tubi me njerin skaj të

hapur dhe skajin tjetër të

mbyllur. Pika e observimit është

në skajin e hapur; janë treguar

rezultatet për keficientët e

pasqyrimit ±0.8,±0.6,±0.4,±0.2

dhe 0.

Figura 6.4 Përgjigjet rezonative të

një tubi me të dy skajet të hapur.

Rezonancat vrojtohen në skajin e

hapur ; përgjigja rezonative në

frekuencën 0 është zgjidhje triviale.

Janë treguar kurbat e rezonancës për

koeficientët e pasqyrimit

±0.8,±0.6,±0.4±0.2 dhe 0.

Figura 6.1 tregon efektet e rezonanacës në një tub me dy skaje të mbyllur. Për rezonancën më

të mprehtë , në çdo pasqyrim humbet 20% e valës. Gjithashtu në çdo pasqyrim faza ndryshon

me 1800 . Kurbat e tjera në figurë janë për koeficientë pasqyrimi -0.6,-0.4,-0.2, dhe 0. Gjatësia

është regulluar për një tub organoje 1000Hz, pra rezonancat priten për 1000,2000... Hz.

Megjitahtë, nëse observimi është në qendër të tubit, si në figurën 6.1, ju do observoni

amplituda të mëdha rezonuese për modet teke; për modet çifte (për të cilat 2,4,6 ... , gjysëm-

valëshe janë sa tubi) kanë amplitudë thuajse zero në qendër. Figura 6.2 tregon të njëjtin tub

me skaje të mbyllur, por tani pika e observimit është në një të tetën larg nga skaji i tubit. Aty

Page 220: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

218

tregohen të gjithë rezonancat që ndodhin deri në 5000 Hz. Figura 6.3 tregon rezonancat në

tubin me njerin skaj të hapur dhe njerin skaj të mbyllur; pika e vrojtimit është në skajin e

hapur. Sa më perfekte bëhën pasqyrimet aq më të mprehta e më të mëdha bëhen rezonancat.

Përgjigje rezonative observohen edhe tej frekuencave rezonative. Një madhësi që karakterizon

cilësinë ose mprehtësinë e rezonancës është Q=(frekuenca rezonative)/(gjërësia e rezonancës

në ghysëm-lartësinë e amplitudës). Sa më perfekt të jetë pasqyrërimi në skaje aq më e lartë

është Q .

Figura 6.4 tregon rezonancat në një tub me dy skaje të hapura. Rezonanca për frekuencën

zero është pa kuptim fizik; ajo quhet zgjidhje triviale. Kjo zgjidhje triviale mund të gjëndet

edhe duke zgjidhur analitikisht ekuacionin diferencial përkatës.

Kjo metodë kompjuterike për valët e qëndrueshme është e përgjithëshme. Ju mund të futni

humbjet e valëve në mjedis ose pasqyrime me fazë komplekse në skaje. Metoda është

gjithashtu lehtësisht e kuptueshme fizikisht.

6.3 Parimi i Hygensit

Sipas Hygensit valët mund të trajtohen thjesht në mënyrë gjeometrike. Parimi i Hygensit thotë

se gjithë pikat mbi një front valor mund të konsiderohen si burime pikësore që prodhojnë valë

sekondare. Pas një kohe t , pozicioni i frontit valor do të jetë sipërfaqja tangente

(mbështjellëse) me këto valë sekondare. Ky parim përdoret shumë në optikë. Në optikën

gjeometrike, nxjerja e ligjit të thyerjes, duke përdorur parimin e Hygensit, ilustron faktin që

shpejtësia e dritës në një mjedis është më e vogël se ajo në vakum dhe motivon përcaktimin e

treguesit të thyerjes si n=c/v. Në optikën fizike, parimi i Hygensit jep një metodë llogaritjeje

për rastet e pengesave në rrugën e valëve. Metoda e valëve sekondare mund të programohet

lehtë. Një program i tillë do të llogariste konturet e amplitudës konstante të valëve në një çast

kohe. Rezultati do të ishte një tablo e valëve në këtë çast (figura 6.5). Vijat e maksimumit të

intensitetit çfaqen si drejtime në të cilat valët prej burimeve sekondarë të ndryshëm lëvizin në

fazë të njëjtë. Duke parë një ose dy tablo të tilla, ju mund të plotoni vetë me kompas e vizore.

Figura 6.5 Ndërtimi i tablosë

së interferencës sipas paeimit të

Hygensit. Janë paraqitur vetëm

valët që ecin në njërën anë.

Gjatësia e valës është sa gjysma

e largësisë midis burimeve,

kështu që maksimumi në këndet

0,300 , 90

0 me drejtimin

përpara. Drejtimet në të cilat

frontet valore janë

bashkëtangent janë drejtimet e

maksimumeve të intensitetit.

Vini re që gjërësia këndore e

maksimumit reth 900 eshtë më

e madhe se ajo e maksimumeve

rreth drejtimeve të tjera.

Page 221: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

219

Shpesh , interferenca (ose difraksioni) vizualizohet nëpërmjet tablosë së intensitetit në një

ekran të vendosur në fushën valore ose në përgjithësi me anë të plotimi polar të intensitetit, ku

si origjinë polare merret pozicioni i burimit. Ne do të shohim se mund të prodhohen me anë të

kompjuterit tablotë e intensitetit për një shpërndarje çfardo shpërndarje burimesh të valëve.

Më poshtë do të japim disa formula bazë që do të përdoren:

1. Koeficienti i pasqyrimit=Amplituda e valës së pasqyruar/Amplituda e valës rënëse

Koeficienti i depërtimit=Amplituda e vlës së depërtuar/Amplituda e valës rënëse

2. Pasqyrimi në skaje të mbyllur fut një ndryshim faze 1800

Pasqyrimi në skaje të hapur nuk fut ndryshim faze

3. Interferenca nga çarje të dyfishta (Eksperimenti i Jungut):

I()=4I0 cos2 , ku =d sin /

Maksimumet në d sin = m , m=0,1,2,3.. (Interferencë konstruktibve)

Minimumet në d sin = (m+½) (Interferencë destruktive) ; d=ndarja e çarjeve

4. Diferenca e fazave midis dy valëve = 2

(| | | |)r r2 1, ku r1,r2 janë largësitë nga dy burimet

koherentë të valëve .

5. Difraksioni nga një çarje: I() = Imax sin

2

, ku

a sin dhe a = gjerësia e

çarjes.

6. Difraksioni nga N çarje : I() = N IN2

0

2

2

2

2

sin sin

sin

, ku , janë si më lart dhe N

është numri i çarjeve identike të barazlarguara nga njera tjetra.

Në programin NSLIT, kompjuteri llogarit zgjidhjet për problemin e difraksionit nga N çarje.

Programi IVANG llogarit tablonë e intensitetit si funksion i këndit rreth një shpërndarje të

përgjithëshme të burimeve valorë. Programi THNFLM llogarit efektet e interferencës nga një

shtresë e hollë dielektrike (shtresë vaji ose qelqi).

Për programet AMPLI, INTEN dhe IVSANG burimet e valëve mund të vendosen kudo në

planin xy. Programi AMPLI llogarit amplitudat e valëve prej çdo burimi që arrin një pikë të

caktuar dhe pastaj printon amplitudën totale. Programi INTEN llogarit intensitetin e

mesatarizuar sipas fazave në një pikë të caktuar observimi. Programi IVSANG printon

intensitetet në një numër pikash mbi një rreth të madh. Pasi llogarit shumën e amplitudave të

valëve për një numër të ndryshëm kohësh (ose fazash), programi printon katrorët e

amplitudave. rezultati është intensiteti (prej gjithë burimeve) në çdo pikë të rrehit (intensiteti

si funksion i këndit).

Programi NSLIT.BAS Difraksioni nga N çarje(I() e normalizuar te 1)

100 L0=1

110 X0=.005

120 PRINT“DISTANCACAR-EKRAN=“;L0;”m.;GJERESIAEEKRANIT=“;1E3*X0;”mm.”

130 PRINT

140 PRINT “# i CARJEVE (ZERO PER TE MBARUAR)”;

150 INPUT N

160 IF N=0 THEN 500

170 PRINT “GJERESIA E CARJES(NE mm)”;

180 INPUT A

Page 222: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

220

190 A=A*1E-3

200 IF N=1 THEN 240

210 PRINT “DISTANCA MIDIS CARJEVE (NE mm)”;

220 INPUT H

230 H=H*1E-3

240 PRINT “GJATESIA E VALES (ANGSTROM)”;

250 INPUT L

260 L=L*1E-10

270 PRINT “POZICIONI”,”INTENSITETI”

280 X5=X0/(32*N) Intervali për hapin nëpër ekran

290 FOR X1=-X0/2 TO X0/2 STEP X5 hapi nëpër ekran

300 S=X1/L0 sin() për të vegjël

310 IF S >< 0 THEN 350320 Y1= 1330 PRINT X1,Y1340 GOTO 470

Qendra e tablosë

350 A1=3.14159*A*S/L gjerësia sin()/

360 IF N>1 THEN 400

370 S5 = SIN(A1)380 S4 = 1385 S6 = 1390 GOTO 450

Kur kemi vetëm një çarje

400 D=3.14159*H*S/L ndërçarja sin()/

410 S4=SIN(D) sin()

420 IF S4=0 THEN 320

430 S5=SIN(A1) sin()

440 S6=SIN(N*D) sin(N)

450 Y1=S5*S5*S6*S6/(A1*A1*N*N*S4*S4) formula e N çarjeve

460 PRINT X1,Y1

470 NEXT X1

480 PRINT

490 GOTO 140 rikthim për një gjeometri tjetër

500 END

Programi NSLIT.FOR Difraksioni nga N çarje (I i normalizuar te 1)

TOSCRN=1. Distanca deri te ekrani

XWIDTH=.001 gjerësia e ekranit

10 READ(5,100)SLTNUM,SLTWID,SLTSEP,WAVEL

IF (SCTNUM.EQ.0.) GOTO 40

WAVEL=1.E-10*WAVEL gjatësia e valës

DO 20 i=1,21,1 hapi nëpër ekran

AI=I-1

X=-XWIDTH/2.+AI*XWIDTH/20.

SINT=X/TOSCRN sin() për të vegjël

ALPHA=3.14159*SLTWID*SINT/WAVEL gjerësia sin()/

SINALP=SIN(ALPHA)

BETA=3.14159*SLTSEP*SINT/WAVEL ndërçarja sin()/

SINBET=SIN(BETA)

Page 223: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

221

IF (SINBET.NE.0.) GOTO 30Y = 1.GOTO 20

qendra e tablosë

30 SINNBE=SIN(SLTNUM*SLTSEP) sin(N)

Y=SINALP**2*SINBE**2/(ALPHA**2*SLTNUM**2*SINBET**2) formula e

N çarjeve

20 PRINT 101,X,Y

GOTO 10 rikthim për një gjeometri tjetër

100 FORMAT(4F5.4)

101 FORMAT(1X,2E15.5)

40 STOP

END

Programi AMPLI.BAS Amplituda prej burimeve valorë në 2D

100 DIM X(10),Y(10),A(10),P(10)

110 PRINT NUMRI i BURIMEVE,GJATESITE E VALEVE;120 INPUT N, L130 PRINT PER SECILIN BURIM:140 PRINT KORDINATAT(X,Y),AMPLITUDA, FAZA(GRADE)150 FOR i = 1 TO N160 INPUT X(I),Y(I),A(I), P(I)170 P(I) = 4.14159 *P(I) / 180180 NEXT i

Gjeometria e burimeve

190 PRINT “KORDINATAT E PIKES OBSERVUESE?”;

200 INPUT X0,Y0

210 PRINT “AMPLITUDA GJATE NJE CIKLI”

220 FOR P0=0 TO 6.28318-3.14159/8 STEP 3.14158/8 Hapi sipas fazës

230 A1=0

240 FOR i=1 TO N shumimi për gjithë burimet

250 X1= X0- X(I)260 Y1= Y0- Y(I)270 R = SQR(X1*X1+ Y1*Y1)

Distanca nga çdo burim te pika e observimit

280 A1=A1+A(I)*SIN(6.28318*R/L+P(I)+P0) shumimi i amplitudave

290 NEXT i

300 PRINT A1

310 NEXT P0

320 GOTO 190 rikthim për pikën tjetër të observimit

330 END

Programi AMPLI.FOR Amplituda prej disa burimesh në 2D

DIMENSION X(10),Y(10),A(10),P(10)

DATA N,AL / 4,1./ DATA Y(1),Y(2),Y(3),Y(4) / 4*0./ DATA X(1),X(2),X(3),X(3) / -1.5,-.5,.5,1.5 / DATA A(1),A(2),A(3),A(4) / 4*1./ DATA P(1),P(2), P(3),P(4) / 4*0./

gjeometria e burimeve

5 READ(5,100)XOBS,YOBS pika e observimit

IF (XOBS-999.) 7,30,7

7 DO J=1,16 hapi nëpër fazë 2

Page 224: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

222

PHASE=(J-1)*3.14159/8.

AMPL=0.

DO 10 I=1,N shumimi për gjithë burimeve

DX = XOBS- X(I) DY = YOBS-Y(I) R = SQRT(DX*DX + DY*DY)

Distanca nga çdo burim te pika obsevuese

10 AMPL=AMPL+A(I)*SIN(6.28318*R/AL+P(I)+PHASE) shumimi i amplitudave

20 PRINT 101,AMPL

GOTO 5

30 STOP

100 FORMAT(2F10.4)

101 FORMAT(1X,F10.4)

END

Programi INTEN.BAS Intensiteti prej disa burimeve valorë

100 DIM X(10),Y(10),A(10),P(10)

110 PRINT NUMRI I BURIMEVE, GJATESIA E VALES;120 INPUT N, L130 N9 = 0140 PRINT PER CDO BURIM:150 PRINT KORDINATAT (X,Y),AMLITUDA, FAZA(GRADE)160 FOR I = 1 TO N170 INPUT X(I),Y(I),A(I), P(I)180 P(I) = 3.14159 * P(I) / 180190 N9 = N9 + A(I)200 NEXT I

gjeometria e burimeve

210 N9=N9*N9 konstantja e normalizimit

220 PRINT “KORDINATAT E PIKES OBSERVUESE”;

230 INPUTX0,Y0

240 I0=0

250 FOR P0=0 TO 6.28318-3.14159/8 STEP 3.14159/8 shumimi gjatë një cikli

260 A1=0

270 FOR I=1 TO N shumimi sipas burimeve

280 X1= X0 - X(1)290 Y1= Y0 - Y(1)300 R = SQR(X1* X1 + Y1* Y1)

distanca nga secili burim te pika eobservimit

310 A1=A1+A(I)*SIN(6.28318*R/L+P(I)+P0) shuma e amplitudave

320 NEXT I

330 I0=I0+A1*A1 intensiteti

340 NEXT P0

350 PRINT “INTENSITETI=“;I0/(8*N9)

360 GOTO 220

370 END

Programi INTEN.FOR Intensiteti prej disa burimeve

DIMENSION XSOURC(10),YSOURC(10),AMPL(10),PHASE(10)

Page 225: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

223

READ(5,100)NSOURC, WAVEL AMPNOR = 0. DO 20 I = 1, NSOURC,1 READ(5,101)XSOURC(I), YSOURC(I), AMPL(I), PHASE(I) PHASE(I) = 3.1415 * PHASE(I) / 180. 10 AMPNOR = AMPNOR + AMPL(I)

gjeometria e burim.

AMPNOR=AMPNOR**2 konstantja e normalizimit

20 READ(5,102)XOBS,Y(OBS) pika e observimit

IF (XOBS.EQ.9999.) GOT 50

AINTEN=0.

DO 40 IP=1,16,1 shumimi sipas një cikli

AIP=1P-1

AVPHAS=AIP*3.14159/8.

AVAMP=0.

DO 30 IN=1,NSOURC,1 shimimi për gjithë burimet

X = XOBS - XSORC(IN) Y = YOBS - YSOURC(IN) R = SQRT(X **2 + Y **2)

distanca nga secili burim te pika observuese

30 AVAMP=AVAMP+AMPL(IN)*SIN(6.28318*R/WAVEL+PHASE(IN)+AVPHAS)

shumimi i amplitudave

40 AINTEN=AINTEN+AVAMP**2/(8.*AMPNOR) intensiteti

GOTO 20

100 FORMAT(I5,F5.2)

101 FORMAT(4F5.2)

102 FORMAT(2F5.2)

103 FORMAT(1X,3E15.5)

50 STOP

END

Programi IVSANG.BAS Intensiteti si funksion i këndit për disa burime(2D)

100 DIM I(200),S(361),X(10),Y(10),A(10),P(10)

110 FOR I = 1 TO 361120 T0 = (I - 1) * 6.28318 / 360130 S(I) = SIN(T0)140 NEXT I

sinuset e këndeve që do përdoren

150 PRINT SA BURIME , ÇFARE GJATESIE VALE;160 INPUT N9, L0170 N8 = N9 * N9180 PRINT (X,Y), AMPL. DHE FAZA(GRADE) PER ÇDO BURIM:190 FOR I = 1 TO N9200 PRINT BURIMI; I;210 INPUT X(I),Y(I), A(I), P(I)220 P(I) = 3.14159 * P / 180230 NEXT I

gjeometria e burim.

240 PRINT “SA PIKA OBSERVUESE NE RRETH”;

250 INPUT N7

260 J0=0

270 R0=10 rrezja e rrethit të observimit

280 FOR P0=0 TO 6.18318 STEP 6.28318/N7 hapi nëpër rreth

290 J0=J0+1

Page 226: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

224

300 X0 = R0 * COS(P0)310 Y0 = R0 *SIN(P0)

kordinatat e pikave në rreth

320 N5=8

330 FOR P5=0 TO 6.28318-3.14159/N5 STEP 3.14159/N5 mesatarizimi sipas fazës

340 I9=0

350 FOR I=1 TO N9 shumimi sipas burimeve

360 X1= X0 - X(I)370 Y1= Y0 - Y(I)380 R1= SQR(X1* X1+ Y1* Y1)

distanca nga çdo burim te pika e rrethit

390 P4 = 2 * 3.14159 * R1/ L0 + P(I)400 P = P4 + P5

faza e çdo vale në rreth

410 P = P - INT(P / (2 * 3.14159)) * (2 * 3.14159)420 J1= INT(P / 3.14159 / 180)

zgjedh sinusin përkatës

430 I9=I9+A(I)*S(J1) shumimi i amplitudave

440 NEXT I

450 I(J0)=I(J0)+I9*I9/N8 mesatarizimi i intensiteteve

460 NEXT P5

470 NEXT P0

480 PRINT PIKA, KENDI, INTENSITETI490 FOR J = 1 TO J0500 I9 = I(J)510 I9 = I9 / N5520 PRINT J, (J - 1) * (6.28318 / N7) *180 / 3.14159, I9530 NEXT J

grupi i printimit

540 PRINT

550 GOTO 150 rikthimi për burim tjetër

560 END

Programi IVSANG.FOR Intensiteti në varësi të këndit për disa burime(2D)

DIMENSION AIN(200),S(361),X(10),Y(10),AMP(10),PHASE(10)

DO 10 I = 1,361 T0 = (I - 1) * 6.28318 / 360. 10 S(I) = SIN(T0)

ruhen sinuset që do përdoren

DATA NSOUR, AL0 / 2,1./ ANCIR = NSOUR * NSOUR DATA X(1), Y(1), AMP(1), PHASE(1)/.5,0. ,1. ,0./ DATA X(2), Y(2), AMP(2), PHASE(2) / -.5,0. ,1. ,0./

numri i burimeve,gjatwsia e valws

gjeometria e burim.

DATA NCIRC/16/ numri i pikave në rreth

ANCIRC=NCIRC

R0=10. rrezja e rrethit të observimit

DO 80 J0=1,NCIRC+1 hapi nëpër rreth

ANGC=(J0-1)*6.28318/ANCIRC

X0 = R0 * COS(ANGC) Y0 = R0 *SIN(ANGC)

kordinatat e çdo pike në rreth

NAV=16

ANAV=NAV

DO 80 IP=1,NAV mesatarizimi në fazë

Page 227: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

225

PHAAV=(IP-1)*6.28318/ANAV

AMPLI=0.

DO 70 I=1,NSOUR shumimi sipas burimeve

XOBS = X0 - X(I) YOBS = Y0 - Y(I) ROBS = SQRT(XOBS **2 + YOBS **2)

distanca nga çdo burim te pika e rrethit

PHA = 6.28318 * ROBS / AL0 + PHASE(I) REPHA = PHA + PHAAV

faza e seicilës valë në rreth

REPHA=REPHA-AINT(REPHA/6.28318))*6.28318 zgjedh sinusin përkatës

J1=1+AINT(REPHA/(3.14159/180.))

70 AMPLI=AMPLI+AMP(I)*S(J1) shumimi sipas amplitudave

80 AIN(J0)=AIN(J0)+AMPLI*AMPLI/ANCIR mesatarizimi i intensitetit

DO 85 J = 1, NCIRC + 1 AI = 2.*AIN(J) / ANAV ANG = (J - 1) * (6.28318 / ANCIRC) *180./3.14159 85 PRINT 100, J, ANG, AI

grupi i printimit

STOP

100 FORMAT(1X,2F10.4)

END

Figura 6.6 tregon intensitetin në kënde të ndryshëm për rastin e dy burimeve të figurës 6.5

(eksperimenti me dy çarjet e Jungut). Kjo ilustron përdorimin e programit IVSANG.

Maksimumet më të gjerë janë për drejtimet 900

(interferencë konstruktive). Të tjerët janë në

drejtimet 0 dhe 300 me drejtimet para e mbrapa.

Figura 6.6 Plotimi polar i intensitetit në varësi të këndit për

gjeometrinë e figurës 6.5 . Diagrama tregon tablonë për gjithë

3600. Vini re që lobet e gjera në drejtimet anash dhe që

pozicionet këndore të lobeve përputhen me maksimumet e

figurës 6.5. Në program mund të vendosen burimet kudo në

plan me amplituda e faza të çfardoshme dhe mandej llogariten

intensitetet në një rreth të madh që i rrethon gjithë burimet.

Një problem që mund të trajtohet duke përdorur programin

IVSANG ka të bëjë me skemat e antenave. Në radiostacionet transmetuese disa antenat

identike vendosen të baraslarguara , plani i formuar nga antenat mbulon me sinjale një rajon

urban përballë këtij plani. Shumë nga këto skema janë si skema baterish. Duke përdorur

tablonë e interferencës prej disa burimeve , skemat bateri mund ti drejtojnë shumicën e

sinjaleve në një drejtim. Rajoni që ndodhet në këtë drejtim kap më mirë sinjalet. Ju mund ti

llogaritni efektet e interferencës prej një skeme baterie duke përdorur programin IVSANG në

të cilin mund të provoni skema të ndryshme antenash (burime pikësore në një plan) .

6.4 Interferenca në pllakat(filma, cipa, shtresa) e holla

Një aplikim tjeter në kompjuter është fenomeni i interferencës në pllakat e holla. Thelbi i

fenomenit kuptohet lehtë. Një valë bie nën një kënd mbi një pllakë plan-paralele trashësia e

së cilës është e rendit të gjatësisë së valës. Vala pjesërisht pasqyrohet dhe pjesërisht thyhet

duke kaluar në mjedisin e dytë. Nga kjo pjesë në mjedisin e dytë , një pjesë pasqyrohet në

Page 228: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

226

faqen tjetër të pllakës dhe pjesa tjetër del jashtë pllakës në mjedisin e tretë. Procesi përsëritet

(në parim një infinitet herësh) dhe çdo valë ndryshon në amplitudë e fazë nga valët fqinje. Kur

valët mblidhen së bashku (p.sh. nga një lente) ato interferojnë . Nga interferenca konstruktive

ose destruktive ndodhin maksimumet dhe minimumet që varen nga gjatësia e valës ,

trashësia e pllakës d dhe kendi i rënies .

Duke e parqitur valën me vija pingul me frontet valorë, fenomeni mund të paraqitet

skematikisht si në figurën 6.7. Shënojmë R1 raportin e amlitudës së valës së pasqyruar me

amplitudën e valës rënëse (koeficienti i pasqyrimit) në kufirin n1n2 dhe T1 raportin përkatës

të transmetimit (koeficienti i transmetimit) . Shënojmë R2 dhe T2 raportet përkatës në kufirin

n2n1 . Supozojmë se treguesi i thyerjes në mjedisine e tretë n3 është i njëjtë me atë të

mjedisit të parë n1 . Atëhere për valën e i-të në anën e sipërme të pllakës është :

A(I)=A T1 (R2)2i-- 1

T2 me A(0)= A R1 , ku A është amplituda e valëve rënëse. Për

valën e i-të që kalon përtej pllakës kemi : A(I)=A T1 (R2)2(i-- 1)

T2 , A(0)=0 .

Interferenca varet gjithashtu nga diferenca e fazave midis valëve kur ato dalin nga pllaka. Një

lente i mbledh së bashku valët paralele që vijnë prej pikave të tilla si A dhe B në figurë.

Ndërkohë rrezja e i-të ka arritur pikën B , ajo ka kaluar rrugën optike me gjatësi 2n2 d i/cos2

(Rruga optike është produkti i rrugës gjeometrike me treguesin e thyerjes). Në të njëjtin front

vale pika në valën e parë (pika C në figurë) ka kaluar rrugën optike me gjatësi 2n1 d i sin1

tg1 . Diferenca e fazave midis këtyre valëve është : 2(diferenca e rrugëve optike)/ .

Kompjuteri llogarit këto amplituda dhe diferenca fazësh dhe i shton në valën rezultante.

Programi THNFLM bën edhe mesatarizimin gjatë një cikli të valës rënëse në mënyrë që të

sigurohemi që amplituda zero nuk është për një vlerë të vecantë të valës rënëse.

Figura 6.7 Gjeometria e pasqyrimeve dhe transmetimeve të shumëfishta në një pllakë të

hollë me tregues thyerjeje n2

Programi THNFLM.BAS Intereferenca në pllakat e holla

100 DIM A(500),D(500)

Page 229: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

227

110 PRINT “GJATESIA E VALES, TRASHESIA E PLLAKES”;

120 INPUT L,D

130 PRINT “KENDI”,”INTENSITETI”

140 N1=1 teguesi i thyerjes (jashtë plakës)

150 N2=2 teguesi i thyerjes (brenda plakës)

160 A=1 amplituda e burimit

170 FOR P9=0 TO 3.14159/2 STEP 3.14159/36 hapi sipas këndeve të rënies

180 i0=0

190 C1=COS(P9)

200 S1=SIN(P9)

210 S2=N1*S1/N2 ligji i thyerjes

220 C2=SQR(1-S2*S2)

230 R1= (N1*C2 - N2*C1) / (N1*C2 + N2*C1)240 T1= 1+ R1250 R2 = -R1260 T2 = 1+ R2

koeficientët e pasqyrimit dhe transmet.

270 I9=INT(-3*2.30259/LOG(ABS(R2))+1)

280 IF i9>500 THEN 110

290 A(0)=A*R1

300 D(0)=0

310 FOR i=1 TO i9 ruhen pasqyrimet

320 D(I)=2*N2*D*I/C2-2*N1*D*S1*I*S2/C2

330 D(I)=2*3.14159*D(I)/L faza

340 A(I)=A*T1*R2^(2*I-1)*T2 amplituda

350 NEXT i

360 FOR i=1 TO 16 mesatarizimi sipas fazës(gjatë një cikli)

370 P0=(J-1)*3.14159/8

380 A1=0

390 FOR i=0 TO i9 shumimi i pasqyrimeve

400 A1=A1+A(I)*SIN(P0+D(I)) shumimi i amplitudave

410 NEXT i

420 I0=I0+A1*A1 intensiteti

430 NEXT J

440 PRINT 180*P9/3.14159,I0/16

450 NEXT P9

460 GOTO 110 rikthim për një gjeometri të re

470 END

Programi THNFLM.FOR Intereferenca në pllakat e holla

DIMENSION A(500),D(500)

10 READ(5,100)ALAM,D , trashësia

IF (ALAM-999.) 20,60,20

20 AN1=1. treguesi i thyerjes(jashtë pllakës)

AN2=2. treguesi i thyerjes(brenda pllakës)

A=1. amplituda e burimit

DO 50 K=1,19 hapi sipas këndeve

ANG=(K-1)*4.14159/36.

AIO=0.

Page 230: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

228

CI=COS(ANG)

SI=SIN(ANG)

S2=AN1*S1/AN2 ligji i thyerjes

C2=SQRT(1-S2*S2)

R1= (AN1* C2 - AN2 * C1) / (AN1* C2 + AN2 * C1) T1= 1.+R1 R2 = -R1 T2 = 1+ R2

koeficientet e pasq. e trans.

I9=IFIX(-3.*2.30259/ALOG(R2))+2)

IF (I9-500) 20,20,10

20 A(1)=A*R1

D(1)=0.

DO 30 I=2,I9 ruhen fazat dhe amplitudat e pasqyrimeve

D(I)=2.*AN2*D*I/C2-2.*AN1*S1*I*S2/C2

D(I)=2.*3.14159265*D(I)/ALAM

30 A(I)=A*T1*R2**(2*I-1)*T2

DO 45 J=1,16 mestatarizimi sipas fazës

A1=0.

DO 40 i=1,I9

40 A1=A1+A(I)*SIN(P0+D(I)) amplituda

45 AI0=AI0+A1*A1 intensiteti

AI0=AI0/16.

DANG=180.*ANG/3.14159265

50 PRINT 101,DANG,AI0

GOTO 10

60 STOP

100 FORMAT(2F10.4)

101 FORMAT(1X,2F10.4

END

Figura 6.8 tregon tablonë e intensitetit si funksion i këndit të rënies për /d=0.05, n1=1 dhe

n2=2. Koeficientët e pasqyrimit dhe transmetimit supozohen konstantë : R1=-0.25 (shenja -

tregon që vala e pasqyruar pëson ndryshim faze me 1800), T1=1+R1 , R2=- R1, T2=1+R2. Breza

të errët e të ndritshëm vrojtohen në tufën e pasqyruar dhe në tufën e depërtuar. Intensiteti

maksimal është 0.5 e intensitetit të normalizuar ; tufa e paqyruar ka intensitet zero për =0,

kurse intensiteti i tufës së transmetuar ka maksimum sepse trashësia e pllakës është 80 herë

gjatësinë e valës. Valët e depërtuara janë në fazë me valët rënëse ndërsa valët e pasqyruara

janë në kundërfazë. Figura 6.9 tregon të njëjtën varësi për /d=0.05, n1=1 , n2=2 , por R1=-

0.5. Përsëri vrojtohen brezat e errët e të ndritshëm, por brezat e errët janë më të thellë e më të

mprehtë. Këto figura janë në përgjithësi korrekte, por ndonjë rezultat muk ka kuptim fizik.

P.sh. sasia e valëve të transmetuara nëpër pllakë duhet të shkojë në zero për këndin 900 , me

që vala bie paralel me pllakën. Më tej , për pllaka reale duhet të vrojtohet efekti i këndit të

Brusterit për dritën e polarizuar dhe koeficienti i pasqyrimit R2 duhet të japë pasqyrim të plotë

të brëndëshëm për kënde të mëdhenj 2. Këto efekte mund të çfaqen duke përdorur koeficientë

korrektë të pasqyrimit dhe transmetimit. Këto koeficientë korrektë (nganjëherë quhen

koeficientët e Fresnelit) nxirren nga ekuacionet e Maksuellit dhe kushtet kufitare për vektorët

E dhe B të valës elektromagnetike në kufirin ndarës. Nga këto del që koeficientët janë të

ndryshëm për dritën me vektor E në planin e rënies (E||) nga drita me vektor E pingul me

planin e rënies(E). Për E|| ,T1=1+R1 , R2=-R1 dhe T2=1+R2 . Për E , T1=(cos1)(1+R1)/cos2 ,

Page 231: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

229

R2=-R1 , dhe T2=(cos2)(1+R2)/cos1 . Pra ka dy koeficientë të ndryshëm pasqyrimi për dy

polarizimet:

Për E : Rn n

n n1

1 1 2 2

1 1 2 2

cos cos

cos cos

; Për E|| : R

n n

n n1

1 2 2 1

1 1 2 2

cos cos

cos cos

Figura 6.10 tregon tregon koeficientët e pasqyrimit dhe transmetimit në kufirin midis n1=1 dhe

n2=2. Koeficienti i transmetimit T shkon në zero kor arrin 900 për të dy polarizimet. Këndi i

Brusterit i shënuar me B është rreth 63.50 për E||. Figura 6.11 tregon koeficientët e pasqyrimit

dhe transmetimit për n1=2 dhe n2=1. Këndi i Brusterit është 26.60 dhe pasqyrimi i plotë i

brëndëshëm ndodh për kënde më të mëdhenj se 300 (sin=0.5). Këto figura janë plotuar me

anën e programit REFCOE.

Figura 6.10 Koeficientët e pasqyrimit (R )

dhe të transmetimit ( T ) për E në planin e

rënies ( E}} ) dhe për E pingul me planin e

rënies ( E ). Vala shkon nga rajoni n=1 në

rajonin n=2. Këndi i Brusterit është afro 63.50.

Figura 6.11 Koeficientët e pasqyrimit (R ) dhe

të transmetimit ( T ) për E në planin e rënies (

E}} ) dhe për E pingul me planin e rënies ( E )

në varësi të këndit. Vala shkon nga rajoni n=2 në

rajonin n=1. Këndi i Brusterit është afro 26.60

dhe pasqyrimi i plotë i brëndëshëm ndodh për

kënde më të mëdhenj se 300 (sin =0.5).

Programi REFCOE.BAS Koeficientët e Fresnelit

100 PRINT “N1,N2(>N1),THETA(GRADE)”;

110 INPUT N1,N2,T0

120 T0=3.14159*T0/180

130 S1=SIN(T0)

140 C1=COS(T0)

150 S2=N1*S1/N2

160 C2=SQR(1-S2*S2) ligji i thyerjes, sinusi i këndit në mjedisin e dytë

Page 232: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

230

170 PRINT “KENDI NE MJEDISIN E DYTE=“;180*ATN(S2/C2)/3.14159

180 R1= (N1*C2 - N2*C1) / (N1*C2 + N2*C1) p pasqyrimi 190 S1= (N1*C1- N2*C2) / (N1*C1+ N2*C2) s pasqyrimi200 T1= C1*(1+ R1) / C2 p transmetimi 210 U1= 1+ S1 s transmetimi

nga mjedisi 1 në mjed. 2

220 PRINT “PER 1 2 : RP,RS,TP,TS”

230 PRINT R1,S1,T1,U1

240 R2=-R1 p pasqyrimi për kalimin nga mjedisi 2 në mjedisin 1

250 S2=-S1 s pasqyrimi për kalimin nga mjedisi 2 në mjedisin 1

260 T2=C2*(1+R2)/C1 p transmetimi për kalimin nga mjedisi 2 në mjedisin 1

270 U2=1+S2 s tansmetimi për kalimin nga mjedisi 2 në mjedisin 1

280 PRINT “PER 2 1 : RP,RS,TP,TS”

290 PRINT R2,S2,T2,U2

300 PRINT

310 GOTO 100 rikthim për një gjeometri tjetër

320 END

Programi REFCOE.FOR Koeficientët e Fresnelit

5 READ(5,100)AN1,AN2,THETA

IF (AN1-999.) 10,20,20

10 THETA=3.14159*THETA/180.

SN1=SIN(THETA)

CS1=COS(THETA)

SN2=AN1*S1/AN2 ligji i thyerjes, sinusi në mjedisin e dytë

CS2=SQRT(1-SN2*SN2) kosinusi në mjedisin e dytë

RP1=(AN1*CS2-AN2*CS1)/(AN1*CS2+AN2*CS1) p pasqyrimi për 12

RS1=(AN1*CS1-AN2*CS2)/(AN1*CS1+AN2*CS2) s pasyrimi për 12

TP1=CS1*(1.+RS1)/CS2 p transmetimi për 12

TS1=1.+SN1 s transmetimi për 12

PRINT 101,RP1,RS1,TP1,TS1

RP2=-RP1 p pasqyrimi për 21

RS2=-RS1 s pasqyrimi për 21

TP2=CS2*(1.+RP2)/CS1 p transmetimi për 21

TS2=1.+SN2 s transmetimi për 21

PRINT 101,RP2,RS2,TP2,TS2

GOTO 5 rikthim për gjeometri tjetër

20 STOP

100 FORMAT(3F10.4)

101 FORMAT(1X,4F10.4)

END

Nëse përdoren këto koeficientë në programin THFLM ne arrimë në rezultate të mira fizike.

Figura 6.12 tregon koeficientët e transmetimit T dhe pasqyrimi R në funksion të këndit të

rënies për /d=0.05, n1=1, n2=2 dhe E . Vala e transmetuar shkon në zero për këndin e

rënies 900 . Figura 6.13 tregon të njëjtën gjë për /d=0.05, n1=1, n2=2 dhe E|| . Këtu duken

efektet e këndit të Brusterit B. figura 6.14 tregon të njëjtën gjë si figura 6.12 por tani gjatësia e

Page 233: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

231

valës është e tillë që trashësia e pllakës është 80½ gjatësi valësh. Pasqyrimi qëndror është i

“ndritshëm” dhe transmetimi qëndror është i “errët”.

Të gjitha këto llogaritje janë të vështira për tu kryer analitikisht, prandaj kompjuteri është i

leverdisëshëm sepse valët mblidhen ndërkohë që ruhen vlerat e amplitudave dhe fazave të

valëve që ecin.

Problema

1. Shkruani një program që llogarit tablonë e intensiteteve prej N burimeve . Trgoni që me

rritjen e N (për burime të barazlarguar), mprehtësia e vijave të ndrtitëshme rritet dhe vija

më pak të ndritëshme çfaqen. Tregoni që numri më i madh i brezave brënda

maksimumit të parë të difraksionit nga një çarje varet nga raporti i distancës midis

çarjeve me gjerësinë e çarjes. Provoni që tabloja varet nga gjatësia e valës.

2. Shkruani një program që mbledh valët nga një numër burimesh të vendosur kudo në

një plan. Llogaritni intensitetin në distanca të largëta. Kontolloni llogaritjet tuaja duke

plotuar tablonë e intensitetit në problemin e dy burimeve. Përdoreni programin për

demostrimin e skemës së antenave në formë baterie. Shikoni nëse mundni të ndërtoni

një skemë dy-dimensionale antenash që ka vetëm lobin në një drejtim para (skema e

mirë orientuar)

Page 234: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

233

KAPITULLI VII

MEKANIKA KUANTIKE

Hyrje

Në shkallë mikroskopike grimcat kanë sjellje të ngjashme me valët.Elektroni në atomin e

hidrogjenit do të rrezatonte energji dhe do binte në bërthamë nëse nuk do të sillej si një valë e

qëndrueshme rreth protonit. Neutronet që kalojnë nëpër një kristal të ngurtë sillen si valë gjatë

bashkëveprimit me kristalin.

Këto valë të grimcave (që quhen funksione valore ose valë të amplitudës së probabilitetit)

u binden ekuacionit valor që është ekuacioni i Shrödingerit. Ne nuk do shohim rastet e

përgjithëshme tre dimensionale ku hyn edhe koha, por do shqyrtojmë rastin më të thjeshtë

një-dimensional të ekuacionit të Shrödingerit. Ky ekuacion i korespondon ekuacioneve

diferenciale të valëve makanike. Nga studimi i këtij rasti të thjeshtë mund të përfytyrohen

shumë gjëra mbi sjelljen kuantike të grimcave.

Duke përdorur kompjuterin do studiojmë rastin e gropës potenciale katrore të fundme dhe

oshilatorin harmonik një dimensional si dhe probleme të tjera që kanë zgjidhje analitike.

Potencialin një-dimensional do ta marrim simetrik , pra V(-x)=V(x). Do diskutojmë edhe

potenciale simetrike tre-dimensionale për të treguar rrugën e zgjidhjes së problemit.

Programet llogaritin funksionet valore të pa normalizuara. Për të normalizuar një funksion

valor llogaritet integrali I= -+

||2 dx dhe pjestohet funksioni bvalor me I. Metoda tre-

dimensionale vlen për çdo potencial me simetri sferike [ V(r)=V(|r|)] , dhe mund të përdoret

për shumë raste. Në këtë kapitull do shqyrtohen kryesisht probleme të gjëndjeve stacionare

d.m.th gjetja e funksioneve vehtiake dhe vlerave vehtiake të ekuacionit të Shrödingerit. Do të

përmëndet edhe rasti i përhapjes së një pakete valore ku përdoret ekucioni stacionar i

Shrödingerit.

Formulat Bazë

1. Ekuacioni i Shrödingerit për gjëndjet stacionare një-dimensionale:

h2 2

22m

d

dxV x E

( )

Ky ekuacion do të thjeshtohet duke matur V dhe E në njësi atomike (h=m=e=1),pra ekuacioni

do sillet në:

d

dxV x E

2

22

[ ( ) ]

2. Për një funksion valor të normalizuar (pra, -+

||2 dx=1) katrori i funksioni valor |(x)|

2 ,

është densiteti i probabilitetit që grmica të ndodhet në pikën x .

3. Kushtet kufitare:

a) dhe d/dx duhet të jenë të vazhduara për çfardo V(x) të fundme.

b) 0 kur |x| [edhe kur |V(x)| ]për gjëndjet e fundme.

4. Në qoftë se V(-x)=V(x) (potencilai simetrik), atëhere është ose komplet tek [(-x)=-(x)

për çdo x] ose është komplet çift [(-x)=(x) për çdo x].

5. Për një gropë potenciale katërkëndëshe të pafundme [V(x)=0 ,për |x|<a , V(x)= për |x|>a] ,

gjendjet stacionare kanë serinë e vlerave të energjisë (vlerat vehtiake):

Page 235: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

234

Em

n

an

h2 2 2

22 4

ku n=1,2,3....

dhe funksioneve vehtiake :

n(x)= konstante sin(n x/2a) për n çift

n(x)= konstante cos(n x/2a) për n tek

ku konstantja normalizon funksionet valore. (Këto janë analoge me modet e qëndrueshme në

një shufër me gjatësi 2a)

6. Për oshilatorin harmonik një-dimensional nivelet energjetike janë:

En= (n-1/2)h për n=1,2,3,... ku = k/m dhe V(x)=k/2 x2

7. Në përgjithësi, funksioni valor oshilon (zakonisht jo sinusoidal) në zonat ku E>V(x) dhe

shkon drejt zeros në zonat ku E<V(x). Nëse V(x)=a konstante dhe E<V(x) atëhere funksioni

valor shkon drejt zeros sipas ~ e-ax

. Shumë potenciale i afrohen kësaj situate asimptotikisht

kur x bëhet shumë i madh.

8. Gjendja stacionare me energji më të ulët e ka energjinë më të madhe se minimumi i

energjisë potenciale.

7.1 Metoda për potencialin simetrik një-dimesional

Një metodë e lehtë për zgjidhjene e ekuacionit të Sredingerit një-dimesional stacionar për

një potencial simetrik është ajo që integron hap pas hapi sipas x duke filluar nga qëndra e

zonës. Meqë potenciali është simetrik, funksionet valore janë me çiftësi të përcaktuar. Nëse

funksioni valor është çift (duke vendosur x=0 në pikën e simetrisë të potencialit) (0)0 dhe

d/dx=‘ =0. Vlerën e (0) mund ta zgjidhni arbitrarisht dhe funksioni valor nuk do të jetë i

normalizuar. Përdorni ekuacionin e Shredingerit për të llogaritur një ‘ të ri dhe një të ri për

çdo hap x. Metoda është e ngjashme me integrimin e ekuacionit F=ma (shih kapitullin e

parë) dhe është quajtur si metoda e gjuajtjeve. Në algoritëm ndiqen hapat e mëposhtëme:

1. Zgjidhet një energi E dhe një vlerë e (0). Vendoset ‘(0).

2. Përdoret ekuacioni i Shredingerit për të llogaritur ‘’ në pikën ku jemi.

3. Gjenden vlera e re e ‘ si ‘vjetër + ‘’x dhe e re si vjetër + ‘x . (Duke përdorur

vlerën e ‘ në gjysëm-hapin është më mirë).

4. Ndryshohet variabli x në x+x ; kontrollohet nëse jemi larg për të përfunduar llogaritjet

(nëse nuk jemi larg rikthehemi tek pika 2.)

5. Shikohet funksioni për vlera të x larg. Nëse E e zgjedhur është një vlerë vehtiake atëhere

duhet të shkojë në zero përndryshe divergjon (rritet në x larg).

Gjendja bazë (n=1) dhe gjendjet me n tek (n=3,5,7..) janë zakonisht me simetri çift .

Ndërsa gjendjet me n çift (n=2,4,6..) janë zakonisht me simetri tek. Në gjendjet me simetri

tek mund të merret (0)=0 dhe të zgjidhet një vlerë arbitrare e ‘(0). Pastaj vazhdohet njësoj

si më lart.

Figurat tregojnë disa shembuj të metodave. Figura 7.1 tregon një potencial në formën e

gropës potenciale katërkëndëshe të fundme. Potenciali është simetrik . Figurat 7.2 e 7.3

tregojnë dy funksionet valore të para dhe vlerat përkatëse të energjisë. Gjendja bazë është me

simetri çifte. dhe gjendja e parë e eksituar është me simetri tek. Me që V0 >>E1 dhe E2 ,

gjendjet e e fillimit janë pothuaj njësoj si për gropën e pafundme. Por funksionet valore janë

zero matanë mureve të gropës potenciale të pafundme.

Page 236: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

235

Figura 7.1 Potenciali në formën e gropës

potenciale të fundme . Thellësia e

gropës është 100 dhe gjerësia 2.

Figura 7.2 Funksioni valor i gjendjes bazë

për potencialin e figurës 7.1.

Eshtë treguar gjysma e funksionit

simetrik. Energjia është matur në

njësi që h=m=e=1.

Figura 7.3 Funksioni valor i gjendjes së

parë të eksituar për potencialin

e figurës 7.1. Funksioni valor ka

simetrinë tek.

Logaritjet janë kryer me programin SCH. Të

gjitha problemet ku potenciali është simetrik një-dimesional mund të zgjidhen me këtë

program. Një version me konvergjencë më të lartë (duke përdorur metodën Runge-Kutta për

të rritur saktësinë) është SCH4TH.

Programi SCH.BAS

10 DEF FNV(x)=x*x*x*x Potenciali

110 PRINT “Fundi i intervalit,DELTA -X, Ciftesia (0 = çift; 1 = tek),Energjia”

120 INPUT X9, X7, P ,E

130 X0 = 0

140 X6 = X9/20 Hapi midis printimeve

150 IF P = 1 THEN 190

160 P0 = 1 Vlera fillestare e për çiftësi tek

170 P1 = 0 Vlera fillestare e ‘ për çiftësi tek

180 GO TO 210

190 P1= 1 Vlera fillestare e për çiftësi çift

200 P0 = 0 Vlera fillestare e ‘ për çiftësi çift

210 PRINT “X”, “P(X)”,”/P(X)/2”

V

x

V0=100

0 1.0-1.0

1

E=1.07

0 1.0 1.2

2 E=4.26

0 1.0 1.2

Page 237: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

236

220 P2 = 2*(FNV(X0+X7/2)-E)*(P0+P1*X7/2) Ekuacioni i Shredingerit

230 P0=P0+(P1+P2*X7/2)*X7 i ri

240 P1=P1+P2*X7 ‘ i ri

250 X0 = X0+X7 pozicioni i ri

260 IF X0<X6 THEN 290

270 X6=X6+X9/20

280 PRINT X0, P0,P0*P0

290 IF X0<X9 THEN 220 Rikthim për hapin pasonjës

300 PRINT

310 GOTO 110 Rikthim për vlera të tjera

320 END

Programi SCH.FOR

POTEN(X) =X*X*X

5 READ(5,101)ENDX,DX,PAR,E

IF (PAR-999.) 7,70,70

7 X=0.

XINT=ENDX/20.

IF (PAR-1.) 10,20,10

10 PSI0=1.

PSI1=0.

GOTO 30

20 PSI0=0.

PSI1=1.

30 PSI2=2.*(POTEN(X+DX/2.)-E)*(PSI0+PSI1*DX/2.)

PSI0=PSI0+(PSI1+PSI2*DX/2.)*DX

PSI1=PSI1+PSI2*DX

X=X+DX

IF (X-XINT) 50,40,40

40 XINT=XINT+ENDX/20.

PRINT 110,X,PSI0,PSI0*PSI0

50 IF (X-XEND) 30,60,60

GOTO 5

101 FORMAT(4F10.6)

110 FORMAT(1X,3E12.4)

120 FORMAT(1H)

70 STOP

END

12.4 Ekuacioni i Shredingerit për rastin tre-dimensional

Për gjendjet stacionare, ekuacioni i Shredingerit shkruhet:

h2 2

2

2

2

2

22m dx dy dzV E

( )r

Për shumë probleme, potenciali V(r) është i tillë që ekuacioni mund të ndahet në tre

ekuacione diferencilaë të zakonëshëm për secilin nga variablat (mund të ndahen variablat).

Shembulli më i thjeshtë është oshilatori harmonik tre-dimensional.Në këtë rast ekuacioni i

Page 238: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

237

Shredingerit sillet në tre ekuacione në x,y,z dhe secili ekuacion është identik me atë të

oshilatorit harmonik një-dimensional të studiuar më lart. Zgjidhja e plotë për oshilatorin tre

dimensional është produkti i funksioneve valore që janë zgjidhjet një-dimensionale : një sipas

x, një sipas y dhe një sipas z.

Kur potenciali ka simetri sferike, pra V(r)=V(|r|), ekuacioni i Shredingerit në kordinata

sferike ndahet në tre ekucione me derivate të zakonëshme sipas secilës nga kordinatat sferike

(r,,) . Ekuacionet sipas dhe zgjidhen menjëherë dhe problemi sillet në zgjidhjen e

ekuacionit radial:

1 2 12

2

2 2r

d

drr

dR

dr

mV E

l l

rR

h

[ (| |) ]( )

r

ku l=0,1,2... është numri që specifikon momentin e impulsit të grimcës ndaj qendrës së forcës.

Ky ekuacion mund të thjeshtohet me zëvëndësimin P(r)=rR(r) dhe duke përdorur njësitë

atomike, ai shkruhet :

d P

drV E

l l

rP

2

2 22

1

[ (| |) ]( )

r

Ky ekuacion mund të zgjidhet njësoj si në problemin një-dimensional. Në njësi atomike njësia

e energisë (e2/a) është dyfishi i potencialit të jonizimit të hidrogjenit, njësitë e ngarkesës dhe

masës janë sa madhësia e ngarkesës dhe masës së elektronit, njësia e gjatësisë është sa rrezja e

orbitës së parë të Bohrit (a=h2/me

2). Potenciali Kulonian në ekuacionin e Shredingerit bëhet

Z/r dhe nivelet energjetike të atomit të hidrogjenit jane -1/(2n2).

Është e dobishme të krahasohen rezultatet numerike me ato analitike . Nëse metoda

numerike zbatohet për potencialin Kulonian, energjitë e niveleve të fillimit përputhen deri në

3 shifra saktësie dhe funksionet valore kanë formë që nuk dallohet nga ajo e zgjidhjes

analitike. Energjitë e gjëndjeve nuk varen nga numri l por funksionet valore varen nga ky

numër. Gjëndjet me l=1 (P-gjëndjet) nuk kanë eergji nën E=-0.125 . Potenciali efektiv

[-1/r+l(l+1)/(2r2)] për l=1 ka një minimum prej -0.25 . Gjëndja bazë me E=-0.25 ka E<

Veff(l=1) dhe zgjidhja del që shuhet kur l=1.

Një shembull tjetër është potenciali Kulonian i “ekranuar” V(r)=-exp(-r/a)/r . Në figurën

7.4 krahasohen potencialet efektive Kulonian dhe ai i “ekranuar” për l=0 dhe l=1 me

parametër ekranimi a=5. Ndërsa figura 7.5 tregon gjendjet me energji më të ulët për l=1 dhe

a=5.

Llogaritjet janë kryer me programin SCHD1, i cili është i ngjashëm me programin SCH

në faktin që inicializimi i funksionit valor bëhet afër origjinës (r=0) ku P(r) shkon sipas rl+1

.

Figura 7.4 Potencialet efektive për gjendjet

l=0 dhe l=1 në rasin Kulonian (C) dhe në rastin

e potencialit të ekranuar (SC). Gjendjet nuk

janë të kufizuara nëse energjia është poshtë

potencialit efektiv. Në njësitë atomike gjendja

bazë e atomit të hidrogjenit E1 =-0.5 dhe nuk

mund të jetë gjendje e kufizuar për l=1.

0.25

Vef

0

-0.250 r 10

SC

C

Page 239: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

238

Figura 1.5 Funksioni valor radial R(r) dhe

rR(r) për gjendjen më të ulët P dhe potencialin

e ekranuar exp(-1/5 r)/r në njësii atomike.

SCH3D1.BAS

10 rem Ekuacioni 3D i Shredingerit (jashtë origjinës)

100 DEF FNV(R) = - EXP ( - R/ 8 ) / R Potenciali

110 PRINT “ R ( START), R ( END ), DELTA - R, ORBITAL # ( L ) , ENERGY?”

120 INPUT R8 , R9, R7, L,E

130 P0 = R8 ( L + 1) funksioni valor fillestar, P=rR(r)

140 P1 = ( L + 1)* R8 L vlera fillestare e P’=dP/dr

150 R = R8

160 PRINT R, P0, P0/R

170 R5 = ( R9 - R8) / 20 distanca midis printimeve

180 R6 = R + R7 / 2

190 P2 = 2*(FNV(R6) + L*( L + 1)/( 2*R6*R6) - E)* (P0 + P1*R7/2) ek. i Sredingerit

200 P0 = P0 + (P1 + P2*R7/2)*R7 vlera e re e P (pas gjysëm-hapit)

210 P1 = P1 + P2*R7 vlera e re e P’

220 R = R + R7 distanca e re

230 IF R < R5 THEN 260 grupi i printimit

240 R5 = R5 + ( R9 - R8 )/20

250 PRINT R, P0, P0/R

260 IF R <R9 THEN 180 rikthim për hapin tjetër r

270 PRINT

280 GOTO 110 rikthim për një provë të re

290 END

SCH3D1.FOR

V ( R) = - EXP ( - R/8)/ R

10 READ(5,100)RST,REND,DR,AL,E

L = AL

IF (RST - 999.) 20,90,20

20 P0 = RST **(L + 1)

P1 = (AL +1.)*RST**L

R = RST

PRINT 102, AL, E

PRINT 101 ,R,P0,P0/R

PRNTR = (REND - RST)/ 20

25 RTEMP = R + DR/ 2.

P2 =2.*(V(RTEMP ) +AL*(AL+1.)/(2.*RTEMP**2)-E)*(P0+P1*DR/2.)

P0=P0+P2*DR

R(r)

rR(r)

a=5

l=1

E=-0.0043

r10

Page 240: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

239

R=R+DR

IF (R-PRNTR) 40,30,30

30 PRNTR=PNRTR+(REND-RST)/20.

PRINT 101,R,P0,P0/R

40 IF (R-REND) 25,10,10

90 STOP

100 FORMAT(6F10.5)

101 FORMAT(1X,3E12.4)

102 FORMAT(1X,2HL=,F5.2,4H E=,E12.4)

END

7.5 Një metodë tjetër për potencialet tre-dimensionale

Kur nuk mund të inicializohet funksioni valor afër origjinës, mund të përdoret një

mënyrë e thjeshtë numerike. Gjendet një zonë (zakonisht larg origjinës) ku njihet një zgjidhje

e përafërt për dhe ‘ (zgjidhje asimtotike). Duke filluar nga kjo integrohet hap pas hapi

drejt r=0 ku përdoret një kusht kufitar për të gjetur vlerat vehtiake.

Për shembull , për potencialin e Lennard-Jones V(r)=V0 (1/r12

-1/r6 ), në r të mëdha V(r)0

dhe për energji negative (gjendje të kufizuara) ,P = r.R (ku R është funksioni valor radial)

është afërsisht proporcional me exp(- r) ku = (2m/h2)(-E). Atëherë P’=dP/dr= P dhe

këto vlera të P e P’ përdoren për të filluar llogaritjet. Integrohet hap pas hapi drejt r=0 duke

patur parasysh që për një vlerë vehtiake E , P duhet të shkojë drejt zeros në r=0 (meaë V

). Në figurën 7-6 tregohet potenciali L-J , ndërsa në figurën 7.7 tregohet funksioni valor për

gjendjen bazë dhe në figurën 7.8 funksioni valor për gjendjen e parë të eksituar. Llogaritjet

janë kryer me programin SCH3D2.

Figura 7.5 Potenciali Lennard-Jones. Thellësia

e gropës potenciale është 100; minimumi i

potencialit është në 1.225; potenciali bëhet

zero në r=1. Gjendjet e fillimit janë të

kufizuara .

Figura 7.7 Funksioni valor i gjendjes bazë për

potencialin e figurës 7.6 . Megjithëse llogaritjet

janë kryer si në problemin një dimesional,

zgjidhja është funksioni valor radial për S

gjendjen e problemit tre -dimensional.

E1

E2

r2.5

0

V(r)

100

r2.5

1

l=0

E1=-66

0

Page 241: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

240

Figura 7.8 Funksioni valor i gjendjes së parë të

eksituar dhe enegjia për potencilain L-J.

Programi SCH3D2.BAS Ekuacioni 3D i Shredingerit (me kahe për nga origjina)

100 DEF FNV(R) = 400*(R(-12) - R(-6))

110 PRINT “R(START), R(END),DELTA -R, ORBITAL # (L), ENERGY?”

120 INPUT R9,R8,R7,L,E

130 LET R7 = -ABS(R7)

140 LET PO = EXP( - SQR (2 *( FNV(R9) - E))*R9)

150 LET P1 = - SQR (2*(FNV(R9)- E ))*P0

160 LET R = R9

170 PRINT R, P0,P0/R

180 LET R5 = (R8 - R9) /20 + R9

190 LET R6 = R + R7 /2

200 LET P2 = 2* (FNV(R6) + L*(L + 1)/ (2*R6*R6) - E)*(P0 + P1*R7/2)

210 LET P0 = P0 + (P1 + P2*R7/2)*R7

220 LET P1 = P1 +P2*R7

230 LET R = R + R7

240 LET IF R > R5 THEN 270

250 LET R5 = R5 + (R8 -R9) / 20

260 PRINT R,P0, P0 / R

270 IF R > R8 THEN 190

280 PRINT

290 GOTO 110

300 END

PROGRAMI SCH3D2.FOR

V(R) = 400.*(1. /R**12 - 1./R**6)

10 READ(5, 100)RST, REND,DR,AL,E

L = AL

IF (RST - 999.) 20,90,20

20 DR = - ABS (DR)

P0 =EXP(- SQRT(2.*(V(RST) - E))*RST)

P1 = - SQRT(2.*(V(RST) - E ))*P0

R = RST

PRINT 102, AL, E

PRINT 101, R, P0, P0 /R

PRNTR = RST + (REND - RST) / 20.

25 RTEMP = R + DR / 2.

P2 = 2.*(V(RTEMP)+ AL*(AL + 1.) / (2.*RTEMP*RTEMP)-E)*(P0 +P1*DR/2.)

P0 = P0 + (P1 + P2*DR / 2.)*DR

2

E2=-22.9

l=0

r2.50

0

Page 242: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

241

P1 = P1 + P2*DR

R = R + DR

IF (R - PRINT) 30, 30, 40

30 PRNTR = PRNTR +( REND - RST)/ 2O.

PRINT 101, R, P0, P0 / R

40 IF ( R - REND) 10, 10, 25

90 STOP

100 FORMAT(6F10.5)

101 FORMAT(1X, 3E12.4)

102 FORMAT(1X,2HL = ,F5 . 2 ,4H E= ,E12.4)

END

7.6 Përhapja e paketit valor një-dimensional

Ekuacioni kohor një-dimensional i Shredingerit është:

h

m

x t

xV x t x t i

x t

dt

2 2

22

( , )( , ) ( , )

( , )h

Ky ekuacion mund të zgjidhet duke përdorur teknikën e ekuacioneve diferencialë me derivate

të pjesëshme, por kur potencili nuk varet nga koha [V(x,t)=V(x)],mund të përdoret një metodë

më e thjeshtë. Në këtë rast ekuacioni mund të ndahet duke vendosur në të :

(x,t)=(x)T(t) dhe ekuacioni sillet në dy ekuacione me derivate të zakonshëm, njeri për

(x):

h

m

d x

dxV x x E x

2 2

22

( )( ) ( ) ( ) ,

dhe tjetri për T(t):

dT t

dtiE

T t( )

( )h

,

Ku E është konstant dhe luan rolin e energjisë.

Ekuacioni për T(t) zgjidhet menjëherë dhe jep T(t)=Ae-iEt/h

= Ae-iEt

në njësi atomike.

Konstantja A është konstantja e normalizimit.

Ekuacioni hapsinor mund të zgjidhet analitikisht (për pak probleme) ose numerikisht siç

është bërë në paragrafët më lart. Ne do të diskutojmë për pjesën hapsinore të funksionit valor

për të ashtuquajturat gjedjet e kontiniumit dhe mandej do fusim pjesën kohore dhe përhapjen

e paketit valor që përbëhet nga shumimi i shumë funksioneve valore.

Gjendjet e kontiniumit një-dimensional

Supozojmë se kemi një gropë potenciale të tillë që për |x|>x0 , potencilai V(x) është zero.

Atëhere për |x|>x0 , ekuacioni i Shredingerit për pjesën hapsinore të funksionit valor ka

formën : ‘’(x)=-2E(x) dhe zgjidhja e tij është (x)=cos(kx), (x)=sin(kx) për E>0. Meqë

nuk ka kushte kufitare që kufizon vlerat e energjisë, çdo vlerë e energjisë E>0 është e lejuar.

Këto gjendje formojnë një kontinium.

Nëse potencili V(x) është simetrik, ne mund të kërkojmë që gjendjet të jenë krejt çift në x

ose krejt tek në x . Meqë kombinimi linear i zgjidhjeve të ekuacionit të Shredingerit është

përsëri zgjidhje etij, ne mund të zgjedhim një fazë arbitrare duke bërë sin(kx+) një nga dy

zgjidhjet tona dhe zgjidhja tjetër do ishte cos(kx+).

Potenciali më i thjeshtë do të ishte V(x)=o kudo (grimca e lirë) dhe atëhere funksionet

valore çift e tek për energjinë E do ishin cos(kx) dhe sin(kx) ku k=2E në njësi atomike dhe

funksionet valorë të plotë (x,t) për gjendjet me energji E do ishin (x,t)= cos(kx).exp(-ik2

Page 243: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

242

t/2) dhe (x,t)= sin(kx).exp(-ik2 t/2). Ne do ti vendosim të gjitha këto gjendje së bshku për të

formuar paketet valore.

Paketi valor i lirë

Në kontinium kemi një numër të madh energjish të lejuara afër njera tjetrës dhe vektorësh

valorë përkatës me të cilat mund të ndërtojmë një valë në formë pulsi që quhet paket valor.

P.sh. për të formuar një paket valor që ka formën e shpërndarjes së Gausit, exp(-x2/x0

2),

përdoret një interval vlerash të paketit valor k (vlera rrotull një farë vlere qëndrore k0) ku për

seicilën vlerë kemi amplitudën A(k) të formës :

A(k)x0.exp[-½(k-k0)2 x0

2 ]. Ju mund të ndërtoni pakete valore të lira me formë që

dëshironi, duke përdorur transformimin furie të formës së paketit. P.sh. për një pketë valor

katror me gjerësi x0 , kemi : A(k)=x0 . {sin[½(k-k0)x0]}/{½(k-k0)x0} ndërsa për një paketë

valor në formë trekëndëshi me gjerësi 2x0 kemi :

A(k)=x0 . {sin2 [½(k-k0)x0]}/{½(k-k0)x0}

2

Vlera e vektorit valor të qendrës k0 përcakton shpejtësinë e përhapjes së pkaetit valor sepse

shpejtësia e grupit është =dE/dk=hk0/m ose k0 në njësi atomik. Forma e paketit valor që në

çastin t=0 përcaktohet nga A(k) me kalimin e kohës deformohet meqë ghendjet me energji më

të lartë në paket përhapen më shpejt se ato me energji më të ulët.

Programi për paketat valore të lira

Në program mund të llogariten dhe të shumohen lehtë amplitudat e ndryshme të përbërësve të

një paketi. Për të kufizuar kohën e ekzekutimit të programit dhe numrin e madh të

amplitudave që kanë spektër të vazhduar duhet bërë një përafrim i funksionit A(k). P.sh. duke

përdorur 101 vektorë valorë për paketin valor me formë Gausiane mërret një përafrim mjaft i

mirë i paketit.

Ndërtohet paketi valor i centruar në origjinë , në t=0 dhe llogaritet për çdo komponent

faktori exp(-iEt). Kjo pjesë e funksionit valor do të spostojë fazat relative të komponentëve të

ndryshëm të paketit valor (çdo komponent ka energjinë e vet E). Në një kohë më vonë

mblidhen komponentët me fazë të spostuar për të formuar përsëri paketin valor dhe paketi del

që është çvendosur në hapësirë por edhe është deformuar. Theksojmë se pjesa kohore e

funksioneve valorë nuk ndikon në amplitudat e gjendjeve sepse moduli i |exp(-iEt)| është =1.

Programi PACKET kryen këto llogaritje që thamë.

PROGRAMI PACKET.BAS

100 PRINT “ ENERGJIA QENDRORE, GJERESIA E PAKETIT”;

110 INPUT E0,X0

120 K0 = SQR( 2*E0) Vektori valor qendror

130 K9 =5 / (25*X0) Shtesa e vektorit valor

135 DIM K(101),A(101),E(101)

140 FOR I = 1 TO 101

150 K1 = ( I - 51 )*K9

160 K(I) = K0 + K1 Vektori valor i I-të

170 E(I) = K(I)*K(I) / 2 Energjia

180 A(I) = X0*1.25331*EXP( -K1*K1*X0*X0 / 8) Amplituda Gausiane

190 NEXT I

200 PRINT “MINIMUMI I K, MAXIMUMI I K = “,K(1),K(101)

Page 244: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

243

210 PRINT “E(MIN K) , E(MAX K) = “ , E(1),E(101)

220 PRINT “KOHA”;

230 INPUT T Koha e përhapjes

240 IF T = 999 THEN 400

250 FOR J = 1 TO 25 Hapi sipas x

260 X = - 2 + (J - 1)*. 5

270 A1 = . 5*A(1)*COS(K(1)*X - E(1)*T) Reali i

280 A2 = . 5*A(1)*SIN(K(1)*X - E(1)*T) Imagjinari i

290 FOR I = 2 TO 100 Shumimi i amplitudave

300 A1 = A1 + A(I)*COS(K(I)* - E(i)*T)

310 A2 = A2 + A(I)*SIN(K(I)*X -E(I)*T)

320 NEXT I

330 A1 = A1 +. 5*A(101)*COS(K(101)*X - E(101)*T)

340 A2 = A2 + .5*A(101)*SIN(K(101)*X - E(101)*T)

350 A1 = A1*K9

360 A2 = A2*K9

370 PRINT X, A1*A1 + A2*A2 x , (x)2 380 NEXT J

390 GOTO 220 Rikthim për një kohë tjetër

400 END

PROGRAMI PACKET.FOR

DIMENSION AMPL(101),E(101)

REAL K1, K(101), K0

COMPLEX AMPLI

DATA E0, DELTX / 10 . , 1. /

K0 = SQRT(2 .*E0)

DELTK = 5 . / (25 .* DELTX)

DO 10 I = 1 , 101

K1 = FLOAT(I - 51)*DELTK

K(I) =K0 + K1

E(I) = K(I)*K(I) /2 .

10 AMPL(I) = DELTX*1 .25331*EXP( -K1*K1*DELTX*DELTX / 8 . )

12 READ(5 , 101 ) T

IF (T - 999 . ) 14 , 40 , 40

14 DO 30 J = 1 , 25

X = - 2 . + FLOAT ( J - 1 )* . 5

AMPLI = . 5*AMPL(1)*CEXP(CMPLX(0 . ,K(1)*X - E(1)*T))

DO 20 I = 2 , 100

20 AMPLI = AMPLI + AMPL(I)*CEXP (CMPLX(0 . , K (I)*X - E (I)*T))

AMPLI = AMPLI + . 5* AMPL (101)*CEXP( CMPLX(0 . , K(101)*X - E(101)*T))

AMPLI = AMPLI*DELTK

AMPL1 = REAL (AMPLI )

AMPL2 = AIMAG(AMPLI)

AMPL3 = AMPL1*AMPL1 + AMPL2*AMPL2

30 PRINT 101 , X , AMPL3

GOTO 12

Page 245: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

244

40 STOP

100 FORMAT(1X , 2F12 . 5 )

101 FORMAT( F10 . 4)

END

Përhapja e paketit valor nëpër një gropë potenciale katrore

Një rast tjetër ku pjesa hapsinore e funksionit valor gjendet analitikisht është ai ku

potenciali ka formën e grope të fundme katrore. Zakonisht zgjidhja shkruhet në terma të

amplitudës komplekse për valët që ecin djthtas dhe majtas në tre zona : zona I në të majtë të

gropës potenciale , zona II brenda gropës potenciale, zona III në të djathtë të gropës

potenciale(shih tekste të Mekanikës kuantike).

Zona I Zona II Zona III

1 B1 C

B B2

Koeficientët gjenden duke barazuar funksionet valore (dhe derivatet e tyre ) në seicili paret të

gropës potenciale. Duke e ditur si llogaritet funksioni valor hapsinor (x) për çdo x e për çdo

energji E mund të ndiqet e njëjta strategji në formimin dhe përhapjen e paketit valor. Është më

lehtë që të formohet paketi valor në të majtë të gropës potenciale (ku zgjidhjet janë

sinusoidale ose kosinusoidale si ato që pamë më lart). Një program që realizon këtë strategji

është PACKSQ.

PROGRAMI PACKSQ.FOR

REAL K(51), KAP(51), K0

COMPLEX A(51), PSIX, PSIXT, C, B, B1, B2, DENOM, ARG

PI = 3.14159265

A0 =. 5

V0 = 50. thellësia e gropës potenciale

E0 = 50. energjia qendrore e paketit

K0 = SQRT(2.*E0) vektori valor qendror

X0 = - 5. pozicioni fillestar i paketit

X1 = 1 . 5 gjerësia e paketit

DELTK = 5. / (25.*X1) shtesa e vektorit valor

DO 10 I= 1, 51

K(I) = FLOAT( I - 26 )* DELTK + K0 vektori valor k

KAP(I) = SQRT(2.*(K(I)*K(I) / 2. + V0)) kapa

ARG = CMPLX(0. , -(K(I) - K0)*X0)

AK = K(I) - K0

10 A(I) = X1*1.25331*EXP( - AK*AK*X1*X1 / 8.)*CEXP(ARG) Gausiane e centruar

në x0

20 READ(5,100) T koha e përhapjes së paketit

IF (T - 999.) 15,50,15

15 DO 30 I = 1,25 hapi sipas x

X = FLOAT( I - 13)*. 5

PSIXT = CMPLX(0.,0.)

DO 40 J = 1, 51 shumimi sipas përbërësve të paketës

Page 246: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

245

AK = - (K(J)/KAP(J) + KAP(J) / K(J))

DENOM = CMPLX(COS(2.* KAP(J)*A0),AK*SIN(2.*KAP(J)*A0)/2.)

ARG = CMPLX(0.,-2.*K(J)*A0)

C = CEXP(ARG)/ DENOM

IF (X + A0) 80, 80, 60

60 IF (X - A0) 70, 90, 90

70 ARG = CMPLX(0., (K(J) - KAP(J)*A0) Llogaritja e koeficientëve

B1 = (1. + K(J)/ KAP(J)*CEXP(ARG)*C/2. të komponenteve kur

ARG = CMPLX(0., K(J) + KAP(J)*A0) -A0 < x < +A0

B2 = (1. - K(J) / KAP(J)*CEXP(ARG)*C /2.

ARG = CMPLX(0.,KAP(J)*X)

PSIX = B1*CEXP(ARG)

ARG = - ARG

PSIX = PSIX + B2*CEXP(ARG)

GOTO 25

80 ARG = CMPLX(0.,-2.*K(J)*A0 + PI /2.)

B = . 5*CEXP(ARG)*(KAP(J) / K(J) - K(J) / KAP(J))*SIN(2.*KAP(J)*A0) /DENOM

ARG = CMPLX(0. , K(J)*X) Llogaritja e koeficientëve

PSIX = CEXP(ARG) të komponenteve kur

ARG = - ARG x -A0

PSIX = PSIX + B*CEXP(ARG)

GOTO 25

90 ARG = CMPLX(0. ,K(J)*X) Llogaritja e koeficientëve

PSIX = C*CEXP(ARG) të komponenteve kur x A0

25 E = K(J)*K(J) / 2. Energjia për çdo komponent

ARG = CMPLX(0. , - E*T)

40 PSIXT = PSIXT + A(J)*PSIX*CEXP(ARG)*DELTK Shuma për (x,t) të paketit

PSI1 = REAL(PSIXT)

PSI2 = AIMAG(PSIXT)

PSI3 = PSI1*PSI1 + PSI2*PSI2

30 PRINT 101, X, PSI3 x, (x,t)2 100 FORMAT (F10. 5)

101 FORMAT (1X, 2F8.3)

GOTO 20 Rikthim për një kohë tjetër përhapjeje

50 STOP

END

Ky program nuk është shkruar në gjuhën BASIC sepse kompilatori i gjuhës BASIC nuk lejon

numra kompleks.

Përhapja e paketit valor nëpër një gropë potenciale një-dimensionale çfardo

Funksionet valore hapsinore (x) për çdo energji E mund të llogariten siç thamë më lart.

Duke njohur këto funksione për çdo komponet të paketit valor mund të formohet dhe të

përhapet paketi valor për çdo potencial. Procesi është më i lehtë kur paketi fillestar është i

centruar rreth x=0 dhe qendra e gropës potenciale është në të djthatë të x=0. Ju mund të

inicializoni dy funksione valore cos dhe sin në origjinë . Formohet paketi në x=0 në të majtë

të gropës potenciale dhe niste paketi drejt gropës potenciale. Në fund , një pjesë e paketit do

kalojë gropën, një pjesë do të reflektohet. Sa më i lëmuar të jetë potenciali , aq më lehtë është

Page 247: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

246

për paketin që ta kalojë atë. Parete të lëmuara të potencialit zvogëlojnë edhe oshilimet e

shpejta në këto parete.

Një program për përhapjen e paketave nëpër një gropë potenciale është programi VPAC, i

cili përdor metodën Runge -Kutta për integrimin për të gjetur funksionin valor hapsinor. Për të

mbledhur funksionet valorë që formojnë paketin duket jo vetëm amplituda e funksioneve

valore por edhe faza që duhet llogaritur me saktësi sa më të lartë.

Për arsye të kufizimit të kompjuterave , në program janë paraqitur vetëm 21 vektorë valorë të

ndryshëm por kjo mund të rritet. Sa më i madh të jetë ky numër aq më real do jetë pamja e

paketit valor .

Programi VPAC.BAS

100 DIM P(21, 26), Q( 21, 26), E(21), C(21),S(21)

110 DEF FNV(X) = - 100*EXP( -(X - 6)*(X - 6)) potenciali

120 PRINT “ ENERGJIA, GJYSEM-GJERESIA E PAKETIT?”

130 INPUT E8, X6

140 K8 = SQR(2*E8) vektori valor për energjinë qendrore

150 K9 = 3 / ( 10*X6) shtesa e vektorit valor

160 X1 = . 1 hapi x

170 FOR I = 1 TO 21 cikli i ruajtjes së nergjive dhe funksioneve valore të komponenteve

180 K0 = K8 + ( I - 11)* K9

190 E (I) = K0*K0 / 2 Energjia

200 K7 = KO - K8

210 A = . 399569*X6*EXP( - X6*X6*K7*K7 / 2)

220 Q( I, 1) = 0

230 Q0 = 0

240 P1 = 0

250 Q1 = K0*A

260 P(I , 1 ) = A

270 P0 = A

280 X0 = 0

290 X5 = 0

300 N = 1

310 K1 = P1 Parametrat e metodës Runge-Kutta

320 M1 = Q1

330 L0 = 2*(FNV(X0) - E(I))

340 L1 = L0*P0

350 N1 = L0*Q0

360 K2 = P1 + L1*X1 / 2

370 M2 = Q1 +N1*X1 / 2

380 L0 = 2*(FNV(X0 + X1 / 2) - E( I))

390 L0*(P0 + K1*X1 / 2)

400 N2 = L0*(Q0 + M1*X1/2)

410 K3 = P1 + L2*X1 / 2

420 M3 = Q1 + N2*X1 / 2

430 L3 =L0*(P0+K2*X1/2)

440 N3 =L0*(Q0+M2*X1/2)

450 K4 =P1+L3*X1

Page 248: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

247

460 M4 =Q1+N3*X1

470 L0 =2*(FNV(X0+X1)-E(I) )

480 L4 =L0*(P0+K3*X1)

490 N4 =L0*(Q0+M3*X1)

500 P0 =P0+X1*(K1+2*K2+2*K3+K4)/6 Vlera e re e Re()

510 P1 =P1+X1*(L1+2*L2+2*L3+L4)/6 Vlera e re e Re(‘)

520 Q0 =Q0+X1*(M1+2*M2+2*M3+M4)/6 Vlera e re e Im()

530 Q1 =Q1+X1*(N1+2*N2+2*N3+N4)/6 Vlera e re e Im(‘)

540 X0 =X0+X1 pozicioni i ri

550 X5 =X5+X1

560 IF ABS(X5-.5)>X1/2 THEN 610 grupi i ruajtjes

570 X5 = 0

580 N = N + 1

590 Q(I, N) = Q0

600 P(I, N) = P0

610 IF X0 < 12.6 THEN 310

620 NEXT I

630 PRINT “KOHA E PERHAPJES SE PAKETIT?”

640 INPUT T0

650 FOR I = 1 TO 21 cikli i ruajtjes së vlerave të sinusit e kosinusit

660 C(I) = COS(E(I)*T0)

670 S(I) = SIN( - E(I)*T0)

680 NEXT I

690 FOR J = 1 TO 26 cikli sipas x

700 X0 = (J - 1)* . 5

710 P1 = 0

720 P2 = 0

730 FOR I = 1 TO 21 cikli i shumimit sipas komponenteve

740 P1 = P1 + K9*(P(I , J)*C(I) - Q(I , J)*S(I)) Re ( )

750 P2 = P2 + K9*(Q(I , J)*C(I) + P(I, J)*S(I)) Im ()

750 NEXT I

770 PRINT X0 , P1* P1 + P2*P2

780 NEXT J

790 PRINT

800 GOTO 630 Rikthim për një kohë tjetër përhapjeje

810 END

Programi VPAC.FOR

DIMENSION E (21)

COMPLEX C (21), P(21, 26), P0, P1,K1, K2, K3, K4, L1, L2, L3, L4

V(X) = - 100.*EXP(-(X - 6 . )*( X - 6 . ))

DATA EN, WID / 50 . ,1 . /

CENK = SQRT( 2.*EN)

DK = 3 . / ( 10 . *WID)

DX = . 1 Step size,x

DO 30 I = 1 , 21

Page 249: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

248

AK = ( I - 11 )*DK

E( I) = ( AK + CENK)**2 /2.

A = . 399569*WID*EXP( - WID*WID*AK*AK /2 . )

P(I , 1 ) = CMPLX ( A, 0 .)

P0 = P (I , 1 )

P1 = CMPLX( 0 . , (AK + CENK)*A)

X0 = 0 .

PRNTX = 0 .

N = 1

5 K1 = P1

L1 = 2 . *(V(X0) - E (I)*P0

K2 = P1 + L1*DX / 2.

AL0 = 2 . *(V(X0 + DX / 2.) - E( I ))

L2 = AL0*(P0 + K1*DX / 2 . )

K3 = P1 + L2*DX / 2 .

L3 = AL0*(P0 + K2*DX / 2 . )

K4 = P1 + L3*DX

L4 = 2 . *( V ( X0 + DX ) - E( I ))*(P0 + K3*DX)

P0 = P0 + DX* ( K1 + 2 . *K2 + 2 . *K3 + K4 ) / 6.

P1 = P1 + DX* ( L1 + 2 . *L2 + 2 . *L3 + L4 ) / 6.

X0 = X0 + DX Neë x

PRNTX = PRNTX + DX

IF ( ABS ( PRNTX - . 5 ) - DX / 2 . )15 , 15 , 20

15 PRNTX = 0 .

N = N + 1

P ( I , N ) = P0

20 IF ( X0 - 12 . 6 ) 5 , 30 , 30

30 CONTINUE

40 READ ( 5 ,100 ) T0

IF ( T0 - 999 . ) 45 , 70 , 70

45 DO 50 I = 1 , 21

50 C(I) = CMPLX(COS(E(I)*T0) , SIN( - E(I)*T0))

DO 60 J = 1 , 26

X0 = ( J - 1 )* . 5

PSI = ( 0 . ,0 . )

DO 55 I = 1 , 21

55 PSI = PSI + DK*P ( I , J )* C ( I )

PSI2 = REAL ( PSI ) ** 2 + AIMAG ( PSI )** 2

60 PRINT 101 , X0 , PSI2

GOTO 40

70 STOP

100 FORMAT ( 1X , F8 . 3 , F10 . 5 )

END

Ushtrime

Page 250: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

249

1. Gjeni gjendjet stacionare për potencilin në formë katrore V0=1000 dhe V0=10. Vlerësoni

sa gjendje janë të kufizuara për secilin rast. Krahasoni energjitë e gjendjeve të para të

secilit rast me atë të gropës potenciale të pafundme.

2. Gjeni gjendjet e qëndrueshme në potencialin V(x)=x4 , për të nuk ka zgjidhje analitike.

Gjeni energjitë dhe funksionet valore të tre gjendjeve të para. Krahasoni energjitë me ato

të oshilatorit harmonik. Shpjegoni fizikisht ndryshimet.

3. Gjeni dis gjendje stacionare për një propë potenciale me parete të rrumbullakosura:

V(x)=50x6 për |x|<1, V(x)=100- 50/x

6 për |x|>1. Vizatoni potencialin dhe gjeni gjendjen

bazë. Vlerësoni energjinë më të lartë për gjendjet e kufizuara.

Page 251: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

250

KAPITULLI I VIII

ZBERTHIMI RADIOAKTIV

8.1 Hyrje

Në këtë kapitull do shikojmë përdorimin e kompjuterit në hyrjen e fizikës bërthamore:

zbërthimi radioaktiv. Do trajtohen si siteme me zbërthim të një-fishtë ashtu edhe zinxhir

zbërthimesh të shumëfishta. Zgjidhja analitike është e thjeshtë për sisteme me zbërthim të

njëfishtë por jo për siteme më të komplikuar. Zakonisht një zgjidhje analitike jepet për një

zinxhir zbërthimesh radioaktive vetëm kur periodat e gjysëm-zbërthimit të produkteve janë

shumë të ndryshme, në këtë rast secili nga pjestarët e produkteve e dominojnë krejt sistemin

në kohët që ndryshojnë shumë nga njëra tjetra. Ndërsa zgjidhja numerike bëhet lehtë për

çfardo periodash gjysëm-zbërthimi , madje edhe në rastin kur zbërthimet e shumëfishta të

produkteve kanë perioda gjysëm-zbërthimi shumë afër njera tjetrës.

Ekuacioni bazë i zbërthimit radioaktiv, për një zbërthim të njëfishtë , pra kur bërhamat bija

janë stabël (jo-radioaktive) është:

dN

dtCN1

1

ku N1 është numri i bërthamave në kohën t . Pra shpejtësia e zbërtmit radioaktiv (ndryshimi i

numrit të bërthamave në njësinë e kohës) është proporcional me numrin e bërthamave

ekzistuese. Koeficienti i proporcionalitetit C është negativ.

Një sistem tjetër më i komplikuar është kur bërthamat bija zbërthehen me një kohë

gjysëm-zbërthimi tjetër. Ekuacionet diferenciale të çiftuar në këtë rast janë:

dN

dtC N1

1 1

dN

dtC N C N2

2 2 3 1

ku C1 <0, C2 <0 dhe C3 =- C1 . Zgjidhja analitike e këtij problemi është shumë e ndërlikuar

ndërsa zgjidhja numerike është e lehtë edhe për rastin kur ka N lloje bërthamash që

zbërthehen në zinxhirin radioaktiv.

Një problem analog ndeshet në ekologjinë e një rajoni të izoluar. Në këtë rast kërkohet të

llogaritet numri Ni i specieve të rajonit gjatë riprodhimit dhe bashkëveprimit të tyre. Strategjia

e zgjidhjes numerike është shumë e ngjashme me atë të zinxhirit të zbërthimit radioaktiv.

Situata të ngjashme ndeshen edhe në fusha të tjera të shkencës.

8.2 Zgjidhjet e problemeve të zbërthimit bërthamor

Problemi më i thjeshtë është kur bërthamat bija janë stabël (nuk zbërthehen). Atëhere

ekuacioni dN/dt =C N mund të zgjidhet edhe analitikisht edhe numerikisht dhe kjo është një

test i metodës numerike të përdorur. Kjo zgjidhje tregohet në programin NUCDEC . Këtu

sistemi është në fillim një izotop i thoriumit ( 232

90Th) i cili zbërthehet duke emetuar grimca

(4

2 He) në një izotop radiumi (228

88Ra) . Mandej radiumi zbëthehet shumë shpejt sipas një

zinzhiri radioaktiv deri sa arrin në një izotop të qendrueshëm plumbi (208

82 Pb) . Këto

zbërthime sipas këtij zinxhiri janë kaq të shpejta në krahasim me zbërthimin Th në Ra (për të

cilin perioda e gjysëm-zbëthimit është 1.4 1010

vjet,ndërsa në program koha llogaritet në

njësi KYR=106 vjet) sa që sistemi sillet njëlloj sikur thoriumi të kalonte direkt tek plumbi.

Page 252: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

251

Programi NUCDEC.BAS Zbërthimi i thjeshtë radioaktiv

100 N0 = 1E 22 numri fillestar i bërthamave

110 N = N0

120 C = -. 693/140 konstantja e zbërthimit

130 D = 1 hapi kohor t

140 T0 = 10 koha përfundimtare

150 PRINT “T(100 KYR)” , “ N(TH232) “ , “EXPONENTIAL “

160 N = N+C*(N+C*N*D/2)*D numri i ri i bërthamave

170 T= T+D koha e re

180 IF T< T0 THEN 210 grupi i printimit

190 PRINT T , N , N0*EXP(C*T)

200 T0 = T0 +10

210 IF T< = 200 THEN 160 rikthim për hapin tjetër kohor

220 END

Program NUCDEC.FOR

AN0 = 1 . E 22

AN = AN0

C = - . 693 / 140.

DELT = 1.

PRNTT = 10 .

5 AN = AN + C* ( AN* + C*AN*DELT / 2 . )*DELT

T = T + DELT

IF ( T - PRNTT ) 20 , 10 , 10

10 ANTHE = AN0*EXP(C*T)

PRINT 100 , AN , ANTHE

PRNTT = PRNTT + 10 .

20 IF ( T - 200 . ) 5 , 5 , 30

30 STOP

100 FORMAT ( 1X , 2E12 . 6 )

END

Në program supozohet se zbërthimi fillon në çastin t=0 me 1022

bërthama thoriumi (rreth

një gram thorium i pastër) . Metoda algoritmike më e thjeshtë (hap pas hapi kohor) për të

zgjidhur ekuacionin do ishte ajo kur përdoret vlera e vjetër të numrit N për të gjetur N=C

Nvjeter t në çdo kohë t (metoda e Ejlerit për ekuacionet diferenciale të rendit të parë). Duhet

zgjedhur një hap kohor t sa më i vogël për të nxjerrë një rezultat të mirë me këtë metodë. Një

metodë më e mirë përdor edhe vlerën e gjetur nga metoda e Ejlerit për vlerën e re N edhe

vlerën e vjetër N për të gjetur një vlerë mesatare të n në hapin e dhënë kohor. Vlera mesatare

përdoret për të gjetur vlerën përfundimtare të re të N. Kjo metodë është e lidhur me regullin

trapezoidal të integrimit. Në program mesatarja merret (Nvjeter + Nejler)/2 = N+C N t/2 dhe

përdoret kjo vlerë për të përmrësuar N. Programi printon diferencën e vlerave nga zgjidhja

analitike, e cila për një zbërthim të vetëm është :

N=N0 eC t

,

ku N0 është numri fillestar i bërthamave. Ekzekutimi i programit do tu tregojë që procedura

numerike është pothuaj e saktë (arrihet deri në saktësinë e 5 shifrave gjatë kohës sa disa

perioda gjysëm-zbërthimi).

Page 253: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

252

Këto ide mund të shtrihen edhe në situatën kur bërthamat bija zbërthehen. Së pari, përdorni

metodën e Ejlerit për të marë një përafrim të parë të numrit të ri; pastaj përdorni numrat

mesatarë për të gjetur një përafrim të mirë për vlerën e re të N . Programi DAUGHT përdor

sekuencën e mëposhtëme të hapave. Me L janë shënuar përafrimet e Ejlerit:

L1 = N1 + C1 N1 D

L2 = N2 + C2 N2 D + C3 N1 D

N2 = N2 + C2 ((N2+L2)/2) D + C3 ((N1+L1)/2) D

N1 = N1 + C1 ((N1+L1)/2) D

T = T + D

ku D është hapi kohor t. Programi DAUGHT ilustron këtë metodë për zbërthimin radioaktiv

të izotopit 237

93 Np i cili kalon në 233

91 Pa , i cili zbërthehet në 229

90Th nëpërmjet 233

92U. Të

gjithë elementët e tjerë të zinxhirit (që përfundojnë me 209

83Bi i cili është stabël) zbërthen

shumë shpejt. perioda e gjysëm-zbërthimit të Np është 1.62 105 vjet. Programi supozon se

në fillim ka një kampion të pastër me 1022

bërthama.

Programi DAUGHT.BAS Zbërthimi i zinxhirit radioaktiv nënë-bijë

100 N1 = 1E22 numri fillestar i bërthamave

110 C1 = - . 693 / 2.2E3 konstantet e zbërthimit radioaktiv

120 C2 = - . 693 / 1.62E2

130 C3 = - C1

140 D = 1 hapi kohor

150 T0 = 10 koha e plotë

160 PRINT “T(KYR)” , “N(NP237)” , “N(U233)”

170 L1 = N1 + C1*N1*D vlerësimi i numrit të ri të bërthamave

180 L2 = N2 + C2*N2*D + C3*N1*D

190 N2 = N2 + C2*(N2 + L2 )*D / 2 + C3*(N1 + L1 )*D / 2

200 N1 = N1 + C1*(N1 + L1 )* D / 2

210 T = T + D koha e re

220 IF T < T0 THEN 250 grupi i printimit

230 PRINT T , N1 , N2

240 T0 = T0 + 10

250 IF T < 200 THEN 170 rikthim për hapin tjetër kohor

260 END

Program DAUGHT.FOR

AN1 = 1.E 22

AN2 = 0 .

C12 = - . 693 / 2.2E3

C23 = - . 693 / 1.62E2

C21 = - C12

DELT = 1.

PRNTT = 10 .

Page 254: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

253

10 ANS1 = AN1 + C12*AN1*DELT

ANES2 = AN2 + C23*AN2*DELT + C21*AN1*DELT

AN2 = AN2 + C23*(AN2 + ANES2)*DELT / 2. + C21*(AN1 + ANS1)*DELT / 2.

AN1 = AN1 + C12*(AN1 + ANS1)*DELT / 2.

T = T + DELT Neë time

IF (T - PRNTT) 20 , 15 , 15

15 PRINT 100 , T , AN1 , AN2

PRNTT = PRNTT + 10 .

20 IF ( T - 100 . ) 10, 10, 25

25 STOP

100 FORMAT (1X , 3E10 . 3 )

END

Figura 8.1 tregon numrin e bërthamave të neptuniumit dhe uraniumit në funksion të

kohës. Me që të dy periodat e gjysëm-zbërthimit që dominojnë ndryshojnë me një faktor 10

herë, mund të nxirret edhe zgjidhja analitike. Numrat që dominojnë janë ato të elemetit me

peridë gjysëm-zbërthimi më të gjatë.

Figura 8.1 Një zinxhir i zbërthimit radioaktiv

me një hallkë. Zbërthimi i 237

Np nëpërmjet 233

U. Në fillim kemi vetëm 1022

bërtham Np.

Perioda e gjysëm-zbërthimit të Np është

2.2 106 vjet ndërsa e U është 1.62 10

5 vjet.

Bërthamat e ndërmjetme 233

Pa zbërthehen në 233

U me periodë 27.4 ditë. Kurba e U është

shumëzuar me 10.

Metoda numerike nuk është e kufizuar për dy raste . Programi U234 ilustron

zbërthimet (dominuese) që ndodhin në zinxhirin e uranium 234. Ky është (kryesisht) një

zinxhir me tre lloje bërthamash. Në program supozohet se procesi fillon me rreth një gram 234

U të pastër. Skema e zbërthimit është treguar në figurën 8.2. Përsëri është zbatuar përafrimi

i Ejlerit për numrat e rinj (dhe pastaj mesatarja) para se të llogariten vlerat ereja të N.

Figura 8.2 Skema e zbërthimit të 234

92U

Programi U234.BAS

1022

237Np

N

T (vjet) 5 x 106

0

233U

23492U

23090Th+

22688Ra+

22286Em+

20682Pb

2.5 105

vjet

8 104

1.62 103

shpejt

Page 255: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

254

100 N1 = 1E22 Numri fillestar i bërthamave

110 C1 = - . 693 / 250 Konstantet e zbërtmimit

120 C2 = - . 693 / 80

130 B2 = - C1

140 C3 = - . 693 / 1 . 62

150 B3 = - C2

160 D = . 01 hapi kohor , t

170 T0 = 1 koha e printimit

180 PRINT “T ( KYR)” , “N(U234)” , “N(TH230)” , “N(RA226)”

190 L1= N1 + C1*N1*D numri i ri i bëthamave

200 L2 = N2 + C2*N2*D + B2*N1*D

210 L3 = N3 + C3*N3*D + B3*N2*D

220 N3 = N3 + C3*(L3 + N3)* D / 2 + B3*(L2 + N2)* D / 2

230 N2 = N2 + C2*(L2 + N2)* D / 2 + B2*( L1 + N1)* D / 2

240 N1 = N1 + C1*(L1 + N1)* D/ 2

250 T = T + D koha e re

260 IF T <T0 THEN 290 grupi i printimit

270 PRINT T , N1 , N2 , N3

280 T0 = T0 + 1

290 IF T < 20 THEN 190 rikthim për hapin tjetër kohor t

300 END

Programi U234.FOR

AN1 = 1 . E22

C1 = - . 693 / 250.

C2 = - . 693 / 80 .

B2 = - C1

C3 = - . 693 / 1 . 62

B3 = - C2

DELT = . 01

PRNTT = 1 .

10 AN1ES = AN1 + C1* AN1* DELT

AN2ES = AN2 + C2*AN2*DELT + B2* AN1*DELT

AN3ES = AN3 +C3* AN3*DELT + B3*AN2*DELT

AN3 = AN3 + C3*(AN3ES + AN3)*DELT / 2 . + B3*(AN2ES + AN2)*DELT / 2 .

AN2 = AN2 + C2*(AN2ES + AN2)*DELT / 2 . + B2*(AN1ES + AN1)* DELT / 2 .

AN1 = AN1+ C1*(AN1ES + AN1)*DELT / 2 .

T = T + DELT

IF ( T - PRNTT) 20, 15, 15

15 PRINT 100, T, AN1, AN2, AN3

PRNTT = PRNTT + 1 .

20 IF ( T - 20 . ) 10, 30, 30

30 STOP

100 FORMAT ( 3X, F5. 2 , 3 (2X, E10 . 4 ))

END

Page 256: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

255

Figura 8.3 Një zinxhir zbërthimi me bija që

zbërthehen. Zbërthimi i 234

U nëpërmjet 230

Th

dhe 226

Ra. Periodat e gjysëm-zbërthimit janë: U

2.5 105 vjet , Tha 8 10

4 vjet , Ra 1.62 10

3

vjet. Kurba për Ra është shumëzuar me 100.

Figura 8.3 tregon numrin e bërthamave të U,

numrin e bërthamave të Th dhe 100 herë numrin e bërthamave të Ra në funksion të kohës.

Numri i bërthamave të Em , i cili është kryesisht numri i bërthamave të Pb, do ishte i

barabartë me numrin fillestar të bërthamave minus shumën e numrave të tre perbërësve që

zbërthehen ose 1022

: (N1 + N2 + N3 ). Në natyrë, 234

U prodhohet nga 238

U (urani në natyrë

është më shumë në këtë formë) nga një zbërthim me periodë gjysëm-zbarthimi (dominuese)

4.51 109 vjet ; kjo periodë është kaq e gjatë sa që zinzhiri i i bërthamave

234U mund të

konsiderohet veçmas duke supozuar që rruga e vetme e ndryshimit të numrit të bërthamave 234

U është nëpërmjet zbërthimit në Thorium.

Sistemi i ekuacioneve të zbërthimit për N lloje bërthamash që bashkëveprojnë në

zbërthim si një zinxhir radioaktiv mund të shkruhet si një ekuacion matricor. Zgjidhja

numerike mund të shkruhet në terma të matricave, siç bëhet në programin MATDEC . Numri i

llojeve të ndryshme të bërthamave është i kufizuhar vetëm nga mundësitë e ruajtjes në

kompjuter. Sistemi i marë në programin MADEC është zinxhiri i 234

U , prandaj rezultatet janë

si në programin e mëparshëm.; por programi mund të përdoret edhe për çfardo numri të

llojeve të bërthamave të zinxhirit.

Programi MATDEC.BAS

10 DIM N(3), C(3, 3), M(3), L(3)

20 FOR I = 1 TO 3

100 READ N(I)

105 NEXT I

106 FOR I = 1 TO 3

107 FOR J = 1 TO 3

108 READ C(I, J)

109 NEXT J

110 NEXT I

120 DATA 1E+22,0,0

130 DATA -.002772,0,0,.002772,-8.66E-3,0,0,8.66E-3,-.4278

140 D = .01

150 T0 = 1

155 FOR I = 1 TO 3

160 FOR J = 1 TO 3

170 C(I, J) = C(I, J) * D

171 NEXT J

172 NEXT I

173 FOR I = 1 TO 3

174 FOR J = 1 TO 3

175 M(I) = M(I) + C(I, J) * N(J)

106

T (vjet)00

N

1022

234U

222Ra

230Th

Page 257: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

256

176 NEXT J

177 NEXT I

178 FOR I = 1 TO 3

180 M(I) = .5 * M(I)

190 M(I) = N(I) + M(I)

192 NEXT I

194 FOR I = 1 TO 3

195 FOR J = 1 TO 3

200 L(I) = L(I) + C(I, J) * M(J)

205 NEXT J

210 N(I) = N(I) + L(I)

215 NEXT I

220 T = T + D

230 IF T < T0 THEN 280

240 PRINT T;

245 FOR I = 1 TO 3

250 PRINT N(I)

260 NEXT I

270 T0 = T0 + 1

280 IF T <= 20 THEN 155

290 END

Përdorimi i këtyre programeve ka për qëllim të ilustrojë mënyrën e funksionimit të

zinxhirit bërthamor. Nëse zbërthimi në zinxhir ka gjysëm-perioda që ndryshojnë shumë nga

njera tjetra , atëhere zgjidhet koha për të cilën secili nga zbërthimet dominon . Pastaj gjendet

perioda e gjysëm-zbërthimit dhe zbritet numri i llogaritur i zbërthimeve nga numri fillestar

çdo herë. Pastaj kalohet në një interval tjetër kohor dhe gjendet një tjetër periodë gjysëm-

zbërthimi. Kjo metodë ecën mirë për perioda gjysëm-zbërthimi që janë larg njëra tjetrës. Kur

periodat nuk janë të ndara mirë përdoret një mënyrë “prove e gabimi” , ku merren me mënd

periodat dhe numrat fillestarë dhe gjendet se si llogaritjet përputhen me të dhënat , mandej

korrigjohen vlerat e zgjedhura dhe procesi përsëritet. Zakonisht për vlera të fillimit meren ato

të metodës së zakonëshme me një periodë që dominon. Procesi ndërpritet kur rezultatet e

llogaritjeve përputhen mirë me të dhënat.

8.3 Zbërthimi radioaktiv duke përdorur numrat e rastit

Simulimi ngjarjeve statistikore bëhet duke përdorur numrat erastit. Ngjarje të tilla janë edhe

zbërthimet radioaktive. Metoda më e përdorëshme është ajo që quhet Monte Carlo. Një

problem zbërthimi që përdor teknikën Monte Carlo është dhënë në programin NUMON.

Shkurt, kët konsiderohet një numër bërthamash N dhe shikohet çdo bërthamë pas një njësi

kohore. Duke krahasuar një numër të rastit me konstanten e zbërthimit, vendoset nëse çdo

bërthamë zbërthehet gjatë kësaj njësie kohore. Nëse numri i rastit është më i vogël se

konstantja e zbërthimit atëhere bërthama zbërthehet ; nëse numri i rastit (midis 0 dhe 1) është i

barabartë ose më i madh se konstantja e zbërthimit atëhere bërthama nuk zbërthehet në

program ; kalohet në hapin tjetër kohor etj. Numri i rastit simulon procesin statistikor pra vetë

procesin e zbërthimit radioaktiv.

Programi NUMON.BAS

Page 258: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

257

100 DIM N(1000), L(3), M(3)

110 L(1) = .2 konstantet e zbërthimit

120 L(2) = .05

130 L(3) = 0

140 FOR N = 1 TO 1000 gjendjet fillestare të bërthamave

150 N(N) = 1

160 NEXT N

170 FOR T = 1 TO 20 cikli për hapet kohore

180 FOR N = 1 TO 1000 cikli për bërthamat

190 IF RND >= L(N(N)) THEN 210 krahason numrin e rastit me konstanten e zbërthimit

200 N(N) = N(N) + 1 bërthamat e zbërthyera

210 NEXT N

220 M(1) = 0 tre llojet e bërthamave të reja

230 M(2) = 0

240 M(3) = 0

250 FOR N = 1 TO 1000 cikli sipas bërthamave

260 M(N(N)) = M(N(N)) + 1 bërthamat e reja të secilit lloj

270 NEXT N

280 PRINT T, M(1), M(2), M(3)

290 NEXT T

300 END

Programi NUMON.FOR

DIMENSION NUC ( 1000 ), NUM ( 3 ), ALAM ( 3 )

ALAM ( 1 ) = . 2

ALAM ( 2 ) = . 05

ALAM ( 3 ) = 0 .

DO 20 I = 1 , 1000

20 NUC ( I ) = 1

DO 90 J = 1 , 20

DO 40 N = 1 , 1000

NN = NUC ( N )

IF ( RANF ( 0 ) - ALAM ( NN ) ) 30, 40 , 40

30 NUC ( N) = NUC ( N ) + 1

40 CONTINUE

NUM ( 1 ) = 0

NUM ( 2 ) = 0

NUM ( 3 ) = 0

DO 80 N = 1 , 1000

NN = NUC ( N )

80 NUM ( NN ) = NUM ( NN ) + 1

90 PRINT 101 , J , NUM ( 1 ) , NUM ( 2 ), NUM ( 3 )

STOP

101 FORMAT ( 1X , 417 )

END

Page 259: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

258

Ushtrime

1. a. Shkruani zinxhirin e zbërthimit të 238

92U

b. Zgjidhni kohën më të gjatë të zbërthimit në këtë zinxhir dhe supozoni që të

gjitha zbërthimet e tjera bëhen në çast. Duke përdorur një program për zbërthimin

llogaritni numrin e produkteve të ndryshme si funksion i kohës derisa të kenë mbetur

vetëm një e dhjeta e 238

92U fillestar (të pastër).

c. Tani përfshini veç kohës më të gjatë të zbërthimit edhe atë që vjen pas saj në

zinxhirin e 238

92U dhe përsëritni pikën b.

2. a. Shkruani zinxhirin e zbërthimit të 235

92U.

b. . Zgjidhni kohën më të gjatë të zbërthimit në këtë zinxhir dhe supozoni që të

gjitha zbërthimet e tjera bëhen në çast. Duke përdorur një program për zbërthimin

llogaritni numrin e produkteve të ndryshme si funksion i kohës derisa të kenë mbetur

vetëm një e dhjeta e 235

92U fillestar (të pastër).

c. Tani përfshini veç kohës më të gjatë të zbërthimit edhe atë që vjen pas saj në

zinxhirin e 235

92U dhe përsëritni pikën b.

3. a. Shkruani zinxhirin e zbërthimit të 237

93Np.

b. . Zgjidhni kohën më të gjatë të zbërthimit në këtë zinxhir dhe supozoni që të

gjitha zbërthimet e tjera bëhen në çast. Duke përdorur një program për zbërthimin

llogaritni numrin e produkteve të ndryshme si funksion i kohës derisa të kenë mbetur

vetëm një e dhjeta e 237

93Np fillestar (të pastër).

c. Tani përfshini veç kohës më të gjatë të zbërthimit edhe atë që vjen pas saj në

zinxhirin e 237

93Np dhe përsëritni pikën b.

Page 260: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

259

KAPITULLI I IX

FIZIKA E TRUPIT TE NGURTE

9.1 Hyrje

Nga hyrja në Fizikën e trupit të ngurtë ka shumë shëmbuj të përdorimit të kompjuterit. Në

këtë kapitull ne do shikojmë katër përdorime : një mënyrë e thjeshtë për ndërtimin e zonave të

Briluenit dhe sipërfaqeve Fermi të elektroneve të lirë; një mënyrë për llogaritjen e përhapjes së

pulseve fononike në një rjetë një-dimensionale ; një mënyrë për vizatimin e diagramave në

varësi të q (relacioni i dispersionit) dhe për llogaritjen e densiteteve të gjendjeve për rjeta dy-

(ose më shumë) dimensinale; dhe një mënyrë për llogaritjen e sipërfaqeve enegji-k për

elektronet thuajse të lirë në dy (ose më shumë) dimensione.

9.2 Rjeta e kundërt

Eshte e dobishme të vizatohet me dorë një ndërtim i zonës Briluen në rjetën e kundërt.

Zgjidhni p.sh. ndërtimin për rastin më të thjeshtë : një rjetë katrore dy-dimensionale. Pasi ta

keni parë se si bëhet ndërtimi, kompjuteri mund tju lehtësojë nga shumë llogaritje. Eshte e

dobishme të shikoni shumë shembuj disa nga të cilat janë treguar në figurat 9.1 deri në 9.4 .

Figura 9.1 Ndërtimi i zonave të Briluenit për një rjetë

dy - dimensionale katrore të centruar. Janë vizatuar aq

bisektrica sa të kompletojnë deri shtatë zona; zona e

dytë, e tretë, e katërt dhe pesta janë mbushur me viza,

me pika ose me të zezë.

Page 261: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

260

Figura 9.2 Ndërtimi i zonave të Briluenit për një

rjetë dy- dimensionale fekzagonale. Janë vizatuar aq

bisetrica sa të konpletojnë pesë zona; zona e dytë, e

tretë, e katërt dhe e pestë janë mbushur me viza, me

pika ose me të zezë

Figura 9.3 Nërtimi i zonave të Briluenit për një rjetë

katërkëndëshe të centruar bashkë me rrathët e

Harrisonit për tre elektrone për qelizë. Sipërfaqja

Fermi ka një copëz brimore në zonën e dytë dhe

copëza të vogla elektrike në zonën e tretë.

Figura 9.4 Ndërtimi i zonave të Briluenit dhe

rrathëve të Harisonit për rjetën katërkëndëshe të

centruar me dy elektrone për qelizë. Sipërfaqja Fermi

ka një copëz të vogël brimore në zonën e parë dhe

copëza të vogla elektronike në zonën e dytë

Page 262: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

261

Programi për llogaritjen e bisektricave pingule me vektorët e rjetës së kundërt është mjaft i

thjeshtë . Në rastin dy-dimensional jepen vektorët e bazës së rjetës së drejtë (primitiva) (x1 , y1

), llogariten vektorët e bazës së rjetës së kundërt (primitiva) (x2 , y2 ).

Pikat e rjetës së kundërt janë thjeshtë shumëfishe të plota të vektorëve të bazës (i.x2 , i.x2 ).

Nëse pjerësia e vijës që bashkon çdo pikë të rjetës së kundërt me origjinën është S , pjerësia e

bisektricës (në dy dimensione) është negative dhe invers: -1/S . Çdo dy pika mbi vijën që

kalon nëpër pikën (1/2 i.x2 , 1/2 i. y2 ) dhe që ka pjerësi -1/S përcakton një kufi të zonave të

Briluenit. Programi që i kryen këto llogaritje është titulluar HARR

Programi HARR.BAS

100 PRINT “ DY VECTORET E RJETES SE DREJTE (X1, Y1, X2, Y2 ). “

110 INPUT X2, Y2, X3, Y3

120 A = ABS(X2*Y3 - Y2*X3) Sipërfaqja e rjettës së drejtë

130 X0 = 2*3.14159*Y3 / A Vektorët e rjetës së kundërt

140 Y0 = 2*3.14159*( - X3) / A

150 X1 = 2*3.14159*(-Y2) / A

160 Y1 = 2*3.14159*X2 / A

170 B = 4*3. 14159*3.14159 / A Sipërfaqja e rjetës së kundërt

180 I0 = INT(ABS(5*3.14159 / (X0 - X1))) Numri i pikave të rëndësishme të rjetës

së kundërt

190 FOR I = - I0 TO I0 Cikli për kalimin nëpër pikat e rjetës së

200 FOR J = - I0 TO I0 kundërt

210 X5 = I* X0 + J*X1 Pika e mesit midis origjinës dhe pikës së

220 Y5 = I*Y0 + J*Y1 radhës në rjetën e kundërt

230 PRINT “ PIKA E RJETES SE KUNDERT:” , X5, Y5

240 PRINT “BISEKTRICA: “

250 IF Y5 < >0 THEN 280 Nëse bisektrica është vertikale ose jo

260 PRINT X5 , “ - 5” , X5 , “ + 5 “ Kur bisektrica është vertkale

270 GOTO 320

280 S = - X5 / Y5 Kur bisektrica nuk është pingule

290 Y8 = Y5 / 2 + S*( - 5 - X5 / 2 )

300 Y9 = Y5 / 2 + S*( 5 - X5 / 2 )

310 PRINT “ - 5” , Y8, “ + 5 “ , Y9

320 NEXT J

330 NEXT I

340 PRINT “NUMRI I ELECTRONEVE / NJE CELULE ( OSE 0 TO STOP ) “ ;

350 INPUT N0

360 IF N0 = 0 THEN 410

370 N0 = N0 / A Numri i electroneve per njësi të sipërfaqes

380 R = SQR (2*3. 14159*N0 ) Rezja e rrethit të Harrison-it

390 PRINT “ REZJA FERMI = “ ; R

400 GOTO 340

410 END

Program HARR.FOR

Page 263: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

262

DATA X1D, Y1D, X2D, Y2D / 1. , 0. , 0. ,1 . / Vectors e rjetës së kundërt

A = ABS (X1D*Y2D - Y1D*X2D) Sipërfaqja e qelizës së rjetës së drejtë

X1R = 2. *3. 14159*Y2D / A Vektorët e rjetës së kundërt

Y1R = 2.*3. 14159*( - X2D) / A

X2R = 2. *3. 14159*( - Y1D) / A

Y2R = 2.*3. 14159*X1D / A

B = 4. *3. 14159*3.14159 / A Sipërfaqja e qelizës së rjetës së kundërt

I0 = 2*INT (ABS(5. *3.14159 / ( X1R - X2R))) - 1 Numri i pikave të

rëndësishme të rjetës së kundërt

DO 10 I = 1, I0

AI = I - I0

DO 10 J = 1, I0

AJ = J - I0

XRLP = AI*X1R +AJ*X2R Pika e mesit midis origjinës dhe

YRLP = AI*Y1R+AJ*Y2R pikës së radhës në rjetën e kundërt

PRINT 100, XRLP, YRLP

IF (YRLP) 20, 15, 20 Bisektricat vertikale

15 PRINT 104, XRLP, XRLP

GOTO 10

20 S = - XRLP / YRLP Pjerësia

YLFT = YRLP / 2 . +S*(-5. - XRLP/ 2. ) Bisektricat jo-verikale

YRT = YRLP / 2 . +S*(5. - XRLP / 2.)

PRINT 101, YLFT, YRT

10 CONTINUE

25 READ (5, 100) AN Numri i elektroneve për një qelizë

IF (AN) 40, 90, 40

40 AN = AN / A Numri i elektroneve për njësi sipërfaqeje

R = SQRT (2. *3.14159*AN) Rezja e rrethit të Harrisonit

PRINT 103, AN, R

GOTO 25

90 STOP

100 FORMAT (1X, 2F10.4)

101 FORMAT (1X, 4H - 5 , F10. 4, 7H +5 , F10 . 4)

102 FORMAT (F10 . 5)

103 FORMAT (1X, 2HN = , F8 . 2, 16H FERMI RADIUS = , F10 . 4)

104 FORMAT (1X, F10 . 4, 7H - 5 , F10 . 4, 7H + 5 )

END

9.3 Përhapja njëdimensionale e fononeve

Nganjëherë është e vështirë të kuptohen vetitë dispersive të një vargu (rjete) një

dimensional lineare , që është rasti më i thjeshtë i llogaritjeve të vibrimeve të rjetës. Si mundt

të kuptohet fakti që shpejtësia e grupit vS është zero në kufirin e zonës së Briluenit ndërsa

shpejtësia e fazes vp është e ndryshme nga zero. Duke përdorur kompjuterin mund të kuptohet

se cfarë ndodh me një puls (paketë) të valëve të rjetës gjatë përhapjes së tij.

Le ta zemë se në fillim kemi një puls në formën Gausiane (spektri Furie i tij ka formën e

shpërndarjes së Gausit) dhe fillon të përhapet . Secili komponent i pulsit zhvndoset gjatë

kohës t me vp t . nëse i mbledhim këto komponentë në kohën t merret pulsi pas kohës së

Page 264: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

263

përhapjes t . Nëse të gjithë komponentët e pulsit kanë të njëjtën shpejtësi vp atëhere ato

zhvendosen njëlloj përgjatë rjetës dhe forma e pulsit nuk ndryshon. Kjo ndodh kur pulsi ka

komponente vetëm nga zona e vazhduar afër qendrës së zonës së Briluenit. Në qoftë se disa

komponentë të valëve të rjetës (ato afër skajeve të zonës) kanë shpejtësi fazore më të vogël,

atëhetë këto mode më të ngadalta to tentojnë të mbeten prapa. Kur komponentet mblidhen në

një çast më vonë , forma e pulsit do të jetë e pulsit do jetë deformuar dhe shpejtësia e grupit

(shpejtësia me të cilën zhvendoset qendra e pulsit) do jetë më e vogël. Nëse disa komponentë

kanë vektorë valorë përtej kufirit të zonës së Briluenit , ato kanë praktikisht shpejtësi në

drejtim të kundërt ( si rezultat i periodicitetit, shpejtësia e modës është ajo që i takon një

vektor i rjetës së kundërt më tej). Kur vektori valor qendror i pulsit është në skaj të zonës,

pulsi deformohet me kalimin e kohës, por pulsi tenton të qëndrojë , kështu që shpejtësia e

grupit vg bëhet zero.

Programi që kryen llogaritjen e përhapjes së fononeve është quajtur PHON.BAS ose

PHON.FOR.

Program PHON.BAS

100 DIM F(97) , V(97)

110 PRINT “HAPI I RJETES (A) , VEKTORI VALOR QENDROR K , GJERESIA K”

120 INPUT A, K9, K8

130 P = 3 . 14159

140 I0 = 0

150 FOR K0 = K9 - 3*K8 TO K9 + 3*K8 STEP K8 / 16

160 I0 = I0 + 1

170 F ( I0 ) = EXP ( - ( K0 - K9)*( K0 - K9) / (K8*K8)) Pulsi Gausian

180 IF ABS(K0) > P / A THEN 230

190 IF K0 < > 0 THEN 210

200 K0 = 1E - 6

210 V(I0) = ABS(SIN(K0*A / 2 )) / K0 (k) në zonën e parë

220 GOTO 250

230 K = K0 - INT((K0 + P / A) / (2*P / A))*(2*P / A) v(k) e reduktuar për

240 V(I0) = ABS(SIN(K*A / 2)) / K zonën eparë

250 NEXT K0

260 PRINT “KOHA E PERHAPJES”;

270 INPUT T1

280 FOR X1 = - 10 TO 10 STEP 20 / 64 Hapi sipas x

290 I1 = 0

300 I2 = 0

310 I0 = 0

320 FOR K0 = K9 - 3*K8 TO K9 + 3*K8 STEP K8 / 16 Shumimi i komponenteve

330 I0 = I0 + 1

340 C0 = COS (K0*(X1 - V(I0)*T1))

350 I1 = I1 + C0*F(I0) Pjesa reale e pulsit

360 S0 = SIN(K0*(X1 - V(I0)*T1))

370 I2 = I2 - S0*F(I0) Pjesa imagjinae e pulsit

380 NEXT K0

390 I1 = I1 / 32

400 I2 = I2 / 32

405 PRINT X1, I1, I2 x, Re(pulse në x), Im( pulse në x)

Page 265: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

264

410 NEXT X1

420 GOTO 260 Rikthim për një kohë tjetër përhapje

430 END

Program PHON.FOR

REAL K, K8, K9,I1, I2, K0

DIMENSION F(97), V(97)

DATA A, K9, K8 / 3. 14159, .5, 1 . /

PI = 3. 14159

DO 10 I0 = 1 , 97

K0 = K9 - 3 . *K8 +(I0 - 1)*K8 / 16.

F(I0) = EXP( - (K0 - K9)*(K0 - K9) / ( K8*K8))

IF (ABS(K0) - PI / A) 3, 3, 7

3 IF (K0) 5, 4 , 5

4 K0 = 1 . E - 6

5 V(I0) = ABS(SIN(K0*A / 2 . )) / K0

GOTO 10

7 K = K0 - INT((K0 + PI / A) / (2 . *PI / A))*(2 . *PI / A)

V(I0) = ABS(SIN(K*A /2 . )) / K

10 CONTINUE

20 READ (5 , 100)T1

IF (T1 - 999 . ) 25, 50, 50

25 DO 40 IX = 1, 11

X1 = - 10 . + (IX - 1)*2.

I1 = 0.

I2 = 0.

DO 30 I0 = 1 , 97

K0 = K9 - 3 . *K8 + (I0 - 1)*K8 / 16 .

C0 = COS(K0*(X1 - V(I0)*T1))

I1 = I1 + C0*F(I0)

S0 = SIN(K0*(X1 - V(I0)*T1))

30 I2 = I2 - S0*F(I0)

I1 = I1 / 32.

I2 = I2 / 32 .

40 PRINT 101, X1, I1, I2

GOTO 20

50 STOP

100 FOORMAT(F10.5)

101 FORMAT(1X, 3E12 .4)

END

9.4 Lëkundjet e rjetës dy-dimensionale

Një shembull tjetër i përdorimit të kompjuterit në hyrjen e Fizikës së Trupit të ngurtë është

llogaritja e valëve të rjetës në dy-dimesione, ky është një shembull edhe i ilustrimit të faktit se

Page 266: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

265

se zgjidhjet analitike dhe llogaritjet me kompjuter ndihmojnë shumë së bashku. Kompjuteri

mund ti çfaqë me anë të vizualizimit zgjidhjet e nxjerra analitikisht.

Le të shqyrtojmë një rjetë katrore dy-dimensionale ku në nyje janë masa pikësore të njëjta ,

ku çdo masë është e lidhur me masat fqinje më të afërta me susta në drejtimet X,Y dhe XY (si

në figurën 9.5).

Figura 9.5 Gjeometria e vendosjes së masave fqinje dhe

forcat midis fqinjëve të afërt në rjetën katrore dy-

dimensionale.

Për thjeshtësi , sustat në drejtimet X dhe Y janë marë me të

njëjtën koeficient elasticiteti (k1 ), ndërsa susta në drejtimin XY (ajo që e lidh masën me

fqinjin mbas atij më të afërt) ka konstante elastike të ndryshme (k2 ). Ju mund ti shkruani vetë

ekuacionet e lëvizjes së çdo mase në drejtimin X dhe Y dhe të zgjidhni analitikisht sistemin e

ekuacioneve të lidhur. Rezultati për frekuencat e modeve si funksion i q=(qx ,qy ) ( kordinatat

koresponduese ne zonën e parë të Briluenit) është :

2

0

2 1

2

2

1

1

2

2 2

1

216

k

kP Q

k

kPS QR

k

kP Q

k

kPRQS[ ] ( ) ( )

ku:

Pq a

Qq a

R P S Qk k

m

x y

sin sin2 2

0

2 1 2

2 21 1

4 , , , dhe

Kompjuteri mund të përdoret për ta shfaqur këtë rezultat. Ju mund të kuptoni diçka nga

sjellja e zgjidhjes analitike ,por detajet e zgjidhjes kërkojnë llogaritje në kompjuter. Një

program që i kryen këto llogaritje është titulluar OMOFQ . Një mënyrë për ta çfaqur rezultatin

është duke përdorur një terminal (ose printer) ku karakteret e printuar në çdo pozicion

karakterizojnë vlerën e në çdo pozicion të dhënë nga (qx , qy ). Figura 9.6 tregon një plotim

të tillë.

Page 267: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

266

Figura 9.6 Plotimi i në funksion të q për një rjetë dy-dimensionale ku për fqinjqt

më të afërt është marë konstantja elastike 1 dhe për fqinjët pas atij më

të afërt është marë konstantja elastike 0.5 . Eshtë treguar një e katërta

e zonës së parë të Briluenit me origjinë në (0,0). Karakteret (numra dhe

shkronja) paraqesin madhësinë e në çdo pikë (qx , qy). Janë vizatuar

edhe disa konture me të njëjtë.

Programi OMOFQ.BAS

100 DIM Ë(11,11), D(26)

110 PRINT “KONSTANTJA E RJETES, MASA, K PER XX DHE YY, K PER XY: “

120 INPUT A, M,K1,K2

130 Q0 = 3 . 14159/A Kufiri i zonës së Briluenit

140 Ë9 = 4*SQR(K1*K2) / M Konnstantet e ekuacionit për 2

150 R = SQR(K1 / K2)

160 I8 = 0

170 PRINT “QX”, “QY” , “ OMEGA”

Page 268: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

267

180 FOR Q1 = 0 TO Q0 STEP Q0 / 10 Hapi sipas qx

190 I8 = I8 + 1

200 S = SIN(Q1*A / 2) Parametrat e ekuacionit për 2

210 P = S*S

220 R1 = 1 - P

230 Ë0 = 0

240 I9 = 0

250 FOR Q2 = 0 TO Q0 STEP Q0 / 10 Hapi sipas qy

260 I9 = I9 +1

270 S = SIN(Q2*A / 2)

280 Q =S*S

290 S1 = 1 - Q

300 S9 = R*R*(P - Q)*(P - Q) + ( 16 / (R*R))*P*R1*Q*S1

310 Ë2 = Ë9*(R*(P+Q) + (2 /R)*(P*S1 +Q*R1) - SQR(S9)) 2

320 Ë = SQR (Ë2)

330 Ë(I9 , I8 ) = Ë Ruhen vlerat e

340 PRINT Q1 , Q2, Ë

350 IF Ë < Ë0 THEN 370 Kërkohet maksimumi i

360 Ë0 = Ë

370 NEXT Q2

380 PRINT

390 NEXT Q1

400 D0 = 0

410 FOR I = 1 TO I9

420 FOR J = 1 TO I8

430 I0 = INT(25*Ë(I, J) / Ë0 + . 5) + 1

440 D(I0) = D(I0) +1 Densiteti i gjendjeve

450 NEXT J

460 NEXT I

470 PRINT “OMEGA” , “# @ OMEGA”

480 FOR I = 1 TO 26

490 Ë = (I - 1)*Ë0 / 25

500 PRINT Ë , D(I)

510 NEXT I

520 END

PROGRAMI OMOFQ.FOR

REAL M, KX, KY

DIMENSION OMEG (11, 11), DENS ( 26 )

DATA A , M, KX, KY / 3 . 14159, 1 . , 1 . , .1 /

Q0 = 3 . 14159 / A

OME = 4 . *SQRT(KX*KY) / M

R = SQRT( KX / KY )

DO 40 I = 1 , 11

QX = ( I - 1 )*Q0 / 10 .

S = SIN (QX*A / 2 . )

P = S*S

R1 = 1 . - P

OMMAX = 0 .

Page 269: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

268

DO 40 J = 1 , 11

QY = (J - 1 )*Q0 / 10 .

S = SIN (QY*A / 2 . )

Q = S*S

S1 = 1 . -Q

S9 = R*R* (P - Q 0* ( P - Q ) + ( 16 . / ( R*R))*P*R1*Q*S1

OMEG2 = OME*(R*(P + Q ) + ( 2 . / R )* (P*S1 + Q*R1) - SQRT(S9)) 2

OMEGA = SQRT (OMEG2 )

OMEG ( I, J ) = OMEGA

PRINT 100, QX, QY, OMEGA

40 OMMAX = AMAX1 ( OMMAX, OMEGA )

D0 = 0

DO 45 I = 1, 11

DO 45 J = 1, 11

I0 = INT (25 . *OMEG (I, J ) / OMMAX + . 5 ) + 1

45 DENS (I0 ) = DENS ( I0 ) + 1 .

DO 50 I = 1, 26

OMEGA = ( I - 1 )*OMMAX / 25 .

50 PRINT 101, OMEGA, DENS ( I )

STOP

100 FORMAT ( 1X, 3F10 . 4 )

101 FORMAT ( 1X, 2F10 . 4 )

END

9.5 Elektronet thuajse të lirë në rastin dy-dimensional

Shembulli i fundit i këtij kapitulli ka të bëjë me elektronet thuajse të lirë në dy (ose më

shumë) dimensione. Në rastin një-dimensional, në tekstet klasike tregohen se si gjenden

energjite E si funksion i vektorit valor k . Duke lejuar që elektronet afër skajeve të zonës së

Briluenit të bashkëveprojnë (sipas reflektimit Bragg) me elektronet që janë një vektor më tej

në rjetën e kundërt dhe që janë në gjendje thujse të degjeneruar sipas energjisë, çfaqen të çara

në spektrin (varësinë) e E nga k . Për të gjetur enegjinë e saktë të një gjendjeje në funksion të

elementeve matricorë M të bashkëveprimit të rjetës së kundërt si dhe energjive të

paperturbuara E1 dhe E2 të dy gjendjeve që bashkëveprojnë, përdoret teoria e perturbimeve

për degjenerimet e rendit të dytë (degjenerimi i dyfishtë). Rezultati është :

E E E E E M 1

241 2 1 2

2 2[( ) ( ) ] , dhe del direkt nga diagonalizimi i matricës 2x2 të

perturbimit.

Para se të kalojmë në llogaritje të gjithë strukturës së bandës, është e dobishme të

shikojmë llogaritjet pqr elektronet thuajse të lirë në dy-dimensione. Në dy-dimesione kemi

çarje energjetike (energji të ndryshme në pikat ngjitur kur kalojmë kufirin e zonës së

Briluenit) dhe çarje të vektorit valor (një ndryshim i k nëpër kufirin e zonës duke ndjekur të

njëjtin kontur të energjisë). Këto efekte dy-dimensionale janë ilustrim më i mirë se rasti një-

dimesional për të kuptuar termat si brima,këputje magnetike, sipërfaqe Fermi shumë-pjesëshe

etj.

Page 270: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

269

Rezultati një-dimensional është i mirë afër kufijve të zonës por jo aq i mirë larg kufijve të

zonës. E njëjta gjë është e vërtetë për përafrimin tonë të elektroneve thuajse të lirë në dy-

dimesione. në dy-dimesione afër qosheve të zonave të Briluenit, më shumë se dy gjendje të

ndara nga vektorët e rjetës së kundërt mund të kenë energji thuajse të degeneruar; në pika të

tilla është e përshtatëshme të diagonalizohet një matricë perturbimi më e gjerë (psh 3x3 ose

4x4, etj).

Kompjuteri përdoret në një mënyrë të drejtpërdrejtë. Kalohet me hap nëpër k hapësirën;

dhe për çdo k llogariten energjitë e gjithë gjendjeve të lidhura me k nëpërmjet vektorëve të

rjetës së kundërt, dhe zgjidhet gjendja më afër thuajse të degjeneruar. Pastaj diagonalizohet

matrica 2x2 për këto dy gjendje të lidhura me elementë përkatës të matricës M. Pasi llogaritet

energjia (që mund të printohet ose plotohet në terminal), lëvizet në një vlerë tjetër të k .

Rezultati jep energjitë e elektoneve thuajse të lirë të sistemit.

Një program që i bën këto llogaritje është NEARFR. Fogurat 9.7 (a) dhe b)) janë plotime

ku karakteret e printuara paraqesin energjinë në pikën (kx , ky ).

Në këtë kapitull u treguan vetëm 4 mënyra të përdorimit të kompjuterit për të kuptuar

feneomenet bazë të hyrjes në Fizikën e Trupit të Ngurtë . Por ka shumë aplikime të tjera si

llogaritja e nxehtësive specifike prej relacionit - q të matur në trupat e ngurtë; simulimi i

eksperimenteve me difraksion të rrexeve X, të neutroneve , dhe të elektroneve; llogaritje të

karakteristikave volt-amperike; llogaritje të strukturave të bandave për trupat e ngurtë amorfë;

etj.

Programi NEARFR.BAS

100 DIM D (26 )

110 PRINT “MAX . K” ;

120 INPUT K0

130 E0 = 2*K0*K0

140 FOR I = 1 TO 8

150 READ K ( I, 1 ), K ( I, 2 ), M ( I )

160 NEXT I

170 DATA 0, 2, . 2, 2, 0, . 2, 2, 2, . 2

180 DATA 0,4, .2, 2, 4, . 2, 4, 4, . 2, 4, 2, . 2, 4, 0, . 2

190 PRINT “KX” , “KY” , “ENERGY”

200 D0 = 0

210 FOR J = 0 TO 10

220 K2 = J*K0 / 10

230 FOR I = 0 TO 10

240 K1 = I*K0 / 10

250 E1 = K1*K1 + K2*K2

260 E8 = 9999

270 FOR I0 = 1 TO 8

280 E9 = (K1 - K ( I0,1 ))*(K1 - K( I0, 1)) + (K2 - K (I0, 2 ))*(K2 - K (I0, 2))

290 E7 = ABS (E1 - E9 )

300 IF E7 > E8 THEN 340

310 E2 = E9

320 E8 = E7

330 M = M ( I0 )

340 NEXT I0

350 IF E1 < > E2 THEN 370

Page 271: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

270

360 E2 = E1 + . 00001

370 E = (E1 + E2 ) / 2 + SGN(E1 - E2 )*SQR((E1 - E2 )*(E1 - E2 ) / 4 + M*M)

380 PRINT K1, K2, E

390 I0 = INT (25*E / E0 + . 5 ) + 1

400 D ( I0 ) = D ( I0 ) + 1

410 NEXT I

420 NEXT J

430 PRINT “ENERGY” , “ # ËITH ENERGY “

440 FOR I = 1 TO 26

450 E = ( I - 1 )*E0 / 25

460 PRINT E, D ( I )

470 NEXT I

480 END

Programi NEARFR.FOR

DIMENSION DENS ( 26 )

REAL KMAX, KX, KY,, K ( 8, 2 ), MATEL ( 8 )

DATA K (1, 1 ), K (1, 2 ), MATEL (1 ) / 0 . , 2 . , . 2 /

DATA K ( 2, 1 ), K ( 2, 2 ),MATEL ( 2 ) / 2 . ,0 . , .2 /

DATA K ( 3, 1 ), K ( 3, 2 ),MATEL ( 3 ) / 2 . ,2 . , . 2 /

DATA K ( 4, 1 ), K ( 4, 2 ),MATEL ( 4 ) / O . ,4 . , . 2 /

DATA K ( 5 , 1 ),K ( 5, 2 ), MATEL ( 5) / 2 . , 4 . , . 2 /

DATA K ( 6 , 1 ),K ( 6, 2 ),MATEL ( 6 0 / 4 . , 4 . , . 2 /

DATA K ( 7, 1 ),K ( 7, 2 ), MATEL ( 7 ) / 4 . , 2 . , . 2 /

DATA K ( 8, 1 ),K ( 8, 2 ), MATEL ( 8 ) / 4 . , 0 . , . 2 /

KMAX = 1 .

E0 = 2 . *KMAX*KMAX

D0 = 0 .

DO 50 J = 1 , 11

KY = ( J - 1 )*KMAX / 10 .

DO 50 I = 1 , 11

KX = ( I - 1 )*KMAX / 10 .

E1 = KX*KX + KY*KY

E8 = 9999 .

DO 40 I0 = 1 , 8

ERLP = ( KX - K ( I0 , 1 )**2 + ( KY - K ( I0, 2 ))**2

DELE = ABS (E1 - ERLP )

IF (DELE - E8 ) 35, 35, 40

35 E2 = ERLP

E8 = DELE

AM = MATEL (I0 )

40 CONTINUE

IF (E1 - E2 ) 47, 45, 47

45 E2 = E1 + . 00001

47 E = ( E1 + E2 ) / 2 . + SIGN(E1 - E2 )*SQRT((E1 - E2 )**2 / 4 . + AM**2)

PRINT 100, KX, KY, E

I0 = INT ( 25 . *E / E0 + . 5 ) + 1

50 DENS ( I0 ) = DENS (I0 )+ 1 .

Page 272: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

271

DO 60 I = 1, 26

E = ( I - 1 )*E0 / 25 .

60 PRINT 101, E, DENS (I )

STOP

100 FORMAT ( 1X, 3E12 . 4 )

101 FORMAT ( 1X, 2E12 . 4 )

END

Page 273: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

a. f(8.4) , f(8) = 16.63553, f(8.1) = 17.61549, f(8.3) =17.56492, f(8.6) = 18.50515,

f(8.7) = 18.82091

b. f(-1/3), f(-1) = 0.10000000, f(-0.75) = -0.07181250, f(-0.5) = -0.02475000,

f(-0.25) = 0.33493750, f(0) = 1.10100000.

c. f(0.25), f(0) = -1, f(0.1) = -0.62049958, f(0.2) = -0.28398668, f(0.3) = 0.00660095,

f(0.4) = 0.24842440.

d. f(0.9) , f(0.5) = -0.34409873, f(0.6) = -0.17684460, f(0.7) = 0.01375227,

f(0.8) = 0.223563362 , f(1.0) = 0.65809197.

e. f( ) , f(2.9) = -4.827866, f(3.0) = -4.240058, f(3.1) = -3.496909, f(3.2) = -2.596792,

f(3.4) = -0.3330587

f. f( /2) , f(1.1) = 1.964760 , f(1.2) = 2.572152, f(1.3) = 3.602102, f(1.4) = 5.797884,

f(1.5) = 14.10142.

g. f(1.15 , f(1) = 1.684370, f(1.1) = 1.949477 , f(1.2) = 2.199796, f(1.3) = 2.439189,

f(1.4) = 2.670324.

h. f(4.1) , f(3.6) = 1.15164956, f(3.8) = 0.80201036 , f(4.0) = 0.30663842, ,

f(4.2) = -0.35916618, f(4.4) = -1.23926000.

1. a.

1.h.

1.b.

3. 3 P4 (1/2) = 1.7083

1.c.

5.a

1.d

n x0 , x1 , .... , xn Pn (8.4)

1 8.3, 8.6 17.87833

2 8.3, 8.6, 8.7 17.87716

3 8.3, 8.6, 8.7, 8.1 17.81000

4 8.3, 8.6, 8.7, 8.1, 8.0 17.60859

n x0 , x1 , .... , xn Pn (4.1)

1 4.0, 4.2 -0.0262639

2 4.0, 4.2, 4.4 0.0005223

3 4.0, 4.2, 4.4, 3.8 -0.0022188

4 4.0, 4.2, 4.4, 3.8, 3.6 -0.0024334

n x0 , x1 , .... , xn Pn (-1/3 )

1 -0.5, -0.25 0.21504167

2 -0.5, -0.25, 0.0 0.16988889

3 -0.5, -0.25, 0.0, -0.75 0.17451652

4 -0.5, -0.25, 0.0, -0.75, -1.0 0.17451852

n x0 , x1 , .... , xn Pn (0.25)

1 0.2, 0.3 -0.13869287

2 0.2, 0.3, 0.4 -0.13259734

3 0.2, 0.3, 0.4, 0.1 -0.13277477

4 0.2, 0.3, 0.4, 0.1, 0.0 -0.13277246

n Gabimi Kufiri i gabimit

1 0.00118 0.00120

2 1.367 10-4

1.452 10-5

3 3.830 10-6

2.823 10-7

4 3.470 10-6

8.789 10-9

Page 274: HYRJE - bejoduka · përfaqëson edhe njësinë e matjes së kujtesës 1 bit. Psh numri që në sistemin me bazë 10 është 9 , në sistemin me bazë 2 është 1 23 + 0 22 + 0 21

5.b

1.e

5.c

1.f

5.d

1.g

7. f(1.09) 0.2826

n x0 , x1 , .... , xn Pn (0.25)

1 0.8, 1.0 0.44086280

2 0.8, 1.0, 0.7 0.43841352

3 0.8, 1.0, 0.7, 0.6 0.44198500

4 0.8,1.0, 0.7, 0.6, 0.5 0.44325624

n Gabimi Kufiri i gabimit

1 4.0523 10-2

4.5153 10-2

2 4.6296 10-3

4.6296 10-3

3 0 0

4 0 0

n x0 , x1 , .... , xn Pn (0.25)

1 3.1, 3.2 -3.12252

2 3.1, 3.2,3.0 -3.141593

3 3.1, 3.2,3.0,2.9 -3.141686

4 3.1, 3.2,3.0,2.9,3.4 -3.141590

n Gabimi Kufiri i gabimit

1 5.9210 10-3

6.0971 10-5

2 1.7455 10-4

1.8128 104

3 2.8798 10-6

4.5143 10-6

4 5.6320 107 5.8594 10

-7

n x0 , x1 , .... , xn Pn (0.25)

1 1.5,1.4 19.98002

2 1.5,1.4,1.3 23.67269

3 1.5,1.4,1.3,1.2 26.36966

4 1.5,1.4,1.3,1.2,1.1 28.49372

n Gabimi Kufiri i gabimit

1 2.7296 10-5

1.4080 10-9

2 5.1789 10-3

9.2215 10-3

n x0 , x1 , .... , xn Pn (0.25)

1 1.1,1.2 2.074637

2 1.1,1.2,1.0 2.076485

3 1.1,1.2,1.0,1.3 2.076244

4 1.1,1.2,1.0,1.3,1.4 2.076216