Professional Documents
Culture Documents
Yona Toluna - 3 Kib - Tugas 4
Yona Toluna - 3 Kib - Tugas 4
Yona Toluna - 3 Kib - Tugas 4
NPM : 062040422356
Kelas : 3KIB
Mata Kuliah : Analisis Numerik
Dosen Pengampu : Dr. Yulianto Wasiran, M.M
1.
a. Metode Linier
% Syntax Interpolasi Linier
% By. Yona Toluna
clear;
clc;
disp('Program interpolasi untuk linier');
disp('================================');
x1=input('masukkan nilai x1= ');
x2=input('masukkan nilai x2= ');
y1=input('masukkan nilai y1= ');
y2=input('masukkan nilai y2= ');
x=input('masukkan nilai x= ');
y=((y2-y1)/(x2-x1))*(x-x1)+y1;
disp(['nilai y = ', num2str(y)]);
================================
nilai y = 7.816
================================
masukkan nilai x= 18
nilai y = 7.72
b. Metode Kuadratik
clear;
clc;
disp ( 'program interpolasi untuk kuadratik');
disp ('====================================');
x1=input('masukkan nilai x1= ');
y1=input('masukkan nilai y1= ');
x2=input('masukkan nilai x2= ');
y2=input('masukkan nilai y2= ');
x3=input('masukkan nilai x3= ');
y3=input('masukkan nilai y3= ');
x=input('masukkan nilai x= ');
y=y1*((x-x2)*(x-x3))/((x1-x2)*(x1-x3))+ y2*((x-x1)*(x-x3))/((x2-x1)*(x2-x3))+
y3*((x-x1)*(x-x2))/((x3-x1)*(x3-x2));
disp(['nilai y = ', num2str(y)]);
Program interpolasi untuk linier ===============================
masukkan nilai x1= 305
masukkan nilai x2= 310
masukkan nilai y1= 2559.1
masukkan nilai y2= 2568.2
masukkan nilai x= 307
nilai y = 2562.74
====================================
nilai y = 7.8035
====================================
masukkan nilai x= 18
nilai y = 7.708
C. Metode Lagrange
clc;clear;
%Interpolasi Lagrange
% by: Yona Toluna
syms x
disp(' PROGRAM METODE INTERPOLASI LANGRANGE ')
disp('==============================')
b=input('Banyak titik = ');
%menginputkan masing-masing titik
for i=1:b
fprintf('x%d',i)
bx(i)=input(' = ');
fprintf('y%d',i)
by(i)=input(' = ');
end
c=input('nilai yang dicari= ');
clc;
%menampilkan titik-titik yang sudah diinputkan ke layar
clc;
disp ('Titik Yang ditaksir: ');
c=c
disp('Titik-titik yang diketahui adalah sebagai berikut:');
for i=1:b
fprintf('(%6.3f,%6.3f)',bx(i),by(i));
end
%inisialisasi fx
fx=0; fprintf('\
n\n');
disp('Nilai masing-masing L(x)');
% mulai proses pencarian q(x), qx1, lx, dan px
for i=1:b
%inisialisasi qx
qx=1;
%perulangan untuk mencari qx
for j=1:b
if (i~=j)
qx=qx*(x-bx(j));
end
end
%mencari qx1 dengan substitusi x ke gx
qx1=subs(qx,x,bx(i));
%mencari lx
lx=qx/qx1;
lx1=collect(lx);
%menampilkan lx
fprintf('L%d(x) = ',i);
disp(lx1);
lx2=subs(lx1,x,c);
fprintf('L%d(c)= %5.6f\n',i);
disp(lx2);
%mencari fx
fx=fx+by(i)*lx;
end
%menyederhanakan fx menjadi px dan menampilkan ke layar
px=collect(fx);
fprintf('Hasilnya P(x)= ');
disp(px);
Nilai=subs(px,x,c);
fprintf('Nilai taksiran P(x)= ');
disp(Nilai);
c =
22.4000
Titik-titik yang diketahui adalah sebagai berikut:
( 5.000,11.600)(10.000,10.300)(15.000, 9.100)(20.000, 8.200)(25.000,
7.400)(30.000, 6.800)
L1(c)= -566618/48828125
L2(c)= 795093/9765625
L3(c)= -2664636/9765625
L4(c)= 8215961/9765625
L5(c)= 3791982/9765625
L6(c)= -1297257/48828125
c =
18
L1(c)= 168/15625
L2(c)= -273/3125
L3(c)= 1456/3125
L4(c)= 2184/3125
L5(c)= -312/3125
L6(c)= 182/15625
Hasil Running
L1(c)= 399/8000
L2(c)= -287469/464000
L3(c)= 22477/16000
L4(c)= 3211/16000
3.
A. Metode Langrange
clc;clear;
%Interpolasi Lagrange
% by: Dr. Yulianto
syms x
disp(' PROGRAM METODE INTERPOLASI LANGRANGE ')
disp('==============================')
b=input('Banyak titik = ');
%menginputkan masing-masing titik
for i=1:b
fprintf('x%d',i)
bx(i)=input(' = ');
fprintf('y%d',i)
by(i)=input(' = ');
end
c=input('nilai yang dicari= ');
clc;
%menampilkan titik-titik yang sudah diinputkan ke layar
clc;
disp ('Titik Yang ditaksir: ');
c=c
disp('Titik-titik yang diketahui adalah sebagai berikut:');
for i=1:b
fprintf('(%6.3f,%6.3f)',bx(i),by(i));
end
%inisialisasi fx
fx=0; fprintf('\
n\n');
disp('Nilai masing-masing L(x)');
% mulai proses pencarian q(x), qx1, lx, dan px
for i=1:b
%inisialisasi qx
qx=1;
%perulangan untuk mencari qx
for j=1:b
if (i~=j)
qx=qx*(x-bx(j));
end
end
%mencari qx1 dengan substitusi x ke gx
qx1=subs(qx,x,bx(i));
%mencari lx
lx=qx/qx1;
lx1=collect(lx);
%menampilkan lx
fprintf('L%d(x) = ',i);
disp(lx1);
lx2=subs(lx1,x,c);
fprintf('L%d(c)= %5.6f\n',i);
disp(lx2);
%mencari fx
fx=fx+by(i)*lx;
end
%menyederhanakan fx menjadi px dan menampilkan ke layar
px=collect(fx);
fprintf('Hasilnya P(x)= ');
disp(px);
Nilai=subs(px,x,c);
fprintf('Nilai taksiran P(x)= ');
disp(Nilai);
Hasil Running H1
c=
307
L1(c)= -27865171432495117187500/177120681036187546962826683
L2(c)= 14950089/30517578125
L3(c)= -1177304128/579833984375
L4(x) = - x^14/1153845000000000000 + (107329*x^13)/28846125000000000000 -
(42770891*x^12)/5769225000000000000 + (953173427*x^11)/104895000000000000 -
(6423312379*x^10)/839160000000000 + (19668046908317*x^9)/4195800000000000 -
(1806018061596323*x^8)/839160000000000 + (126305043297914401*x^7)/167832000000000 -
(676039574237300729*x^6)/3356640000000 + (68897049508354011211*x^5)/1678320000000 -
(11581081497288110217107*x^4)/1846152000000 + (4020573124173488110741*x^3)/5769225000 -
(5457105572940258503381*x^2)/102564000 + (16642564704767525711*x)/6660 -
2015331252232778480/37
L4(c)= 9752894424/1129150390625
L5(c)= -370227521664/12847900390625
L6(c)= 480301272/6103515625
L7(c)= -367823446848/1861572265625
L8(c)= 4720400901216/6072998046875
L9(c)= 4195911912192/9368896484375
L10(c)= -1770150337956/15960693359375
L11(x) = x^14/497967750000000000 - (53227*x^13)/6224596875000000000 +
(3506299*x^12)/207486562500000000 - (2557502713*x^11)/124491937500000000 +
(854664974213*x^10)/49796775000000000 - (8651534201377*x^9)/829946250000000 +
(472732688893981*x^8)/99593550000000 - (327883279332340393*x^7)/199187100000000 +
(23206498601605423003*x^6)/53116560000000 - (1407295288663605423769*x^5)/15934968000000 +
(21327163799078811902903*x^4)/1593496800000 - (78323027907334513523209*x^3)/53116560000 +
(4941868626796727991613*x^2)/44263800 - (438424046031315451613*x)/84312 +
131626322411453344475/1171
L11(c)= 242071841088/7147216796875
L12(c)= -809396588/91552734375
L13(c)= 10661549184/6195068359375
L14(c)= -5108658984/23590087890625
L15(c)= 222288192/16998291015625
Hasilnya P(x)=
(42262011103299606902317189572437963*x^13)/2229564181044517767394230531641145750000000
0000000 -
(8311718996522565250202258353487*x^14)/18728339120773949246111536465785624300000000000
000 -
(1022592860404572992572897142375899*x^12)/27215805924902054003550918946650000000000000
0+
(104766466961452239879333326859593169229*x^11)/228673249337899258194280054527297000000
00000000 -
(2052246127477681462038243321162529374569*x^10)/53456084260807618798662869889498000000
0000000 +
(583426439497711036914806043571581243138443*x^9)/2494617265504355543937600594843240000
00000000 -
(1119112354522036965197787329836417112894666809*x^8)/104773925151182932845379224983416
0800000000000 +
(529605429497388228294369282033763535672389553*x^7)/1425495580288203167964343197053280
000000000 -
(296060835864091060267134061843192827536264139077*x^6)/2993540718605226652725120713811
888000000000 +
(666922543454355906205462550174335092897595048763*x^5)/3326156354005807391916800793124
3200000000 -
(7545432869797892285310538693066780160316147729991*x^4)/247586074471108971278017502646
0960000000 +
(41221762728776434257554916457181518313045579789*x^3)/12241062550987157506942769569200
0000 -
(212849861595817102623042532899766886620512040023617519*x^2)/8323706275899532998271793
984793610800000 +
(591816271679793450007042783412706850591955489464139*x)/495458706898781726087606784809
143500 - 423705425580107822514432259805768331777967/16362491881150883143006065
c=
307
L2(c)= 14950089/30517578125
L3(c)= -1177304128/579833984375
L4(c)= 9752894424/1129150390625
L5(c)= -370227521664/12847900390625
L6(c)= 480301272/6103515625
L7(c)= -367823446848/1861572265625
L9(c)= 4195911912192/9368896484375
L10(c)= -1770150337956/15960693359375
L11(c)= 242071841088/7147216796875
L12(c)= -809396588/91552734375
L13(c)= 10661549184/6195068359375
L14(c)= -5108658984/23590087890625
Hasilnya P(x)=
(14655168817323799004790350291*x^14)/12611676175605353027684536340596380000000000000 -
(819949549460523174241714030004549*x^13)/165152902299593908695868928269714500000000000
000 +
(99232492834596306818044015076089*x^12)/10079928120334094075389229239500000000000000 -
(30509754607156668987322916063197268653*x^11)/2540813881532213979936445050303300000000
000000 +
(199282178106311748923643636461827707827*x^10)/197985497262250439995047666257400000000
00000 -
(11334407042000838645570594757002319821541*x^9)/18478646411143374399537782184024000000
00000 +
(108742647986107145114501575280093993157664099*x^8)/3880515746340108623902934258645040
0000000000 -
(51478036418783399104216678868114032755050587*x^7)/52796132603266783998679377668640000
000000 +
(28786817082616902885668385556170725774357560151*x^6)/11087187846686024639722669310414
4000000000 -
(38920847419361369526136069387392219117705695687*x^5)/73914585644573497598151128736096
0000000 +
(66740563762819241279566380415914403985816857391*x^4)/83362314636737027366335859476800
00000 -
(4012060877159151851436851998047722194344395021*x^3)/453372687073598426183065539600000
0+
(20723193621055050707049479653507686593948899195293467*x^2)/30828541762590862956562199
9436800400000 -
(230553840082064408814907278923338184747347835778329*x)/734012899109306260870528570087
62000 + 41279216205021872784974898328205165110231/606018217820403079370595
Hasil Running Hg
Titik Yang ditaksir:
c=
307
L1(c)= -27865171432495117187500/177120681036187546962826683
L2(c)= 14950089/30517578125
L3(x) = x^14/3999476250000000000 - (17909*x^13)/16664484375000000000 +
(16117*x^12)/7517812500000000 - (1265279*x^11)/480937500000000 +
(2304954901*x^10)/1038825000000000 - (117772879979*x^9)/86568750000000 +
(45477237013199*x^8)/72717750000000 - (10614921824944921*x^7)/48478500000000 +
(195044449828318321*x^6)/3324240000000 - (2211457410199790089*x^5)/184680000000 +
(35262396163605200867*x^4)/19245600000 - (12421548034580794348523*x^3)/60944400000 +
(11078961891207934990429*x^2)/711018000 - (315776872693675964549*x)/430920 +
143952232302341320/9
L3(c)= -1177304128/579833984375
L4(c)= 9752894424/1129150390625
L5(c)= -370227521664/12847900390625
L6(c)= 480301272/6103515625
L7(c)= -367823446848/1861572265625
L8(c)= 4720400901216/6072998046875
L9(c)= 4195911912192/9368896484375
L10(x) = - x^14/247117500000000000 + (106579*x^13)/6177937500000000000 -
(6024881*x^12)/176512500000000000 + (1466553709*x^11)/35302500000000000 -
(49065727351*x^10)/1412100000000000 + (29834858389051*x^9)/1412100000000000 -
(19040891539502821*x^8)/1976940000000000 + (1322152633909275209*x^7)/395388000000000 -
(200748569650317347*x^6)/225936000000 + (101561869573069805813*x^5)/564840000000 -
(1540844896756457221427*x^4)/56484000000 + (1062168418852356637559*x^3)/353025000 -
(15028525177739224504937*x^2)/65898000 + (1167877205393874981973*x)/109830 -
120344066204757343520/523
L10(c)= -1770150337956/15960693359375
L11(c)= 242071841088/7147216796875
L12(c)= -809396588/91552734375
L13(c)= 10661549184/6195068359375
L14(c)= -5108658984/23590087890625
L15(c)= 222288192/16998291015625
Hasilnya P(x)=
(1681400837150409533988926478581*x^14)/23410423900967436557639420582232030375000000000
00 -
(8553897259233877702539275559772019*x^13)/27869552263056472092427881645514321875000000
00000 +
(207085555766190911439286408084813*x^12)/34019757406127567504438648683312500000000000 -
(21227665562869722625821614713647781081*x^11)/2858415616723740727428500681591212500000
000000 +
(83209317034818393972503371582670468419*x^10)/1336402106520190469966571747237450000000
0000 -
(118339813896550272529653031077966491596199*x^9)/3118271581880444429922000743554050000
0000000 +
(227117392637856994111719400340765087795282983*x^8)/1309674064389786660567240312292701
00000000000 -
(107537694226220443439935130925664418589247037*x^7)/1781869475360253959955428996316600
00000000 +
(96236645073313063529182469634683353674277997*x^6)/59870814372104533054502414276237760
0000 -
(16945556100264151913604071441536168240611894643*x^5)/51971193031340740498700012392567
5000000 +
(191820540121240974605010567038434340991741545549*x^4)/3868532413611077676219023478845
2500000 -
(33551940477260332865620043745053490467126542889*x^3)/61205312754935787534713847846000
000 +
(34667636617266926646729341774494065141610823824930609*x^2)/83237062758995329982717939
8479361080000 -
(3857688595496565237974325397279303585810569608158327*x)/19818348275951269043504271392
36574000 + 138166682391096548535977999011154225239654/3272498376230176628601213
Hasil Running Hg
Program interpolasi untuk linier
================================
masukkan nilai x1= 305
masukkan nilai x2= 310
masukkan nilai y1= 2559.1
masukkan nilai y2= 2568.2
masukkan nilai x= 307
nilai y = 2562.74 KJ/Kg