Download as pdf or txt
Download as pdf or txt
You are on page 1of 14

Practica-2-Funcions -- Sage

## FUNCIONS I REPRESENTACI GRFICA


#
# 1 - FUNCIONS TRIGONOMTRIQUES, EXPONENCIALS I LOGARITMIQUES
#
# sin(x), cos(x), tan(x)
# funcions sinus, cosinus
#
i tangent. x en radiants.
# asin(x), acos(x), atan(x) # arcsinus, arccosinus i arctangent.
# sinh(x), cosh(x), tanh(x) # sinus, cosinus i tangent
#
#
hiperbliques.
# exp(x)
# exponencial de base e.
# ln(x)
# logaritme Neperi.
# log(x,n)
# logarime en base n.
#
sin(pi/4), exp(2), log(100,10), ln(e^5)
(1/2*sqrt(2), e^2, 2, 5)
# Suma, diferncia, producte, quocient i composici de funcions
f2=x+5
g2=x^3-3
suma=f2(x)+g2(x)
resta=f2(x)-g2(x)
pr=f2(x)*g2(x)
div=f2(x)/g2(x)
g2of2=g2(f2(x))
f2og2=f2(g2(x) )
print "f2(x)=", f2
print "g2(x)=", g2
print "suma:
(f2+g2)(x)=", suma
print "resta:
(f2-g2)(x)=", resta
print "producte:
(f2*g2)(x)=", pr
print "quocient:
(f2/g2)(x)=", div
print "f2 composada amb g2: (g2of2)(x)=", g2of2
print "g2 composada amb f2: (f2og2)(x)=", f2og2
f2(x)= x + 5
g2(x)= x^3 - 3
suma:
(f2+g2)(x)= x^3 + x + 2
resta:
(f2-g2)(x)= -x^3 + x + 8
producte:
(f2*g2)(x)= (x + 5)*(x^3 - 3)
quocient:
(f2/g2)(x)= (x + 5)/(x^3 - 3)
f2 composada amb g2: (g2of2)(x)= (x + 5)^3 - 3
g2 composada amb f2: (f2og2)(x)= x^3 + 2

1 de 12

Practica-2-Funcions -- Sage

Valors de funcions

f2=x+5
g2=x^3-3
print "f2(x)=", f2," , ","g2(x)=", g2;
print "(f2(0)+g2(0)^2)/2=", (f2(0)+g2(0)**2)/2
print "cos(f2(3))+g2(-4)=", cos(f2(3))+g2(-4)
print "exp(f2(0)+2)=", exp(f2(0)+2)
print "f2(0)^g2(0)=", f2(0)^g2(0)
print "f2(g2(0))=", f2(g2(0))
print "f2(f2(-5))=", f2(f2(-5))
print "g2(f2(0))=", g2(f2(0))
print "g2(g2(2))=", g2(f2(2))
f2(x)= x + 5 ,
g2(x)= x^3 - 3
(f2(0)+g2(0)^2)/2= 7
cos(f2(3))+g2(-4)= cos(8) - 67
exp(f2(0)+2)= e^7
f2(0)^g2(0)= 1/125
f2(g2(0))= 2
f2(f2(-5))= 5
g2(f2(0))= 122
g2(g2(2))= 340
solve(ln(ln(x))==0,x)
[e == x]
solve(exp(3*x-2)==4,x)
[x == 1/3*log(4) + 2/3]

# Funci inversa. Cal allar x en l'equaci y=f(x).


var('x,y')
f=x^3-1
invf=solve(y==f(x),x) # allem x en l'equaci y=f(x)
print invf
[
x == 1/2*(I*sqrt(3) - 1)*(y + 1)^(1/3),
x == 1/2*(-I*sqrt(3) - 1)*(y + 1)^(1/3),
x == (y + 1)^(1/3)
]
print "La funci inversa de f(x)=", f(x);
print "s invf(x)=",invf[2]
# de les tres anteriors
#
#
triem la soluci real
La funci inversa de f(x)= x^3 - 1
s invf(x)= x == (y + 1)^(1/3)

2 de 12

Practica-2-Funcions -- Sage

