Run Code
|
API
|
Code Wall
|
Misc
|
Feedback
|
Login
|
Theme
|
Privacy
|
Patreon
ExEdsonAmanda26-01-2021
# Gráfico em 3 dimensões # Curva # Superfície z=f(x,y) x <- seq(-5,2, by=0.05) y <- seq(-2,2,by=0.05) mf<-function(s,r){ x=s y=r f1=y*x^3+y^4+2*x*y+x+y+1 f2=y*x^2+2*x*y+x+5 f1^2+f2^2 # |f(x,y)|^2; auxiliar para gráfico } require(grDevices) # for trans3d z <- outer(x, y, mf) z[is.na(z)] <- 4 op <- par(bg = "white") persp(x, y, z, theta = 60, phi = 20, expand = 1) contour(x,y,z,levels=c(0.5,1,5,10)) # persp(x, y, z, theta = 60, phi = 20, expand = 1)->res # Método de Euler oara resolver a equação u'(t)=-grad f(u(t)), e(0)=(2,-2) gradmf<-function(u){ # gradiente de f(x,y) s=u[1] r=u[2] h=10^(-5) dnfx= mf(s+h,r)-mf(s-h,r) dnfy=mf(s,r+h)-mf(s,r-h) c(dnfx,dnfy)/(2*h) } t0=0 # tempo inicial tf=1 # t final e0=c(2,-2) # condição inicial mf(e0[1],e0[2]) # teste da escolha n=1000 h=(tf-t0)/n # Tamanho do passo tt=seq(t0,tf,by=h) Y=matrix(0,2,length(tt)) Y[,1]=e0 for ( i in 1:(length(tt)-1)){ Y[,i+1]=Y[,i]-h*gradmf(Y[,i]) } print("Aproximação para o ponto de máximo"); Y[,length(tt)] print("Aproximação para o valor máximo"); mf(Y[1,length(tt)],Y[2,length(tt)]) lines(trans3d(Y[1,],Y[2,],mf(Y[1,],Y[2,]), res), col = "blue", lwd = 2) # Inclui curvas plot(Y[1,],Y[2,],col="blue") plot(tt[1:25],mf(Y[1,1:25],Y[2,1:25]), col = "blue")
run
|
edit
|
history
|
help
0
MAX
Gab1A(resumido)
Controle-22-03-2021
Efeito-Runge-18-03-2021
Practice
1
19-08-2020-JacobiSistema-menos-calc
K
Aula 16 agosto 2019
juntar dos filas de data frame h