Python/C2/Using-Sage/English-timed
From Script | Spoken-Tutorial
Timing | Narration |
---|---|
0:00 | Welcome to the tutorial on 'Using Sage'. |
0:02 | At the end of this tutorial, you will be able to,
|
0:16 | Before beginning this tutorial,we would suggest you to complete the tutorial on "Getting started with Sage". |
0:22 | Let us begin with Calculus. |
0:24 | We shall be looking at limits, differentiation, integration, and Taylor polynomial. |
0:30 | We have our Sage notebook running. |
0:32 | In case, you don't have it running, start is using the command, sage --notebook. |
0:39 | So type sage and specify notebook. |
0:45 | So to find the limit of the function x into sin(1/x), at x=0, we say by typing it lim(x*sin(1/x),x=0) |
1:07 | We get the limit to be 0, as expected. |
1:11 | It is also possible to limit a point from one direction. For example, let us find the limit of 1/x at x=0, when approaching from the positive side. |
1:23 | lim within brackets (1/x, x=0, dir='right')
|
1:32 | To find the limit from the negative side, we say, |
1:36 | lim(1/x, x=0, dir='left') |
1:45 | Let us see how to perform differentiation, using Sage. |
1:51 | We shall find the differential of the expression exp of (sin(x squared)) by x with respect to x. |
2:11 | For this, we shall first define the expression, and then use the diff function to obtain the differential of the expression. |
2:21 | So we can type var('x)
f=exp of (sin x squared)/x and then third line you can type diff(f,x) |
2:44 | We can also obtain the partial differentiation of an expression w.r.t one of the variables. |
2:51 | Let us differentiate the expression exp(sin (y - x squared))/x w.r.t x and y. |
3:07 | that is with respect to x and y. |
3:10 | so you can type var('x y') |
3:15 | second line you can type f=exp(sin(y - x squared))by x |
3:26 | then you can type diff(f,x) then next line you can type diff(f,y) |
3:43 | Thus we get our partial differential solution. |
3:51 | Now, let us look at integration. |
3:53 | We shall use the expression obtained from the differentiation that we did before, diff(f, y) which gave us the expression ---e^(sin(-x squared + y)) multiplied by cos(-x squared plus y) by x. |
4:15 | The integrate command is used to obtain the integral of an expression or function. |
4:21 | So you can type integrate(e^(sin(-x squared plus y))multiplied by cos(-x squared +y)by x,y) |
4:39 | As we can see,we get back the correct expression. |
4:44 | The minus sign being inside or outside the sin function doesn't change much. |
4:48 | Now, let us find the value of the integral between the limits 0 and pi/2. |
4:55 | So for that you can type integral(e^(sin(-x squared plus y))multiplied by cos(-x squared plus y) by x,y,0,pi/2) |
5:11 | Hence we get our solution for definite integration. |
5:15 | Now, let us see how to obtain the Taylor expansion of an expression using sage. |
5:20 | Let us obtain the Taylor expansion of (x + 1) raised to n up to degree 4 about 0. |
5:27 | So for that you can type var of ('x n') then type taylor within brackets((x+1) raised to n,x,0,4) |
5:42 | We easily got the Taylor expansion,using the taylor function taylor() function. |
5:49 | So this brings us to the end of the features of Sage for Calculus, that we will be looking at. |
5:56 | For more, look at the Calculus quick-ref from the Sage Wiki. |
6:03 | Next let us move on to Matrix Algebra. |
6:07 | Let us begin with solving the equation Ax = v, where A is the matrix matrix ([[1,2], [3,4]]) and v is the vector vector ([1,2]). |
6:19 | So, to solve the equation, Ax = v we simply say |
6:23 | A=matrix ([1,2] comma [3,4]) then v is equal to vector([1,2]) |
6:35 | then x=A dot solve underscore right(v) |
6:50 | then you have to type |
7:01 | then type x |
7:07 | To solve an equation, xA = v we simply say |
7:14 | x=A dot solve underscore left(v) |
7:25 | then type x |
7:32 | The left and right here, denote the position of A, relative to x. |
7:36 | Now, let us look at Graph Theory in Sage. |
7:39 | We shall look at some ways to create graphs and some of the graph families available in Sage. |
7:45 | The simplest way to define an arbitrary graph is to use a dictionary of lists. |
7:49 | We create a simple graph by using the Graph() function. |
7:53 | So G=Graph({0:[1,2,3], 2:[4]}) and hit shift enter |
8:13 | To view the visualization of the graph, we say |
8:17 | G.show() |
8:24 | Similarly, we can obtain a directed graph using the DiGraph function. |
8:31 | So ,you have to type G=DiGraph that is D and G are capital ({0 colon [1,2,3],2 colon[4]}) and hit shift enter. |
8:59 | Sage also provides a lot of graph families which can be viewed by typing graph.<tab>. |
9:04 | Let us obtain a complete graph with 5 vertices and then show the graph. |
9:09 | So you can type there G=graphs dot CompleteGraph(5) then type G dot show() |
9:28 | Sage provides other functions for Number theory and Combinatorics. |
9:35 | Let's have a glimpse of a few of them. |
9:42 | So prime_range gives primes in the range 100 to 200. |
9:46 | So you can type there prime_range within brackets 100,200. |
9:58 | is_prime checks if 1999 is a prime number or not. |
10:05 | So for that you can type if_prime of (1999) and hit shift enter. |
10:13 | So you will get the answer. |
10:15 | factor(2001) gives the factorized form of 2001. |
10:20 | So to see that you can type factor(2001) and hit shift enter. |
10:33 | So you can see the value in the output. |
10:36 | So the Permutations() gives the permutations of [1, 2, 3, 4] |
10:43 | So for that you can type C=Permutations([1,2,3,4]) and next you can type C.list() |
10:57 | And the Combinations() gives all the combinations of [1, 2, 3, 4] |
11:02 | For that you can type C= Combinations([1,2,3,4]) and type C dot list() |
11:17 | So now you can see the solution displayed |
11:26 | This brings us to the end of the tutorial. |
11:29 | In this tutorial, we have learnt to, |
11:32 | 1. Use functions for calculus like -- - lim()-- to find out the limit of a function - diff()-- to find out the differentiation of an expression - integrate()-- to integrate over an expression - integral()-- to find out the definite integral of an expression by specifying the limits |
11:52 | solve()-- to solve a function, relative to it's position. |
11:56 | then create both a simple graph and a directed graph, using the functions graph and digraph respectively. |
12:02 | then use functions for number theory. |
12:04 | So for eg: - primes_range()-- function to find out the prime numbers within the specified range. |
12:11 | then factor()-- function to find out the factorized form of the specified number. |
12:15 | Permutations(), Combinations()-- to obtain the required permutation and combinations for the given set of values. |
12:22 | So here are some self assessment questions for you to solve |
12:25 | 1. How do you find the limit of the function x/sin(x) as x tends to 0 from the negative side. |
12:32 | 2. List all the primes between 2009 and 2900 |
12:37 | 3. Solve the system of linear equations x-2y+3z = 7 2x+3y-z = 5 x+2y+4z = 9 |
12:57 | So now we can look at the answers, |
13:02 | 1. To find out the limit of an expression from the negative side,we add an argument dir="left" as |
13:09 | lim of(x/sin(x), x=0, dir="left") |
13:19 | 2. The prime numbers from 2009 and 2900 can be obtained as,
prime_range(2009, 2901) |
13:32 | 3. We shall first write the equations in matrix form and then use the solve() function |
13:39 | So you can type A = Matrix of within brackets([[1, -2, 3] comma
[2, 3, -1] comma [1, 2, 4]]) |
13:48 | b = vector within brackets([7, 5, 9]) |
13:52 | then x = A dot solve_right(b) |
13:58 | Then type x so that you can view the output of x. |
14:03 | So we hope that you have enjoyed this tutorial and found it useful. |
14:06 | Thank you! |