Project - Data Handling and Interpolation
Q) In a laboratory experiment, data of voltage and current has been recorded and the same is attached in an excel file ( VI.xlsx ). Read the excel file in the Matlab program and perform the interpolation in the range of -17.3:0.1:0.9. Generate the interactive plot for the interpolated data. Additionally, compute the current values for given voltages below and store them in a text file.
VV =[-17.2 -17.1 -13.8 -13.5 -13.0 -12.5 -11 -9 -5.76 -6 -1 0.11 0.25 0.5 0.61]
Answer:
Given: Voltage & Current is given.
And the data for Voltage & Current is saved in excel sheet (VI.xlsx)
Interpolation is done in the range of [-17.3:0.1:0.9]
Also, additional current is given as,
VV =[-17.2 -17.1 -13.8 -13.5 -13.0 -12.5 -11 -9 -5.76 -6 -1 0.11 0.25 0.5 0.61]
To find:
a) Perform the interpolation for the range using voltage and current data to generate interactive plot.
b) Additional generate interactive plot for the voltage only.
Solution:
For perfroming the above question, following program is used.
clc
clear all
file=xlsread('VI.xlsx')
format compact;
V=file(:,1)
l=file(:,2)
x=-17.3:0.1:0.9; ... (Interpolation range is given)
y=interp1(V,l,x,'spline');
subplot(211);
plot(V,l,'o',x,y)
grid on
title('voltage vs current')
xlabel('voltage')
ylabel('current')
grid on
%%
VV=[-17.2
-17.1
-13.8
-13.5
-13
-12.5
-11
-9
-5.76
-6
-1
0.11
0.25
0.5
0.61]
ll=interp1(V,l,VV)
z=[VV ll]
fileID = fopen('VVll.txt','w'); .... 'w' write permission
fprintf(fileID,'%6s %12s\n','VV','ll'); ....\n on new line
fprintf(fileID,'6.2f %12.8f\n',z);
fclose(fileID); .... fopen & fclose handle file pointer
Following solution is obtained in command window
file =
-17.3000 -28.0000
-17.1000 -24.0000
-17.0000 -19.0000
-16.8000 -14.0000
-16.5000 -9.0000
-16.0000 -6.0000
-15.0000 -4.0000
-14.0000 -3.0000
-12.0000 -2.0000
-10.0000 -1.3000
-8.0000 -1.0000
-5.0000 -0.6000
-2.0000 -0.3000
-0.2000 -0.1000
0.0900 0
0.1900 0
0.2700 0
0.3900 0.0100
0.4300 0.0300
0.5000 0.1700
0.5500 0.4200
0.6000 1.2300
0.6200 1.9900
0.6500 3.9100
V =
-17.3000
-17.1000
-17.0000
-16.8000
-16.5000
-16.0000
-15.0000
-14.0000
-12.0000
-10.0000
-8.0000
-5.0000
-2.0000
-0.2000
0.0900
0.1900
0.2700
0.3900
0.4300
0.5000
0.5500
0.6000
0.6200
0.6500
l =
-28.0000
-24.0000
-19.0000
-14.0000
-9.0000
-6.0000
-4.0000
-3.0000
-2.0000
-1.3000
-1.0000
-0.6000
-0.3000
-0.1000
0
0
0
0.0100
0.0300
0.1700
0.4200
1.2300
1.9900
3.9100
VV =
-17.2000
-17.1000
-13.8000
-13.5000
-13.0000
-12.5000
-11.0000
-9.0000
-5.7600
-6.0000
-1.0000
0.1100
0.2500
0.5000
0.6100
ll =
-26.0000
-24.0000
-2.9000
-2.7500
-2.5000
-2.2500
-1.6500
-1.1500
-0.7013
-0.7333
-0.1889
0
0
0.1700
1.6100
z =
-17.2000 -26.0000
-17.1000 -24.0000
-13.8000 -2.9000
-13.5000 -2.7500
-13.0000 -2.5000
-12.5000 -2.2500
-11.0000 -1.6500
-9.0000 -1.1500
-5.7600 -0.7013
-6.0000 -0.7333
-1.0000 -0.1889
0.1100 0
0.2500 0
0.5000 0.1700
0.6100 1.6100
The plot (figure) is attached below in the attachment.
And program and result are attached below.