# 2 - GRFIQUES DE FUNCIONS
# 2.1 - Representaci d'una sola grfica
#
# Per representar grficament una funci utilitzarem la comanda
#
plot(funci, interval, comandes adicionals)
#
# Entre les mltiples comandes opcionals possibles, utilitzarem:
#
figsize=[num,num]
# per canviar el tamany per defecte.
#
aspect_ratio=num
# proporci entre el tamany de les
#
#
unitats en els eixos.
#
ymin=y_0, ymax=y_1
# representa noms els valors amb
#
#
y_0<y<y_1.
#
rgbcolor='color'
# canvia el color de la grfica.
#
thickness=num
# determina el gruix de la grfica.
#
axes_labels=('text x','text y')
# posa etiquetes als eixos.
#
axes=False
# no representa els eixos.
#
f=exp(-x^2)
plot(f,-3,3) # dibuixa la grfica de f entre -3 i 3.

plot(f,-3,3, figsize=[2,1])

# modifica el tamany.

3 de 12

Practica-2-Funcions -- Sage

plot(f,-3,3,aspect_ratio=1, figsize=[6,3], rgbcolor='red')


# iguala la longitud de les unitats dels eixos,
# i canvia el tamany i el color de la grfica anterior.

plot(f,-3,3, figsize=[8,2], thickness=5)


# canvia el tamany i el gruix de la grfica anterior.

var('t')
plot(1/sqrt(t),-5,5,figsize=[2,2]) # el missatge d'error s degut
#
# a que els punta t<=0 no estan en el domini.
verbose 0 (3495: plot.py, generate_plot_points) WARNING: When
plotting, failed to evaluate function at 100 points.
verbose 0 (3495: plot.py, generate_plot_points) Last error message:
'negative number to a fractional power not real'
var('t')
plot(1/(1+sqrt(t)),0.1,100,axes_labels=
('temps','concentraci'),figsize=[6,2])

4 de 12

Practica-2-Funcions -- Sage

var('t')
plot(1/(t^2-1),-5,5, figsize=[3,3]) # valors massa grans.

plot(1/(t^2-1),-5,5, ymin=-5, ymax=5, figsize=[3,3]) #correcci.

# 2.2 - Representaci de ms d'una grfica amb text


#
# Per representar ms d'una funci podem etiquetar cada grfica
# i finalment representarles utilitzant la comanda
#
show( grfica 1 + grfica 2 + ..., comandes opcionals)
#
# Tamb podem afegir text a la grfica utilitzant la comanda
#
text('text', punt)
# escriu texte en un grfic en les
#
#
coordenades punt=(,)
#

5 de 12

Practica-2-Funcions -- Sage

g1=plot(3*x,0,5)
# definim la grfica de 3x.
g2=plot(x^2,0,4,rgbcolor='red') # definim la grfica de x^2.
t1=text('f(x)=x^2',(3,15),rgbcolor='red') # definim texte.
t2=text('g(x)=3x',(2,10))
# definim texte.
show(g1+g2+t1+t2, axes_labels=('X','Y'), figsize=[4,2])

# 2.3 - Representaci de figures geomtriques


# Podem utilitzar les comandes:
#
point((punt1, punt2,...), comandes)
#
line([origen,final], comandes)
#
circle( centre,radi, comandes)

# dibuixa punts.
# dibuixa un segment.
# dibuixa un cercle.

from sage.plot.line import Line


# crida la comanda Line
pts=point(((1,3),(3,-1),(2,1)), pointsize=40) # defineix punts.
ls=line([(1,3), (3,-1)],rgbcolor='green')
# defineix un segment.
cr=circle((2,1),1)
# defineix un cercle.
show(pts+ls+cr, aspect_ratio=1,figsize=[3,3]) # els dibuixa.

6 de 12

Practica-2-Funcions -- Sage

var('x')
p= plot(x^2, (-0.5, 1.1), rgbcolor='blue') + line([(0,0), (1,1)],
rgbcolor='green') # rgbcolor defineix el color.
p += line([(0.5, 0.5), (0.5, 0.5^2)], rgbcolor='purple') # dibuixa
una linia en les coordenades indicades.
p += point(((0, 0), (0.5, 0.5), (0.5, 0.5^2), (1, 1)),
rgbcolor='red', pointsize=20) # dibuixa un punt.
p += text('A', (-0.05, 0.1), rgbcolor='red') # coloca el texte en
les coordenades indicades.
p += text('B', (1.01, 1.1), rgbcolor='red')
p += text('C', (0.48, 0.57), rgbcolor='red')
p += text('D', (0.53, 0.18), rgbcolor='red')
show(p,axes=False, xmin=-0.5, xmax=1.4, ymin=0, ymax=1.3,figsize=
[3,3]) # sense eixos, lmits de la grfica

