Planet orbiting with Euler ODE solver

Vignette Author

2017-11-09

Build the class Planet with the Euler ODE solver

library(rODE)

# This code can also be found in the `examples` folder under this name:
# 
# Planet.R
#
setClass("Planet", slots = c(
    odeSolver = "Euler",
    GM = "numeric"
    ),
    contains = c("ODE")
)

setMethod("initialize", "Planet", function(.Object, ...) {
    .Object@GM <- 4 * pi * pi
    .Object@state <- vector("numeric", 5)
    .Object@odeSolver <- Euler(.Object)
    return(.Object)
})

setMethod("doStep", "Planet", function(object, ...) {
    # Gets the state variables.
    object@odeSolver <- step(object@odeSolver)
    object@state <- object@odeSolver@ode@state
    object@rate  <- object@odeSolver@ode@rate
    invisible(object)
})

setMethod("init", "Planet", function(object, initState, ...) {
    object@state <- object@odeSolver@ode@state <- initState
    # initialize providing the step size
    object@odeSolver <- init(object@odeSolver, getStepSize(object@odeSolver))
    object@rate <- object@odeSolver@ode@rate
    object@state <- object@odeSolver@ode@state

    object

})

setMethod("getRate", "Planet", function(object, state, ...) {
    # Gets the rate of change using the argument's state variables.
    r2 <- state[1] * state[1] + state[3] * state[3]
    r3 <- r2 * sqrt(r2)
    object@rate[1] <- state[2]
    object@rate[2] <- (- object@GM * state[1]) / r3
    object@rate[3] <- state[4]
    object@rate[4] <- (- object@GM * state[3]) / r3
    object@rate[5] <- 1

    object@rate

})

setMethod("getState", "Planet", function(object, ...) {
    # Gets the state variables.
    invisible(object@state)
})

# constructor
Planet <- function() {
    new("Planet")
}
## [1] "initialize"
## [1] "doStep"
## [1] "init"
## [1] "getRate"
## [1] "getState"

Run the application PlanetApp

# #################
# This code can also be found in the `examples` folder under this name:
# PlanetApp.R
#
#
PlanetApp <- function(verbose = FALSE) {
        
    # x =  1, AU or Astronomical Units. 
    # Length of semimajor axis or the orbit of the Earth around the Sun.
    
    x <- 1; vx <- 0; y <- 0; vy <- 6.28; t <- 0
    state <- c(x, vx, y, vy, t)
    dt <-  0.01
    
    planet <- Planet()
    
    planet@odeSolver <- setStepSize(planet@odeSolver, dt)
    planet <- init(planet, initState = state)
    
    # run infinite loop. stop with ESCAPE.
    while (planet@state[5] <= 30) {  # Earth orbit is 365 days around the sun
        for (i in 1:5) {               # advances time
            planet <- doStep(planet)
        }
        if (verbose) 
            cat(sprintf("%12f %12f %12f %12f %12f \n",
                    planet@state[1], planet@state[2], planet@state[3],
                    planet@state[4], planet@state[5]))
    }

}

