data(eggs)
uni.C <- sort( unique(eggs$Code) )
ind <- 8
Data <- eggs[eggs$Code==uni.C[ind], ]
x0 <- Data$x
y0 <- Data$y
Res1 <- adjdata(x0, y0, ub.np=3000, len.pro=1/20)
x1 <- Res1$x
y1 <- Res1$y
dev.new()
plot( Res1$x, Res1$y, asp=1, cex.lab=1.5, cex.axis=1.5,
xlab=expression(italic("x")), ylab=expression(italic("y")) )
# \donttest{
Res2 <- fitNRGE(x1, y1, dev.angle=NULL, ini.C=c(-1, -0.1, seq(0.1, 1, by=0.05)),
strip.num=2000, fig.opt=TRUE)
dev.new()
plot(Res2$x.obs, Res2$y.obs, asp=1, cex.lab=1.5, cex.axis=1.5,
xlab=expression(italic("x")), ylab=expression(italic("y")),
type="l", col=4)
lines( Res2$x.obs, Res2$y.pred, col=2)
Res3 <- fitNRGE(x1, y1, dev.angle=seq(-0.05, 0.05, by=0.01),
ini.C=c(-1, -0.1, seq(0.1, 1, by=0.05)),
strip.num=2000, fig.opt=TRUE)
zeta <- Res3$theta + Res3$epsilon
x2 <- x1*cos(zeta) + y1*sin(zeta)
y2 <- y1*cos(zeta) - x1*sin(zeta)
plot( x2-min(x2), y2-min(y2), asp=1, col="grey70", cex=1,
xlab=expression(italic("x")), ylab=expression(italic("y")) )
lines(Res3$x.obs-min(Res3$x.obs), Res3$y.obs-min(Res3$y.obs), col=4)
lines(Res3$x.obs-min(Res3$x.obs), Res3$y.pred-min(Res3$y.obs), col=2)
RMSE <- sqrt( Res3$RSS / Res3$sample.size )
RMSE
# To calculate the volume of the egg
VolumeNRGE(P=Res3$par)
# To calculate the surface area of the egg
SurfaceAreaNRGE(P=Res3$par)
# }
graphics.off()
Run the code above in your browser using DataLab