Nugroho's blog.: Differentiation

Sunday, April 16, 2017

Differentiation

We may already knew that on computational physic,  differentiation is used in Euler method to compute integration, or used in finite different method.

How about slope of the function? How do we use differentiation to differentiate a function?

If we have y = f(x), we will have slope value on, say, (x0 , f(x(0)) by differentiate it.

m = dy/dx = df(x)/dx.



For slope on x0, just compute it.

We could plot the linear function that have form

y = m x + c



Okay we got m, what about c? Easy. We know f(x0) = y0.

So

y0 =  m x0 + c

c = y0 - m x0

And we have linear function

y = df(x0)/dx x + (y0 - df(x0)/dx x0)

Here's the code.

from pylab import *

def f(x):
    return sin(x)

def df(y,x,i):
    m   = (y[i+1] - y[i])/(x[i+1] - x[i])
    c   = y[i] - m * x[i]
    return (m*x+c)

    

x   = linspace(0,pi,100)
y   = f(x)
plot(x,y)

dydx  = df(y,x,0)       #slope on x=x[0]
plot(x,dydx)            #plot slope

dydx  = df(y,x,30)       #slope on x=x[30]
plot(x,dydx)            #plot slope

grid(True)
show()



.

No comments:

323f (5) amp (1) android (12) apple (7) arduino (18) art (1) assembler (21) astina (4) ATTiny (23) blackberry (4) camera (3) canon (2) cerita (2) computer (106) crazyness (11) debian (1) delphi (39) diary (286) flash (8) fortran (6) freebsd (6) google apps script (8) guitar (2) HTML5 (10) IFTTT (7) Instagram (7) internet (12) iOS (5) iPad (6) iPhone (5) java (1) javascript (1) keynote (2) LaTeX (6) lazarus (1) linux (29) lion (15) mac (28) macbook air (8) macbook pro (3) macOS (1) Math (3) mathematica (1) maverick (6) mazda (4) microcontroler (35) mountain lion (2) music (37) netbook (1) nugnux (6) os x (36) php (1) Physicist (29) Picture (3) programming (189) Python (109) S2 (13) software (7) Soliloquy (125) Ubuntu (5) unix (4) Video (8) wayang (3) yosemite (3)