summaryrefslogtreecommitdiff
path: root/2378/CH1/EX1.18
diff options
context:
space:
mode:
Diffstat (limited to '2378/CH1/EX1.18')
-rw-r--r--2378/CH1/EX1.18/Exa_1_18.pngbin0 -> 54535 bytes
-rw-r--r--2378/CH1/EX1.18/Exa_1_18.sce64
2 files changed, 64 insertions, 0 deletions
diff --git a/2378/CH1/EX1.18/Exa_1_18.png b/2378/CH1/EX1.18/Exa_1_18.png
new file mode 100644
index 000000000..7d111b0c6
--- /dev/null
+++ b/2378/CH1/EX1.18/Exa_1_18.png
Binary files differ
diff --git a/2378/CH1/EX1.18/Exa_1_18.sce b/2378/CH1/EX1.18/Exa_1_18.sce
new file mode 100644
index 000000000..15bcc74d7
--- /dev/null
+++ b/2378/CH1/EX1.18/Exa_1_18.sce
@@ -0,0 +1,64 @@
+//numerical fourier analysis (note:this example is same as Exa_1_13)
+//Exa_1_18
+clc;
+clear;
+close;
+
+n=12;
+ //number of time stations
+m=5;
+ //number of harmonics required
+time=0.12; //time period
+
+x=[20000.0;34000.0;42000.0;49000.0;53000.0;70000.0;60000.0;36000.0;22000.0;
+ 16000.0;7000.0;0.0]';
+ //presure in N/m^2
+t=0.01:0.01:0.12; //time in second
+
+sumz=0.0;
+ //temporary variable
+for i=1:n //calculating the coefficients
+ sumz=sumz+x(i);
+end
+azero=2.0*sumz/n;
+ //first term of fourier series
+for ii=1:m
+ sums=0.0;
+ sumc=0.0;
+ for i=1:n
+ theta=2.0*%pi*t(i)*ii/time;
+ coss(i)=x(i)*cos(theta);
+ sinn(i)=x(i)*sin(theta);
+ sums=sums+sinn(i);
+ sumc=sumc+coss(i);
+ end
+ a(ii)=2.0*sumc/n;
+ //coefficient of cos terms
+ b(ii)=2.0*sums/n; //coefficient of sin term
+
+end
+
+
+//printing the table of values
+printf('Fourier series expansion of the function x(t)\n\n');
+printf('Data:\n\n');
+printf('Number of data points in one cycle = %3.0f \n',n);
+printf(' \n');
+printf('Number of Fourier Coefficients required = %3.0f \n',m);
+printf(' \n');
+printf('Time period = %8.6e \n\n',time);
+printf('Station i ')
+printf('Time at station i: t(i) ')
+printf('x(i) at t(i)')
+for i=1:12
+ printf('\n %8d%25.6e%27.6e ',i,t(i),x(i));
+end
+printf(' \n\n');
+printf('Results of Fourier analysis:\n\n');
+printf('azero=%8.6e \n\n',azero);
+printf('values of i a(i) b(i)\n');
+for i=1:5
+ printf('%10.0g %8.6e%20.6e \n',i,a(i),b(i));
+end
+
+ \ No newline at end of file