# 2.4 - Dibuix de poligonals


# Tot i que hi ha comandes per dibuixar-les, ho farem
# utilitzant la comanda line
# L sn els vrtexs d'un decgon regular.
L = [[5*cos(i*pi/5), 5*sin(i*pi/5)] for i in range(0,11)]
line(L,figsize=[2,2])

7 de 12

Practica-2-Funcions -- Sage

# Taula de valors seguida de la poligonal.


var('x,y')
f(x)=(x^2+1)/(x^4+1)
punts=[[i, f(i)] for i in range(-5,6)]
print " x, f(x)";
print "----------";
y=0
while y<=10:
print punts[y];
y=y+1
x, f(x)
---------[-5, 13/313]
[-4, 17/257]
[-3, 5/41]
[-2, 5/17]
[-1, 1]
[0, 1]
[1, 1]
[2, 5/17]
[3, 5/41]
[4, 17/257]
[5, 13/313]
show((line(punts)+point(punts)),figsize=[3,3])

8 de 12

Practica-2-Funcions -- Sage

# 2.5 - Creaci de grfics interactius (tipus applet)


#
# Amb la comanda
#
@interact
# podem crear grfics interactius.
#
@interact
def para(a = slider(-3,3,1,default = 1), b = slider(-4,4,1,default =
2), c = slider(-5,5,1,default=3)):
var('x')
html('$ y= ' + latex(a*x^2+b*x+c) + ' $')
prb=plot(a*x^2+b*x+c,-3,3,plot_points = 1024, rgbcolor = 'red')
show(prb, figsize = [4,4], xmin=-3, xmax=3, ymin=-20, ymax=20)
a

y = x2 + 2 x + 3

9 de 12

Practica-2-Funcions -- Sage

@interact
def para(n1 = slider(1,5,1,default = 2), n2 = slider(1,5,1,default =
3), a1 = slider(1,10,1/10,6/5), a2 = slider(1,10,1/10,6), b =
slider(0,2,1/50,0)):
var('t')
html('$r=' + latex(b+sin(a1*t)^n1 + cos(a2*t)^n2)+'$')
p = parametric_plot((cos(t)*(b+sin(a1*t)^n1 + cos(a2*t)^n2),
sin(t)*(b+sin(a1*t)^n1 + cos(a2*t)^n2)), (t,0, 20*pi), plot_points =
1024, rgbcolor = (0,0,0))
show(p, figsize = [5,5], xmin = -2-b, xmax = 2+b, ymin = -2-b,
ymax = 2+b, axes = False)
n1

n2

a1

6/5

a2

r = sin

6
5

+ cos (6 t)3

10 de 12

Practica-2-Funcions -- Sage

# 3 - RESOLUCI D'EQUACIONS I INEQUACIONS


#
# Per a resoldre equacions combinarem les comandes
#
plot
per localitzar els zeros, i
#
find_root
per calcular el seu valor aproximat.
#
# En ser d'ajuda la funci
#
signe(f)=f/abs(f)
# que val 1 si f>0 i -1 si f<1.
#
# Exemple: Volem resoldre l'equaci
x^5-5*x^2+2==0.
#
# Observen que, per comparaci de tamany entre x^5 i -5*x^2+2,
# totes les arrels estn en (-5,5).
#
# Localitzem els zeros: Tcnica 1.
# s ms eficient que la tcnica 2 si hi ha zeros mltiples
f=x^5-5*x^2+2
plot(f,-5,5,ymin=-1,ymax=1,figsize=[5,1])

#
# Localitzem els zeros: Tcnica 2.
f=x^5-5*x^2+2
plot(f/abs(f),-5,5,ymin=-1,ymax=1,figsize=[5,1])

print "f(x) t tres arrels: "


print "
r1 entre -1 i 0"
print "
r2 entre 0 i 1"
print "
r3 entre 1 i 2"
f(x) t tres arrels:
r1 entre -1 i 0
r2 entre 0 i 1
r3 entre 1 i 2

