方程式

f <- function(x){
	sin(x)-1/2
	}

d<-1e-15
xl<-0
xr<-pi/2
xm<-(xl+xr)/2

while(abs(f(xm))>d){
	if(f(xl)*f(xm)>0){
	xl<-xm
	}else if(f(xl)*f(xm)<0){
	xr<-xm
	}
	xm<-(xl+xr)/2
}
print(xm)
f <- function(x){
	sin(x)-1/2
	}

f1<-function(x){
	cos(x)
	}

d<-1e-15

xold<-runif(1,0,pi/2)
xnew<-xold-f(xold)/f1(xold)

while(abs(xnew-xold)>d){
	xold<-xnew
	xnew<-xold-f(xold)/f1(xold)
}
print(xnew)*6
  • LU分解
    • 分解のみ
    • 天下り的な書き方なので内容にそった書き方を考える
N<-3
M<-matrix(runif(N^2),N,N)
L<-U<-matrix(0,N,N)

A<-M
for(k in 1:(N-1)){
u <- A[k,k]
	for(i in (k+1):N){
	A[i,k] <- A[i,k]/u
	t <- A[i,k]
	L[i,k]<-t
		for( j in (k+1):N){
		A[i,j]<- A[i,j] -t*A[k,j]
		}	
	}
}

U<-A-L
diag(L)<-1

M-L%*%U