PlanetApp()
PlanetApp(verbose = TRUE)
##     0.960830    -1.935516     0.311551     6.036920     0.050000 
##     0.828291    -3.664744     0.599282     5.226614     0.100000 
##     0.616106    -5.024789     0.836811     3.960022     0.150000 
##     0.345210    -5.904978     1.004413     2.399662     0.200000 
##     0.040664    -6.267392     1.091091     0.731139     0.250000 
##    -0.272085    -6.147215     1.095001    -0.873557     0.300000 
##    -0.570516    -5.632781     1.022130    -2.285106     0.350000 
##    -0.837124    -4.836306     0.883853    -3.428299     0.400000 
##    -1.060061    -3.868123     0.694285    -4.276897     0.450000 
##    -1.232686    -2.821154     0.468089    -4.839712     0.500000 
##    -1.352553    -1.765480     0.219028    -5.145692     0.550000 
##    -1.420276    -0.749492    -0.040787    -5.232228     0.600000 
##    -1.438515     0.196008    -0.301158    -5.137680     0.650000 
##    -1.411195     1.053151    -0.553754    -4.897405     0.700000 
##    -1.342943     1.812920    -0.791924    -4.542127     0.750000 
##    -1.238711     2.472017    -1.010452    -4.097653     0.800000 
##    -1.103539     3.030613    -1.205321    -3.585273     0.850000 
##    -0.942416     3.490828    -1.373499    -3.022421     0.900000 
##    -0.760202     3.855737    -1.512759    -2.423400     0.950000 
##    -0.561594     4.128746    -1.621538    -1.800059     1.000000 
##    -0.351120     4.313225    -1.698827    -1.162393     1.050000 
##    -0.133141     4.412306    -1.744086    -0.519048     1.100000 
##     0.088129     4.428798    -1.757190     0.122247     1.150000 
##     0.308612     4.365185    -1.738385     0.754317     1.200000 
##     0.524349     4.223676    -1.688273     1.370236     1.250000 
##     0.731485     4.006314    -1.607798     1.963067     1.300000 
##     0.926268     3.715127    -1.498257     2.525637     1.350000 
##     1.105050     3.352325    -1.361314     3.050367     1.400000 
##     1.264301     2.920557    -1.199019     3.529127     1.450000 
##     1.400636     2.423209    -1.013845     3.953168     1.500000 
##     1.510861     1.864776    -0.808712     4.313126     1.550000 
##     1.592036     1.251264    -0.587019     4.599131     1.600000 
##     1.641556     0.590635    -0.352667     4.801065     1.650000 
##     1.657263    -0.106769    -0.110060     4.908999     1.700000 
##     1.637567    -0.827874     0.135915     4.913843     1.750000 
##     1.581592    -1.556699     0.379948     4.808207     1.800000 
##     1.489317    -2.274469     0.616409     4.587456     1.850000 
##     1.361708    -2.960127     0.839508     4.250829     1.900000 
##     1.200814    -3.591346     1.043514     3.802484     1.950000 
##     1.009805    -4.146012     1.223014     3.252195     2.000000 
##     0.792921    -4.604069     1.373197     2.615490     2.050000 
##     0.555334    -4.949432     1.490139     1.913029     2.100000 
##     0.302913    -5.171626     1.571027     1.169212     2.150000 
##     0.041921    -5.266789     1.614316     0.410191     2.200000 
##    -0.221321    -5.237814     1.619764    -0.338362     2.250000 
##    -0.480765    -5.093636     1.588371    -1.053316     2.300000 
##    -0.730906    -4.847843     1.522216    -1.715628     2.350000 
##    -0.966985    -4.516962     1.424235    -2.311174     2.400000 
##    -1.185103    -4.118736     1.297967    -2.830878     2.450000 
##    -1.382244    -3.670668     1.147310    -3.270292     2.500000 
##    -1.556248    -3.188958     0.976304    -3.628813     2.550000 
##    -1.705725    -2.687859     0.788957    -3.908775     2.600000 
##    -1.829957    -2.179389     0.589117    -4.114551     2.650000 
##    -1.928779    -1.673319     0.380383    -4.251773     2.700000 
##    -2.002472    -1.177327     0.166059    -4.326710     2.750000 
##    -2.051663    -0.697256    -0.050869    -4.345803     2.800000 
##    -2.077241    -0.237402    -0.267736    -4.315350     2.850000 
##    -2.080282     0.199206    -0.482185    -4.241304     2.900000 
##    -2.061991     0.610535    -0.692150    -4.129153     2.950000 
##    -2.023660     0.995329    -0.895825    -3.983879     3.000000 
##    -1.966632     1.352915    -1.091647    -3.809941     3.050000 
##    -1.892274     1.683051    -1.278262    -3.611297     3.100000 
##    -1.801957     1.985799    -1.454508    -3.391443     3.150000 
##    -1.697047     2.261432    -1.619388    -3.153450     3.200000 
##    -1.578891     2.510359    -1.772048    -2.900016     3.250000 
##    -1.448815     2.733066    -1.911767    -2.633507     3.300000 
##    -1.308120     2.930075    -2.037932    -2.356009     3.350000 
##    -1.158080     3.101912    -2.150033    -2.069361     3.400000 
##    -0.999943     3.249081    -2.247645    -1.775201     3.450000 
##    -0.834934     3.372054    -2.330422    -1.474993     3.500000 
##    -0.664253     3.471250    -2.398090    -1.170066     3.550000 
##    -0.489082     3.547035    -2.450436    -0.861638     3.600000 
##    -0.310584     3.599713    -2.487309    -0.550842     3.650000 
##    -0.129911     3.629526    -2.508613    -0.238754     3.700000 
##     0.051798     3.636653    -2.514303     0.073589     3.750000 
##     0.233412     3.621210    -2.504387     0.385164     3.800000 
##     0.413803     3.583255    -2.478923     0.694947     3.850000 
##     0.591847     3.522793    -2.438024     1.001885     3.900000 
##     0.766417     3.439781    -2.381851     1.304887     3.950000 
##     0.936383     3.334136    -2.310626     1.602795     4.000000 
##     1.100614     3.205747    -2.224627     1.894371     4.050000 
##     1.257968     3.054491    -2.124197     2.178278     4.100000 
##     1.407299     2.880242    -2.009748     2.453055     4.150000 
##     1.547457     2.682902    -1.881768     2.717105     4.200000 
##     1.677285     2.462418    -1.740827     2.968673     4.250000 
##     1.795626     2.218817    -1.587589     3.205830     4.300000 
##     1.901327     1.952243    -1.422814     3.426460     4.350000 
##     1.993244     1.663000    -1.247375     3.628247     4.400000 
##     2.070254     1.351606    -1.062264     3.808674     4.450000 
##     2.131262     1.018852    -0.868601     3.965027     4.500000 
##     2.175223     0.665869    -0.667648     4.094410     4.550000 
##     2.201155     0.294207    -0.460814     4.193776     4.600000 
##     2.208161    -0.094092    -0.249662     4.259978     4.650000 
##     2.195460    -0.496413    -0.035914     4.289848     4.700000 
##     2.162413    -0.909494     0.178551     4.280295     4.750000 
##     2.108559    -1.329367     0.391703     4.228438     4.800000 
##     2.033650    -1.751330     0.601375     4.131774     4.850000 
##     1.937686    -2.169948     0.805286     3.988366     4.900000 
##     1.820954    -2.579108     1.001071     3.797056     4.950000 
##     1.684060    -2.972144     1.186327     3.557673     5.000000 
##     1.527948    -3.342026     1.358666     3.271238     5.050000 
##     1.353920    -3.681620     1.515778     2.940115     5.100000 
##     1.163629    -3.984011     1.655498     2.568093     5.150000 
##     0.959065    -4.242866     1.775879     2.160381     5.200000 
##     0.742518    -4.452797     1.875262     1.723483     5.250000 
##     0.516522    -4.609691     1.952336     1.264960     5.300000 
##     0.283787    -4.710962     2.006183     0.793097     5.350000 
##     0.047118    -4.755695     2.036308     0.316504     5.400000 
##    -0.190665    -4.744662     2.042645    -0.156316     5.450000 
##    -0.426817    -4.680208     2.025546    -0.617370     5.500000 
##    -0.658734    -4.566032     1.985746    -1.059511     5.550000 
##    -0.884022    -4.406893     1.924316    -1.476694     5.600000 
##    -1.100540    -4.208276     1.842606    -1.864110     5.650000 
##    -1.306432    -3.976063     1.742180    -2.218232     5.700000 
##    -1.500137    -3.716228     1.624752    -2.536763     5.750000 
##    -1.680392    -3.434593     1.492131    -2.818522     5.800000 
##    -1.846217    -3.136632     1.346162    -3.063288     5.850000 
##    -1.996899    -2.827348     1.188687    -3.271627     5.900000 
##    -2.131963    -2.511193     1.021506    -3.444712     5.950000 
##    -2.251144    -2.192042     0.846350    -3.584165     6.000000 
##    -2.354363    -1.873202     0.664864    -3.691908     6.050000 
##    -2.441690    -1.557432     0.478592    -3.770042     6.100000 
##    -2.513328    -1.247001     0.288971    -3.820755     6.150000 
##    -2.569581    -0.943729     0.097327    -3.846239     6.200000 
##    -2.610837    -0.649054    -0.095122    -3.848643     6.250000 
##    -2.637549    -0.364079    -0.287261    -3.830025     6.300000 
##    -2.650221    -0.089629    -0.478082    -3.792336     6.350000 
##    -2.649390     0.173706    -0.666665    -3.737396     6.400000 
##    -2.635622     0.425524    -0.852184    -3.666892     6.450000 
##    -2.609497     0.665578    -1.033891    -3.582375     6.500000 
##    -2.571607     0.893744    -1.211115    -3.485265     6.550000 
##    -2.522548     1.109995    -1.383253    -3.376851     6.600000 
##    -2.462913     1.314377    -1.549763    -3.258305     6.650000 
##    -2.393295     1.506992    -1.710160    -3.130686     6.700000 
##    -2.314279     1.687983    -1.864011    -2.994950     6.750000 
##    -2.226444     1.857520    -2.010926    -2.851960     6.800000 
##    -2.130358     2.015793    -2.150559    -2.702493     6.850000 
##    -2.026580     2.163000    -2.282600    -2.547250     6.900000 
##    -1.915660     2.299343    -2.406774    -2.386862     6.950000 
##    -1.798137     2.425022    -2.522836    -2.221900     7.000000 
##    -1.674541     2.540230    -2.630565    -2.052881     7.050000 
##    -1.545390     2.645153    -2.729771    -1.880273     7.100000 
##    -1.411196     2.739963    -2.820281    -1.704502     7.150000 
##    -1.272461     2.824820    -2.901946    -1.525958     7.200000 
##    -1.129680     2.899866    -2.974633    -1.344998     7.250000 
##    -0.983341     2.965229    -3.038230    -1.161953     7.300000 
##    -0.833926     3.021020    -3.092638    -0.977132     7.350000 
##    -0.681911     3.067331    -3.137773    -0.790824     7.400000 
##    -0.527769     3.104235    -3.173569    -0.603303     7.450000 
##    -0.371969     3.131788    -3.199968    -0.414833     7.500000 
##    -0.214977     3.150028    -3.216928    -0.225668     7.550000 
##    -0.057260     3.158974    -3.224421    -0.036058     7.600000 
##     0.100719     3.158624    -3.222428     0.153748     7.650000 
##     0.258495     3.148962    -3.210945     0.343499     7.700000 
##     0.415600     3.129951    -3.189979     0.532942     7.750000 
##     0.571567     3.101538    -3.159552     0.721813     7.800000 
##     0.725924     3.063653    -3.119697     0.909839     7.850000 
##     0.878196     3.016210    -3.070462     1.096732     7.900000 
##     1.027904     2.959107    -3.011910     1.282185     7.950000 
##     1.174561     2.892229    -2.944119     1.465872     8.000000 
##     1.317676     2.815447    -2.867185     1.647441     8.050000 
##     1.456753     2.728624    -2.781221     1.826509     8.100000 
##     1.591285     2.631610    -2.686359     2.002663     8.150000 
##     1.720760     2.524254    -2.582756     2.175450     8.200000 
##     1.844658     2.406397    -2.470589     2.344378     8.250000 
##     1.962450     2.277885    -2.350060     2.508904     8.300000 
##     2.073602     2.138569    -2.221403     2.668437     8.350000 
##     2.177569     1.988311    -2.084880     2.822329     8.400000 
##     2.273803     1.826992    -1.940786     2.969869     8.450000 
##     2.361748     1.654519    -1.789454     3.110282     8.500000 
##     2.440845     1.470837    -1.631257     3.242723     8.550000 
##     2.510533     1.275936    -1.466613     3.366271     8.600000 
##     2.570253     1.069869    -1.295984     3.479929     8.650000 
##     2.619448     0.852762    -1.119888     3.582622     8.700000 
##     2.657571     0.624837    -0.938894     3.673197     8.750000 
##     2.684086     0.386424    -0.753634     3.750424     8.800000 
##     2.698477     0.137988    -0.564800     3.813007     8.850000 
##     2.700256    -0.119851    -0.373151     3.859588     8.900000 
##     2.688967    -0.386293    -0.179516     3.888763     8.950000 
##     2.664200    -0.660336     0.015207     3.899104     9.000000 
##     2.625597    -0.940749     0.210048     3.889187     9.050000 
##     2.572870    -1.226053     0.403966     3.857623     9.100000 
##     2.505807    -1.514502     0.595851     3.803100     9.150000 
##     2.424291    -1.804072     0.784531     3.724437     9.200000 
##     2.328310    -2.092460     0.968779     3.620636     9.250000 
##     2.217973    -2.377094     1.147322     3.490950     9.300000 
##     2.093525    -2.655153     1.318855     3.334945     9.350000 
##     1.955354    -2.923615     1.482060     3.152571     9.400000 
##     1.804002    -3.179312     1.635624     2.944218     9.450000 
##     1.640172    -3.419008     1.778264     2.710771     9.500000 
##     1.464728    -3.639495     1.908751     2.453645     9.550000 
##     1.278694    -3.837699     2.025938     2.174795     9.600000 
##     1.083242    -4.010797     2.128788     1.876707     9.650000 
##     0.879677    -4.156324     2.216395     1.562353     9.700000 
##     0.669420    -4.272285     2.288012     1.235118     9.750000 
##     0.453981    -4.357233     2.343069     0.898705     9.800000 
##     0.234929    -4.410335     2.381183     0.557014     9.850000 
##     0.013863    -4.431395     2.402171     0.214013     9.900000 
##    -0.207621    -4.420852     2.406046    -0.126398     9.950000 
##    -0.427961    -4.379743     2.393011    -0.460510    10.000000 
##    -0.645658    -4.309634     2.363452    -0.784912    10.050000 
##    -0.859301    -4.212538     2.317917    -1.096586    10.100000 
##    -1.067587    -4.090809     2.257094    -1.392956    10.150000 
##    -1.269335    -3.947042     2.181794    -1.671930    10.200000 
##    -1.463497    -3.783970     2.092920    -1.931899    10.250000 
##    -1.649164    -3.604364     1.991446    -2.171726    10.300000 
##    -1.825564    -3.410961     1.878395    -2.390713    10.350000 
##    -1.992060    -3.206391     1.754818    -2.588551    10.400000 
##    -2.148145    -2.993128     1.621772    -2.765272    10.450000 
##    -2.293429    -2.773461     1.480308    -2.921194    10.500000 
##    -2.427636    -2.549464     1.331455    -3.056861    10.550000 
##    -2.550586    -2.322994     1.176213    -3.172995    10.600000 
##    -2.662190    -2.095684     1.015541    -3.270451    10.650000 
##    -2.762435    -1.868958     0.850355    -3.350171    10.700000 
##    -2.851375    -1.644034     0.681522    -3.413154    10.750000 
##    -2.929121    -1.421945     0.509858    -3.460423    10.800000 
##    -2.995834    -1.203555     0.336129    -3.493005    10.850000 
##    -3.051714    -0.989574     0.161048    -3.511912    10.900000 
##    -3.096991    -0.780577    -0.014721    -3.518129    10.950000 
##    -3.131927    -0.577023    -0.190562    -3.512600    11.000000 
##    -3.156799    -0.379267    -0.365906    -3.496225    11.050000 
##    -3.171904    -0.187577    -0.540228    -3.469854    11.100000 
##    -3.177549    -0.002148    -0.713045    -3.434285    11.150000 
##    -3.174050     0.176890    -0.883911    -3.390266    11.200000 
##    -3.161728     0.349457    -1.052419    -3.338490    11.250000 
##    -3.140908     0.515519    -1.218193    -3.279601    11.300000 
##    -3.111915     0.675075    -1.380889    -3.214193    11.350000 
##    -3.075073     0.828153    -1.540194    -3.142815    11.400000 
##    -3.030707     0.974803    -1.695819    -3.065970    11.450000 
##    -2.979136     1.115096    -1.847500    -2.984124    11.500000 
##    -2.920676     1.249111    -1.994995    -2.897700    11.550000 
##    -2.855639     1.376942    -2.138084    -2.807090    11.600000 
##    -2.784333     1.498686    -2.276564    -2.712648    11.650000 
##    -2.707060     1.614447    -2.410251    -2.614703    11.700000 
##    -2.624116     1.724330    -2.538975    -2.513553    11.750000 
##    -2.535795     1.828440    -2.662583    -2.409473    11.800000 
##    -2.442382     1.926882    -2.780931    -2.302711    11.850000 
##    -2.344158     2.019759    -2.893892    -2.193499    11.900000 
##    -2.241400     2.107169    -3.001347    -2.082046    11.950000 
##    -2.134379     2.189208    -3.103187    -1.968544    12.000000 
##    -2.023363     2.265968    -3.199313    -1.853172    12.050000 
##    -1.908613     2.337533    -3.289637    -1.736091    12.100000 
##    -1.790387     2.403984    -3.374075    -1.617453    12.150000 
##    -1.668939     2.465396    -3.452552    -1.497396    12.200000 
##    -1.544521     2.521836    -3.524999    -1.376048    12.250000 
##    -1.417379     2.573368    -3.591356    -1.253529    12.300000 
##    -1.287758     2.620047    -3.651565    -1.129951    12.350000 
##    -1.155899     2.661921    -3.705575    -1.005417    12.400000 
##    -1.022041     2.699035    -3.753342    -0.880027    12.450000 
##    -0.886423     2.731422    -3.794823    -0.753873    12.500000 
##    -0.749279     2.759113    -3.829982    -0.627045    12.550000 
##    -0.610845     2.782130    -3.858788    -0.499629    12.600000 
##    -0.471352     2.800489    -3.881213    -0.371706    12.650000 
##    -0.331035     2.814198    -3.897233    -0.243358    12.700000 
##    -0.190125     2.823259    -3.906828    -0.114664    12.750000 
##    -0.048856     2.827668    -3.909983     0.014297    12.800000 
##     0.092541     2.827413    -3.906686     0.143445    12.850000 
##     0.233832     2.822476    -3.896929     0.272700    12.900000 
##     0.374782     2.812830    -3.880708     0.401980    12.950000 
##     0.515155     2.798446    -3.858024     0.531202    13.000000 
##     0.654713     2.779283    -3.828882     0.660277    13.050000 
##     0.793217     2.755297    -3.793290     0.789113    13.100000 
##     0.930424     2.726435    -3.751263     0.917616    13.150000 
##     1.066090     2.692640    -3.702819     1.045682    13.200000 
##     1.199966     2.653847    -3.647982     1.173204    13.250000 
##     1.331801     2.609985    -3.586782     1.300064    13.300000 
##     1.461341     2.560976    -3.519254     1.426139    13.350000 
##     1.588326     2.506740    -3.445440     1.551294    13.400000 
##     1.712494     2.447186    -3.365389     1.675384    13.450000 
##     1.833576     2.382223    -3.279157     1.798252    13.500000 
##     1.951300     2.311752    -3.186809     1.919727    13.550000 
##     2.065388     2.235673    -3.088418     2.039625    13.600000 
##     2.175559     2.153879    -2.984067     2.157744    13.650000 
##     2.281524     2.066265    -2.873849     2.273865    13.700000 
##     2.382991     1.972722    -2.757868     2.387750    13.750000 
##     2.479660     1.873142    -2.636242     2.499139    13.800000 
##     2.571227     1.767417    -2.509101     2.607751    13.850000 
##     2.657384     1.655446    -2.376590     2.713278    13.900000 
##     2.737815     1.537129    -2.238870     2.815386    13.950000 
##     2.812202     1.412378    -2.096118     2.913714    14.000000 
##     2.880222     1.281113    -1.948532     3.007869    14.050000 
##     2.941547     1.143271    -1.796328     3.097426    14.100000 
##     2.995848     0.998806    -1.639746     3.181927    14.150000 
##     3.042793     0.847694    -1.479047     3.260879    14.200000 
##     3.082049     0.689941    -1.314520     3.333750    14.250000 
##     3.113285     0.525586    -1.146480     3.399973    14.300000 
##     3.136173     0.354707    -0.975272     3.458944    14.350000 
##     3.150388     0.177433    -0.801270     3.510021    14.400000 
##     3.155614    -0.006055    -0.624884     3.552526    14.450000 
##     3.151546    -0.195509    -0.446554     3.585750    14.500000 
##     3.137890    -0.390610    -0.266761     3.608955    14.550000 
##     3.114373    -0.590953    -0.086020     3.621378    14.600000 
##     3.080741    -0.796042     0.095114     3.622245    14.650000 
##     3.036770    -1.005276     0.276048     3.610773    14.700000 
##     2.982265    -1.217945     0.456148     3.586186    14.750000 
##     2.917071    -1.433216     0.634746     3.547732    14.800000 
##     2.841076    -1.650128     0.811131     3.494698    14.850000 
##     2.754220    -1.867591     0.984563     3.426430    14.900000 
##     2.656500    -2.084380     1.154267     3.342360    14.950000 
##     2.547974    -2.299139     1.319444     3.242026    15.000000 
##     2.428775    -2.510391     1.479274     3.125102    15.050000 
##     2.299109    -2.716550     1.632923     2.991427    15.100000 
##     2.159263    -2.915937     1.779553     2.841028    15.150000 
##     2.009611    -3.106810     1.918332     2.674146    15.200000 
##     1.850614    -3.287398     2.048444     2.491257    15.250000 
##     1.682822    -3.455931     2.169103     2.293087    15.300000 
##     1.506872    -3.610693     2.279563     2.080619    15.350000 
##     1.323485    -3.750061     2.379133     1.855091    15.400000 
##     1.133462    -3.872556     2.467188     1.617987    15.450000 
##     0.937673    -3.976887     2.543184     1.371009    15.500000 
##     0.737047    -4.061992     2.606663     1.116054    15.550000 
##     0.532565    -4.127071     2.657267     0.855164    15.600000 
##     0.325238    -4.171614     2.694743     0.590481    15.650000 
##     0.116098    -4.195414     2.718943     0.324196    15.700000 
##    -0.093818    -4.198568     2.729832     0.058491    15.750000 
##    -0.303484    -4.181466     2.727482    -0.204515    15.800000 
##    -0.511900    -4.144775     2.712067    -0.462812    15.850000 
##    -0.718104    -4.089407     2.683862    -0.714543    15.900000 
##    -0.921184    -4.016480     2.643229    -0.958039    15.950000 
##    -1.120286    -3.927281     2.590610    -1.191845    16.000000 
##    -1.314626    -3.823221     2.526514    -1.414730    16.050000 
##    -1.503488    -3.705790     2.451509    -1.625696    16.100000 
##    -1.686237    -3.576523     2.366206    -1.823977    16.150000 
##    -1.862310    -3.436955     2.271253    -2.009024    16.200000 
##    -2.031223    -3.288596     2.167317    -2.180493    16.250000 
##    -2.192565    -3.132903     2.055083    -2.338225    16.300000 
##    -2.345998    -2.971259     1.935237    -2.482223    16.350000 
##    -2.491252    -2.804959     1.808464    -2.612631    16.400000 
##    -2.628116    -2.635200     1.675438    -2.729711    16.450000 
##    -2.756441    -2.463074     1.536819    -2.833821    16.500000 
##    -2.876128    -2.289567     1.393248    -2.925391    16.550000 
##    -2.987127    -2.115563     1.245341    -3.004911    16.600000 
##    -3.089428    -1.941841     1.093690    -3.072911    16.650000 
##    -3.183060    -1.769085     0.938861    -3.129946    16.700000 
##    -3.268083    -1.597888     0.781391    -3.176584    16.750000 
##    -3.344585    -1.428759     0.621787    -3.213401    16.800000 
##    -3.412680    -1.262131     0.460530    -3.240966    16.850000 
##    -3.472499    -1.098368     0.298070    -3.259838    16.900000 
##    -3.524192    -0.937772     0.134832    -3.270562    16.950000 
##    -3.567923    -0.780588    -0.028787    -3.273662    17.000000 
##    -3.603866    -0.627016    -0.192417    -3.269641    17.050000 
##    -3.632206    -0.477209    -0.355712    -3.258979    17.100000 
##    -3.653132    -0.331285    -0.518348    -3.242131    17.150000 
##    -3.666841    -0.189330    -0.680024    -3.219526    17.200000 
##    -3.673533    -0.051402    -0.840462    -3.191568    17.250000 
##    -3.673409     0.082466    -0.999401    -3.158638    17.300000 
##    -3.666674     0.212259    -1.156600    -3.121090    17.350000 
##    -3.653530     0.337980    -1.311834    -3.079257    17.400000 
##    -3.634182     0.459646    -1.464896    -3.033448    17.450000 
##    -3.608831     0.577285    -1.615593    -2.983951    17.500000 
##    -3.577677     0.690935    -1.763745    -2.931034    17.550000 
##    -3.540921     0.800642    -1.909187    -2.874946    17.600000 
##    -3.498757     0.906456    -2.051765    -2.815918    17.650000 
##    -3.451379     1.008434    -2.191337    -2.754163    17.700000 
##    -3.398979     1.106634    -2.327769    -2.689880    17.750000 
##    -3.341743     1.201119    -2.460939    -2.623251    17.800000 
##    -3.279855     1.291951    -2.590734    -2.554448    17.850000 
##    -3.213499     1.379194    -2.717048    -2.483626    17.900000 
##    -3.142851     1.462912    -2.839783    -2.410931    17.950000 
##    -3.068086     1.543168    -2.958847    -2.336498    18.000000 
##    -2.989377     1.620023    -3.074157    -2.260450    18.050000 
##    -2.906893     1.693540    -3.185635    -2.182902    18.100000 
##    -2.820798     1.763778    -3.293206    -2.103961    18.150000 
##    -2.731256     1.830794    -3.396805    -2.023725    18.200000 
##    -2.638427     1.894643    -3.496367    -1.942285    18.250000 
##    -2.542467     1.955379    -3.591834    -1.859725    18.300000 
##    -2.443533     2.013052    -3.683152    -1.776124    18.350000 
##    -2.341775     2.067711    -3.770271    -1.691553    18.400000 
##    -2.237344     2.119401    -3.853142    -1.606081    18.450000 
##    -2.130387     2.168165    -3.931723    -1.519769    18.500000 
##    -2.021050     2.214043    -4.005973    -1.432677    18.550000 
##    -1.909476     2.257073    -4.075853    -1.344857    18.600000 
##    -1.795806     2.297289    -4.141329    -1.256361    18.650000 
##    -1.680182     2.334722    -4.202367    -1.167237    18.700000 
##    -1.562742     2.369401    -4.258937    -1.077528    18.750000 
##    -1.443622     2.401353    -4.311010    -0.987276    18.800000 
##    -1.322958     2.430600    -4.358561    -0.896521    18.850000 
##    -1.200886     2.457163    -4.401564    -0.805301    18.900000 
##    -1.077540     2.481058    -4.439998    -0.713651    18.950000 
##    -0.953051     2.502300    -4.473841    -0.621605    19.000000 
##    -0.827554     2.520901    -4.503075    -0.529195    19.050000 
##    -0.701179     2.536869    -4.527681    -0.436454    19.100000 
##    -0.574058     2.550210    -4.547644    -0.343413    19.150000 
##    -0.446323     2.560926    -4.562949    -0.250100    19.200000 
##    -0.318104     2.569018    -4.573584    -0.156546    19.250000 
##    -0.189533     2.574482    -4.579537    -0.062781    19.300000 
##    -0.060742     2.577313    -4.580798     0.031167    19.350000 
##     0.068138     2.577502    -4.577358     0.125268    19.400000 
##     0.196974     2.575036    -4.569210     0.219492    19.450000 
##     0.325634     2.569901    -4.556350     0.313808    19.500000 
##     0.453984     2.562080    -4.538772     0.408185    19.550000 
##     0.581888     2.551551    -4.516475     0.502590    19.600000 
##     0.709211     2.538292    -4.489457     0.596989    19.650000 
##     0.835816     2.522275    -4.457720     0.691348    19.700000 
##     0.961565     2.503470    -4.421267     0.785629    19.750000 
##     1.086318     2.481846    -4.380102     0.879793    19.800000 
##     1.209932     2.457366    -4.334231     0.973798    19.850000 
##     1.332264     2.429991    -4.283664     1.067599    19.900000 
##     1.453170     2.399681    -4.228412     1.161151    19.950000 
##     1.572500     2.366390    -4.168488     1.254401    20.000000 
##     1.690105     2.330070    -4.103909     1.347296    20.050000 
##     1.805833     2.290672    -4.034693     1.439778    20.100000 
##     1.919529     2.248140    -3.960862     1.531783    20.150000 
##     2.031034     2.202420    -3.882441     1.623245    20.200000 
##     2.140189     2.153452    -3.799459     1.714089    20.250000 
##     2.246829     2.101174    -3.711949     1.804238    20.300000 
##     2.350789     2.045522    -3.619946     1.893606    20.350000 
##     2.451897     1.986430    -3.523492     1.982101    20.400000 
##     2.549980     1.923828    -3.422633     2.069624    20.450000 
##     2.644863     1.857647    -3.317418     2.156066    20.500000 
##     2.736363     1.787815    -3.207905     2.241311    20.550000 
##     2.824298     1.714258    -3.094155     2.325233    20.600000 
##     2.908479     1.636902    -2.976238     2.407696    20.650000 
##     2.988715     1.555675    -2.854230     2.488551    20.700000 
##     3.064811     1.470502    -2.728213     2.567640    20.750000 
##     3.136569     1.381311    -2.598280     2.644791    20.800000 
##     3.203785     1.288032    -2.464531     2.719817    20.850000 
##     3.266255     1.190599    -2.327076     2.792518    20.900000 
##     3.323769     1.088948    -2.186036     2.862680    20.950000 
##     3.376115     0.983023    -2.041543     2.930069    21.000000 
##     3.423079     0.872774    -1.893740     2.994436    21.050000 
##     3.464442     0.758159    -1.742783     3.055515    21.100000 
##     3.499988     0.639149    -1.588842     3.113019    21.150000 
##     3.529495     0.515726    -1.432102     3.166643    21.200000 
##     3.552742     0.387890    -1.272764     3.216061    21.250000 
##     3.569509     0.255656    -1.111045     3.260927    21.300000 
##     3.579577     0.119065    -0.947179     3.300875    21.350000 
##     3.582730    -0.021822    -0.781421     3.335517    21.400000 
##     3.578754    -0.166911    -0.614042     3.364448    21.450000 
##     3.567441    -0.316077    -0.445339     3.387242    21.500000 
##     3.548591    -0.469160    -0.275625     3.403456    21.550000 
##     3.522011    -0.625954    -0.105240     3.412632    21.600000 
##     3.487522    -0.786210     0.065456     3.414302    21.650000 
##     3.444955    -0.949627     0.236078     3.407987    21.700000 
##     3.394159    -1.115849     0.406217     3.393205    21.750000 
##     3.335003    -1.284457     0.575439     3.369476    21.800000 
##     3.267377    -1.454971     0.743288     3.336332    21.850000 
##     3.191195    -1.626839     0.909285     3.293317    21.900000 
##     3.106403    -1.799439     1.072927     3.240007    21.950000 
##     3.012977    -1.972079     1.233691     3.176010    22.000000 
##     2.910930    -2.143990     1.391035     3.100987    22.050000 
##     2.800315    -2.314335     1.544404     3.014657    22.100000 
##     2.681229    -2.482208     1.693226     2.916815    22.150000 
##     2.553815    -2.646641     1.836924     2.807341    22.200000 
##     2.418263    -2.806614     1.974915     2.686218    22.250000 
##     2.274819    -2.961068     2.106618     2.553541    22.300000 
##     2.123780    -3.108915     2.231460     2.409528    22.350000 
##     1.965499    -3.249059     2.348880     2.254532    22.400000 
##     1.800381    -3.380414     2.458337     2.089043    22.450000 
##     1.628889    -3.501925     2.559320     1.913693    22.500000 
##     1.451534    -3.612593     2.651351     1.729254    22.550000 
##     1.268878    -3.711495     2.733992     1.536634    22.600000 
##     1.081525    -3.797807     2.806855     1.336862    22.650000 
##     0.890120    -3.870828     2.869604     1.131080    22.700000 
##     0.695338    -3.929992     2.921963     0.920519    22.750000 
##     0.497883    -3.974887     2.963719     0.706479    22.800000 
##     0.298473    -4.005263     2.994726     0.490303    22.850000 
##     0.097836    -4.021037     3.014902     0.273352    22.900000 
##    -0.103299    -4.022294     3.024237     0.056978    22.950000 
##    -0.304209    -4.009280     3.022786    -0.157506    23.000000 
##    -0.504190    -3.982392     3.010669    -0.368842    23.050000 
##    -0.702557    -3.942166     2.988068    -0.575856    23.100000 
##    -0.898657    -3.889258     2.955219    -0.777470    23.150000 
##    -1.091869    -3.824424     2.912413    -0.972722    23.200000 
##    -1.281615    -3.748503     2.859986    -1.160768    23.250000 
##    -1.467356    -3.662391     2.798312    -1.340892    23.300000 
##    -1.648604    -3.567022     2.727800    -1.512507    23.350000 
##    -1.824913    -3.463350     2.648885    -1.675151    23.400000 
##    -1.995887    -3.352331     2.562023    -1.828482    23.450000 
##    -2.161179    -3.234906     2.467685    -1.972273    23.500000 
##    -2.320486    -3.111990     2.366350    -2.106400    23.550000 
##    -2.473552    -2.984461     2.258502    -2.230832    23.600000 
##    -2.620162    -2.853148     2.144627    -2.345622    23.650000 
##    -2.760144    -2.718833     2.025202    -2.450894    23.700000 
##    -2.893361    -2.582239     1.900702    -2.546829    23.750000 
##    -3.019714    -2.444032     1.771588    -2.633663    23.800000 
##    -3.139135    -2.304820     1.638310    -2.711669    23.850000 
##    -3.251583    -2.165153     1.501303    -2.781151    23.900000 
##    -3.357047    -2.025524     1.360988    -2.842436    23.950000 
##    -3.455537    -1.886375     1.217767    -2.895868    24.000000 
##    -3.547086    -1.748092     1.072026    -2.941800    24.050000 
##    -3.631744    -1.611017     0.924132    -2.980589    24.100000 
##    -3.709577    -1.475446     0.774436    -3.012594    24.150000 
##    -3.780665    -1.341636     0.623270    -3.038168    24.200000 
##    -3.845102    -1.209804     0.470948    -3.057659    24.250000 
##    -3.902990    -1.080135     0.317768    -3.071405    24.300000 
##    -3.954440    -0.952782     0.164010    -3.079736    24.350000 
##    -3.999571    -0.827874     0.009939    -3.082968    24.400000 
##    -4.038507    -0.705511    -0.144197    -3.081404    24.450000 
##    -4.071377    -0.585776    -0.298163    -3.075333    24.500000 
##    -4.098314    -0.468729    -0.451740    -3.065033    24.550000 
##    -4.119454    -0.354416    -0.604722    -3.050765    24.600000 
##    -4.134932    -0.242868    -0.756915    -3.032778    24.650000 
##    -4.144889    -0.134102    -0.908138    -3.011307    24.700000 
##    -4.149464    -0.028125    -1.058221    -2.986572    24.750000 
##    -4.148795     0.075065    -1.207006    -2.958782    24.800000 
##    -4.143022     0.175478    -1.354343    -2.928133    24.850000 
##    -4.132284     0.273131    -1.500094    -2.894809    24.900000 
##    -4.116719     0.368048    -1.644127    -2.858982    24.950000 
##    -4.096461     0.460256    -1.786322    -2.820814    25.000000 
##    -4.071647     0.549786    -1.926564    -2.780456    25.050000 
##    -4.042410     0.636673    -2.064747    -2.738048    25.100000 
##    -4.008880     0.720953    -2.200770    -2.693725    25.150000 
##    -3.971188     0.802666    -2.334541    -2.647608    25.200000 
##    -3.929461     0.881851    -2.465972    -2.599814    25.250000 
##    -3.883825     0.958550    -2.594981    -2.550449    25.300000 
##    -3.834402     1.032805    -2.721493    -2.499614    25.350000 
##    -3.781316     1.104657    -2.845434    -2.447403    25.400000 
##    -3.724684     1.174148    -2.966740    -2.393904    25.450000 
##    -3.664623     1.241320    -3.085345    -2.339196    25.500000 
##    -3.601251     1.306215    -3.201193    -2.283358    25.550000 
##    -3.534678     1.368871    -3.314227    -2.226458    25.600000 
##    -3.465016     1.429331    -3.424396    -2.168563    25.650000 
##    -3.392375     1.487631    -3.531651    -2.109735    25.700000 
##    -3.316862     1.543810    -3.635947    -2.050031    25.750000 
##    -3.238581     1.597904    -3.737241    -1.989504    25.800000 
##    -3.157637     1.649950    -3.835493    -1.928204    25.850000 
##    -3.074131     1.699980    -3.930666    -1.866177    25.900000 
##    -2.988163     1.748029    -4.022723    -1.803467    25.950000 
##    -2.899832     1.794127    -4.111632    -1.740114    26.000000 
##    -2.809234     1.838305    -4.197361    -1.676156    26.050000 
##    -2.716466     1.880592    -4.279880    -1.611628    26.100000 
##    -2.621620     1.921015    -4.359162    -1.546562    26.150000 
##    -2.524790     1.959601    -4.435181    -1.480990    26.200000 
##    -2.426068     1.996373    -4.507911    -1.414939    26.250000 
##    -2.325542     2.031356    -4.577330    -1.348438    26.300000 
##    -2.223303     2.064570    -4.643415    -1.281511    26.350000 
##    -2.119438     2.096037    -4.706146    -1.214181    26.400000 
##    -2.014035     2.125775    -4.765502    -1.146471    26.450000 
##    -1.907179     2.153802    -4.821465    -1.078402    26.500000 
##    -1.798955     2.180134    -4.874019    -1.009992    26.550000 
##    -1.689449     2.204785    -4.923145    -0.941261    26.600000 
##    -1.578743     2.227770    -4.968828    -0.872226    26.650000 
##    -1.466922     2.249100    -5.011054    -0.802904    26.700000 
##    -1.354066     2.268785    -5.049809    -0.733309    26.750000 
##    -1.240260     2.286836    -5.085078    -0.663458    26.800000 
##    -1.125583     2.303259    -5.116850    -0.593365    26.850000 
##    -1.010117     2.318061    -5.145113    -0.523043    26.900000 
##    -0.893944     2.331247    -5.169855    -0.452505    26.950000 
##    -0.777144     2.342821    -5.191066    -0.381765    27.000000 
##    -0.659797     2.352785    -5.208737    -0.310835    27.050000 
##    -0.541984     2.361140    -5.222857    -0.239727    27.100000 
##    -0.423786     2.367885    -5.233418    -0.168453    27.150000 
##    -0.305283     2.373020    -5.240413    -0.097026    27.200000 
##    -0.186555     2.376539    -5.243834    -0.025457    27.250000 
##    -0.067683     2.378440    -5.243673     0.046241    27.300000 
##     0.051251     2.378715    -5.239925     0.118057    27.350000 
##     0.170166     2.377358    -5.232584     0.189979    27.400000 
##     0.288980     2.374359    -5.221645     0.261994    27.450000 
##     0.407612     2.369708    -5.207104     0.334088    27.500000 
##     0.525978     2.363394    -5.188957     0.406250    27.550000 
##     0.643994     2.355402    -5.167200     0.478464    27.600000 
##     0.761578     2.345720    -5.141832     0.550718    27.650000 
##     0.878643     2.334330    -5.112850     0.622995    27.700000 
##     0.995104     2.321215    -5.080255     0.695279    27.750000 
##     1.110874     2.306356    -5.044046     0.767555    27.800000 
##     1.225867     2.289732    -5.004223     0.839805    27.850000 
##     1.339992     2.271320    -4.960788     0.912010    27.900000 
##     1.453161     2.251098    -4.913744     0.984150    27.950000 
##     1.565282     2.229039    -4.863095     1.056204    28.000000 
##     1.676263     2.205117    -4.808846     1.128149    28.050000 
##     1.786010     2.179303    -4.751002     1.199961    28.100000 
##     1.894429     2.151568    -4.689570     1.271615    28.150000 
##     2.001421     2.121879    -4.624559     1.343082    28.200000 
##     2.106890     2.090203    -4.555979     1.414333    28.250000 
##     2.210734     2.056505    -4.483841     1.485336    28.300000 
##     2.312852     2.020749    -4.408159     1.556057    28.350000 
##     2.413141     1.982896    -4.328946     1.626458    28.400000 
##     2.511495     1.942907    -4.246221     1.696500    28.450000 
##     2.607806     1.900740    -4.160002     1.766140    28.500000 
##     2.701964     1.856353    -4.070309     1.835332    28.550000 
##     2.793858     1.809701    -3.977166     1.904027    28.600000 
##     2.883373     1.760739    -3.880600     1.972171    28.650000 
##     2.970393     1.709420    -3.780638     2.039708    28.700000 
##     3.054799     1.655695    -3.677312     2.106575    28.750000 
##     3.136470     1.599515    -3.570658     2.172705    28.800000 
##     3.215282     1.540831    -3.460713     2.238029    28.850000 
##     3.291109     1.479591    -3.347519     2.302468    28.900000 
##     3.363823     1.415743    -3.231122     2.365940    28.950000 
##     3.433290     1.349236    -3.111572     2.428357    29.000000 
##     3.499379     1.280017    -2.988924     2.489623    29.050000 
##     3.561951     1.208035    -2.863238     2.549635    29.100000 
##     3.620868     1.133239    -2.734577     2.608284    29.150000 
##     3.675989     1.055578    -2.603014     2.665453    29.200000 
##     3.727168     0.975004    -2.468623     2.721014    29.250000 
##     3.774259     0.891471    -2.331489     2.774832    29.300000 
##     3.817114     0.804934    -2.191701     2.826764    29.350000 
##     3.855582     0.715354    -2.049356     2.876654    29.400000 
##     3.889508     0.622695    -1.904561     2.924338    29.450000 
##     3.918740     0.526926    -1.757428     2.969640    29.500000 
##     3.943121     0.428023    -1.608080     3.012372    29.550000 
##     3.962494     0.325969    -1.456651     3.052337    29.600000 
##     3.976701     0.220756    -1.303282     3.089324    29.650000 
##     3.985584     0.112386    -1.148127     3.123109    29.700000 
##     3.988985     0.000874    -0.991350     3.153458    29.750000 
##     3.986749    -0.113754    -0.833129     3.180123    29.800000 
##     3.978719    -0.231453    -0.673652     3.202844    29.850000 
##     3.964744    -0.352163    -0.513122     3.221349    29.900000 
##     3.944675    -0.475805    -0.351756     3.235355    29.950000 
##     3.918366    -0.602274    -0.189784     3.244568    30.000000