11 de 12

Practica-2-Funcions -- Sage

#
# Clcul de les arrels.
#
r1=find_root(f==0,-1,0)
r2=find_root(f==0,0,1)
r3=find_root(f==0,1,2)
print "Les arrels de f(x) sn aproxiamdament :"
print "
r1=",n(r1,digits=5),
",
r2=",n(r2,digits=5),
r3=",n(r3,digits=6);
Les arrels de f(x) sn aproxiamdament :
r1= -0.61803 ,
r2= 0.65063 ,
r3= 1.61803

",

#
# Observeu la diferncia entre les tcniques 1 i 2 quan tenim arrels
mltiples.
# En el segent cas, 0.5 s una arrel de multiplicitat 2.
#
g=4*x^2-4*x+1
plot(g,-5,5,ymin=-1,ymax=1,figsize=[5,1])

plot(g/abs(g),-5,5,ymin=-1,ymax=1,figsize=[5,1])

#
# Tot i que no s'aprecia b, pel primer mtode veiem que
#
podria haver-hi una arrel entre 0 i 1.
#
find_root(g==0,0,1)
0.49999999999999994

12 de 12

GRAU D'ENGINYERIA INFORMTICA tardor-10


CLCUL: PRCTICA 2
Funcions amb SAGE

EXERCICIS: Funcions
1. Trobeu el domini de les segents funcions:
1
1
1

(d) F (t) =
1+ t

(a) f (x) = 1 + x2
(c) F (t) =

(b) f (x) =

1
t1

x2

2. Simpliqueu les segents expressions:


(a)

22 ( 2)3

(d) e3 ln(3)

(b) (8)1/3 2

(c) 23 /(23 )2

(e) eln(7)5

(f) e(1/2) ln(4)

3. Considerem una circumferncia de radi 10, quina longitud t l'arc de la circumferncia d'angle
4

5 ?. I el de 110 ?.
4. Resoleu les segents equacions:
(a) ln(ln(x)) = 0

(b) e3x2 = 4

(c) eln

(x)

=3

(d) ex 4ex = 2

5. Expresseu l'rea i el permetre d'un triangle equilter com a funci de la longitud x d'un dels
costats.
6. Siguin f (x) = cos(x2 ) i g(x) = x3 1. Trobeu:
(a) (f (0) + g(0)2 )/2 (b) cos(f (3)) + g(4) (c) ef (0)+2

(d) f (0)g(0)

(e) f (g(0))

(h) g(g(2))

(f) f (f (5))

(g) g(f (0))

7. Trobeu les equacions de les rectes segents:


(a) Passa per (1,

1)amb pendent 1.
(b) Passa per ( 2, 2) i s parallela a la recta 2x + 5y = 3.
(c) Passa per (0, 1) i s perpendicular a la recta 8x 13y = 13.
8. Dibuixeu la recta y = 2x 3 i la seva perpendicular que passa pel punt p = (1, 1).

9.

Farenheit i Celsius.

En el pla F C , dibuixa la grca de la funci


5
C = (F 32),
9

que relaciona les escales Farenheit i Celsius. En la mateixa grca dibuixa la recta y = x.
Existeix alguna temperatura en la qual el termmetre en graus Celsius mesuri el mateix que el
de graus Farenheit?
10. Determineu el conjunt de punts x R tals que veriquen:
(a) x2 + x 2
(b) x2 3x 2
(d) ex 4 x4
(e) 4 sin(x) < 1
11. Determineu el domini de les funcions:

(b) ln(x2 3x + 2)
(a) x2 + x 2

(c) x3 + 5x 1 0

(c)

x3

x
+ 5x 1

12. Un triangle t costats a = 2 i b = 3 i formen un angle = 60 . Trobeu la longitud del costat c.


13. Un triangle t un costat de longitud c = 2. Els angles que forma amb els altres costats sn
= /4 i = /3. Trobeu la longitud a del costat oposat a .
14. Dibuixeu un pentgon regular inscrit en una circunferncia de radi 4.
x2 + 1

15. Feu una taula de valors de la funci f (x) = 4


per a valors enters entre -5 i 5 i dibuixeu els
x +1
punts en una grca. Dibuixeu tamb la poligonal que uneix els punts.

You might also like