summaryrefslogtreecommitdiff
path: root/Linear_Control_Systems_by_B_S_Manke/1-INTRODUCTION.ipynb
diff options
context:
space:
mode:
Diffstat (limited to 'Linear_Control_Systems_by_B_S_Manke/1-INTRODUCTION.ipynb')
-rw-r--r--Linear_Control_Systems_by_B_S_Manke/1-INTRODUCTION.ipynb467
1 files changed, 467 insertions, 0 deletions
diff --git a/Linear_Control_Systems_by_B_S_Manke/1-INTRODUCTION.ipynb b/Linear_Control_Systems_by_B_S_Manke/1-INTRODUCTION.ipynb
new file mode 100644
index 0000000..737b769
--- /dev/null
+++ b/Linear_Control_Systems_by_B_S_Manke/1-INTRODUCTION.ipynb
@@ -0,0 +1,467 @@
+{
+"cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "# Chapter 1: INTRODUCTION"
+ ]
+ },
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 1.6_10: final_value.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:final_value\n",
+"// example 1.6.10\n",
+"//page 13\n",
+"syms t s;\n",
+"F=4/(s^2+2*s)\n",
+"x=s*F\n",
+"x=simple(x)\n",
+"z=limit(x,s,0);//final value theorem\n",
+"z=dbl(z);\n",
+"disp(z,'f(0+)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 1.6_1_iii: inverse_laplace_transform.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:inverse_laplace_transform\n",
+"// example 1.6.1.(iii)\n",
+"//page 8\n",
+"// F(s)=1/(s^2+4s+8)\n",
+"s =%s ;\n",
+"syms t ;\n",
+"disp(1/(s^2+4*s+8),'F(s)=')\n",
+"f=ilaplace(1/(s^2+4*s+8),s,t)\n",
+"disp (f,' f(t)=')//result"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 1.6_1_ii: inverse_laplace_transform.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:inverse_laplace_transform\n",
+"// example 1.6.1.(ii)\n",
+"//page 7\n",
+"// F(s)=s+6/(s(s^2+4s+3))\n",
+"s =%s ;\n",
+"syms t ;\n",
+"[A]= pfss((s+6)/(s*(s^2+4*s+3))) // partial fraction of F(s)\n",
+"A(1)=2/s;\n",
+"F1 = ilaplace (A(1),s,t)\n",
+"F2 = ilaplace (A(2),s,t)\n",
+"F3 = ilaplace (A(3),s,t)\n",
+"F=F1+F2+F3;\n",
+"disp (F,' f (t)=')//result"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 1.6_1_i: inverse_laplace_transform.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:inverse_laplace_transform\n",
+"// example 1.6.1.(i)\n",
+"//page 7\n",
+"// F(s)=1/(s*(s+1))\n",
+"s =%s ;\n",
+"syms t ;\n",
+"[A]=pfss(1/((s)*(s+1))) // partial fraction of F(s)\n",
+"F1 = ilaplace (A(1),s,t)\n",
+"F2 = ilaplace (A(2),s,t)\n",
+"F=F1+F2;\n",
+"disp (F,' f(t)=')//result"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 1.6_1_iv: inverse_laplace_transform.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:inverse_laplace_transform\n",
+"// example 1.6.1.(iv)\n",
+"//page 8\n",
+"// F(s)=s+2/(s^2+4s+6)\n",
+"s =%s ;\n",
+"syms t ;\n",
+"disp((s+2)/(s^2+4*s+6),'F(s)=')\n",
+"F=ilaplace((s+2)/(s^2+4*s+6),s,t)\n",
+"disp (F,' f(t)=')//result"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 1.6_1_v: inverse_laplace_transform.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:inverse_laplace_transform\n",
+"// example 1.6.1.(v)\n",
+"//page 8\n",
+"// F(s)=5/(s(s^2+4s+5))\n",
+"s =%s ;\n",
+"syms t ;\n",
+"[A]= pfss (5/(s*(s^2+4*s+5))) // partial fraction of F(s)\n",
+"F1= ilaplace (A(1),s,t)\n",
+"F2= ilaplace (A(2),s,t)\n",
+"F=F1+F2;\n",
+"disp (F,'f(t)=')//result"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 1.6_1_vi: program_laplace_transform.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:program_laplace_transform\n",
+"//example 1.6.1.(v)\n",
+"//page 9\n",
+"//this problem is solved in two parts because in this problem pfss function donot work.So, First we find partial fraction using method as we do in maths and then secondly we find inverse laplace transform as usual.\n",
+"// partial fraction \n",
+"s=%s\n",
+"syms t;\n",
+"num=(s^2+2*s+3);\n",
+"den=(s+2)^3;\n",
+"g=syslin('c',num/den);\n",
+"rd=roots(den);\n",
+"[n d k]=factors(g)\n",
+"a(3)=horner(g*d(1)^3,rd(1))\n",
+"a(2)=horner(derivat(g*d(1)^3),rd(1))\n",
+"a(1)=horner(derivat(derivat(g*d(1)^3)),rd(1))\n",
+"//inverse laplace\n",
+"// partial fraction will be: a(1)/(s+1)+a(2)/((s+2)^2)+a(3)/((s+2)^3)\n",
+"F1 = ilaplace (1/d(1),s,t)\n",
+"F2 = ilaplace (-2/(d(1)^2),s,t)\n",
+"F3 = ilaplace (2*1.5/(d(1)^3),s,t)\n",
+"F=F1+F2+F3\n",
+"disp (F,' f(t)=')//result"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 1.6_2: solution_of_differential_equation.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:solution_of_differential equation\n",
+"// example 1.6.2\n",
+"//page 9\n",
+"//after taking laplace transform and applying given condition, we get :\n",
+"//X(s)=2s+5/(s(s+4))\n",
+"s=%s;\n",
+"syms t\n",
+"[A]=pfss((2*s+5)/(s*(s+4)))\n",
+"A(1)=1.25/s\n",
+"F1 =ilaplace(A(1),s,t)\n",
+"F2 = ilaplace(A(2),s,t)\n",
+"f=F1+F2;\n",
+"disp (f,'f(t)=')//result"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 1.6_3: solution_of_differential_equation.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:solution_of_differential_equation\n",
+"// example 1.6.3\n",
+"//page 10\n",
+"//after taking laplace transform and applying given condition, we get :\n",
+"//X(s)=1/(s^2+2s+2)\n",
+"s=%s;\n",
+"syms t\n",
+"f = ilaplace(1/(s^2+2*s+2),s,t);\n",
+"disp (f,'f(t)=')//result"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 1.6_4: solution_of_differential_equation.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:solution_of_differential_equation\n",
+"// example 1.6.4\n",
+"//page 10\n",
+"//after taking laplace transform and applying given condition, we get :\n",
+"//Y(s)=(6*s+6)/((s-1)*(s+2)*(s+3))\n",
+"s=%s;\n",
+"syms t\n",
+"[A]=pfss((6*s+6)/((s-1)*(s+2)*(s+3)))\n",
+"F1 = ilaplace(A(1),s,t)\n",
+"F2 = ilaplace(A(2),s,t)\n",
+"F3 = ilaplace(A(3),s,t)\n",
+"F=F1+F2+F3;\n",
+"disp (F,'f(t)=')//result"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 1.6_5: initial_value.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:initial_value\n",
+"// example 1.6.5\n",
+"//page 11\n",
+"//I(s)=(C*s/(RCs+1))*E(s)\n",
+"//given: E(s)=100/s,R=2 megaohm ,C=1 uF\n",
+"// so, I(s)=(((1*10^-6)*s)/(2*s+1))*(100/s)\n",
+"syms t\n",
+"p=poly([0 10^-6],'s','coeff');\n",
+"q=poly([1 2],'s','coeff');\n",
+"r=poly([0 1],'s','coeff');\n",
+"F1=p/q;\n",
+"F2=1/r;\n",
+"F=F1*F2\n",
+"f=ilaplace(F,s,t);\n",
+"z=limit(f,t,0);//initial value theorem\n",
+"z=dbl(z);\n",
+"disp(z,'i(0+)=')"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 1.6_7: final_value.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:final_value\n",
+"// example 1.6.7\n",
+"//page 12\n",
+"//X(s)=100/(s*(s^2+2*s+50))\n",
+"p=poly([100],'s','coeff');\n",
+"q=poly([0 50 2 1],'s','coeff');\n",
+"F=p/q;\n",
+"syms s\n",
+"x=s*F;\n",
+"y=limit(x,s,0);//final value theorem\n",
+"y=dbl(y)\n",
+"disp(y,'x(inf)=')//result"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 1.6_8: steady_state_value.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:steady_state_value\n",
+"// example 1.6.7\n",
+"//page 12\n",
+"//X(s)=s/(s^2*(s^2+6*s+25))\n",
+"p=poly([0 1],'s','coeff');\n",
+"q=poly([0 0 25 6 1],'s','coeff');\n",
+"F=p/q;\n",
+"syms s\n",
+"x=s*F;\n",
+"y=limit(x,s,0);//final value theorem\n",
+"y=dbl(y)\n",
+"disp(y,'x(inf)=')//result"
+ ]
+ }
+,
+{
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "## Example 1.6_9: initial_values.sce"
+ ]
+ },
+ {
+"cell_type": "code",
+ "execution_count": null,
+ "metadata": {
+ "collapsed": true
+ },
+ "outputs": [],
+"source": [
+"//Caption:initial_values\n",
+"// example 1.6.7\n",
+"//page 13\n",
+"//F(s)=(4*s+1)/(s^3+2*s)\n",
+"s=%s;\n",
+"syms t;\n",
+"F=(4*s+1)/(s^3+2*s)\n",
+"f = ilaplace (F,s,t);\n",
+"y=limit(f,t,0);//initial value theorem\n",
+"y=dbl(y);\n",
+"disp(y,'f(0+)=')\n",
+"// since F'(s)=sF(s)-f(0+) where L(f'(t))=F'(s)=F1\n",
+"F1=(4*s+1)/(s^2+2)\n",
+"f1= ilaplace(F1,s,t);\n",
+"y1=limit(f1,t,0);//initial value theorem\n",
+"y1=dbl(y1);\n",
+"disp(y1,'f_prime(0+)=')\n",
+"// since F''(s)=(s^2)*F(s)-s*f(0+)-f'(0+) where L(f''(t))=F''(s)=F2\n",
+"F2=(s-8)/(s^2+2)\n",
+"f2= ilaplace(F2,s,t);\n",
+"y2=limit(f2,t,0);//initial value theorem\n",
+"y2=dbl(y2);\n",
+"disp(y2,'f_doubleprime(0+)=')"
+ ]
+ }
+],
+"metadata": {
+ "kernelspec": {
+ "display_name": "Scilab",
+ "language": "scilab",
+ "name": "scilab"
+ },
+ "language_info": {
+ "file_extension": ".sce",
+ "help_links": [
+ {
+ "text": "MetaKernel Magics",
+ "url": "https://github.com/calysto/metakernel/blob/master/metakernel/magics/README.md"
+ }
+ ],
+ "mimetype": "text/x-octave",
+ "name": "scilab",
+ "version": "0.7.1"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 0
+}