summaryrefslogtreecommitdiff
path: root/249/CH3/EX3.2
diff options
context:
space:
mode:
Diffstat (limited to '249/CH3/EX3.2')
-rwxr-xr-x249/CH3/EX3.2/3_02.sce63
1 files changed, 37 insertions, 26 deletions
diff --git a/249/CH3/EX3.2/3_02.sce b/249/CH3/EX3.2/3_02.sce
index a2a1ef1b6..bb129725c 100755
--- a/249/CH3/EX3.2/3_02.sce
+++ b/249/CH3/EX3.2/3_02.sce
@@ -1,26 +1,37 @@
-clear
-clc
-CA=[10;8;6;5;3;2;1];//mol/litre
-T=[0;20;40;60;120;180;300];//sec
-//plot(T,CA)
-//xlabel('Time(sec)');ylabel('CA(mol/litre)');
-//From graph y=-dCA/dt at different points are
-y=[-0.1333;-0.1031;-0.0658;-0.0410;-0.0238;-0.0108;-0.0065];
-//Guessing nth rate order
-//rA=kCA^n
-//log(-dCA/dt)=logk+nlogCA
-for i=1:7
-log_y(i)=log10(y(i));
-log_CA(i)=log10(CA(i));
-end
-plot(log_CA,log_y)
-xlabel('logCA');ylabel('log(-dCA/dt)')
-coeff1=regress(log_CA,log_y);
-n=coeff1(2);
-k=-10^(coeff1(1));
-printf("\n After doing linear regression,the slope and intercept of the graph is %f , %f",coeff(2),coeff(1))
-printf("\n The rate equation is therefore given by %f",k)
-printf("CA^1.375 mol/litre.sec")
-disp('The answer slightly differs from those given in book as regress fn is used for calculating slope and intercept')
-
-
+clear
+clc
+function [coefs]=regress(x,y)
+coefs=[]
+ if (type(x) <> 1)|(type(y)<>1) then error(msprintf(gettext("%s: Wrong type for input arguments: Numerical expected.\n"),"regress")), end
+ lx=length(x)
+ if lx<>length(y) then error(msprintf(gettext("%s: Wrong size for both input arguments: same size expected.\n"),"regress")), end
+ if lx==0 then error(msprintf(gettext("%s: Wrong size for input argument #%d: Must be > %d.\n"),"regress", 1, 0)), end
+ x=matrix(x,lx,1)
+ y=matrix(y,lx,1)
+ xbar=sum(x)/lx
+ ybar=sum(y)/lx
+ coefs(2)=sum((x-xbar).*(y-ybar))/sum((x-xbar).^2)
+ coefs(1)=ybar-coefs(2)*xbar
+endfunction
+CA=[10;8;6;5;3;2;1];//mol/litre
+T=[0;20;40;60;120;180;300];//sec
+//plot(T,CA)
+//xlabel('Time(sec)');ylabel('CA(mol/litre)');
+//From graph y=-dCA/dt at different points are
+y=[-0.1333;-0.1031;-0.0658;-0.0410;-0.0238;-0.0108;-0.0065];
+//Guessing nth rate order
+//rA=kCA^n
+//log(-dCA/dt)=logk+nlogCA
+for i=1:7
+log_y(i)=log10(y(i));
+log_CA(i)=log10(CA(i));
+end
+plot(log_CA,log_y)
+xlabel('logCA');ylabel('log(-dCA/dt)')
+coeff1=regress(log_CA,log_y);
+n=coeff1(2);
+k=-10^(coeff1(1));
+printf("\n After doing linear regression,the slope and intercept of the graph is %f , %f",coeff(2),coeff(1))
+printf("\n The rate equation is therefore given by %f",k)
+printf("CA^1.375 mol/litre.sec")
+disp('The answer slightly differs from those given in book as regress fn is used for calculating slope and intercept') \ No newline at end of file