The order of the ODE refers to the order of the derivative on the left-hand side in the equation $$ \begin{equation} \frac{dy}{dt}=f(t,y). \label{_auto1} \end{equation} $$ This equation is of first order and \( f \) is an arbitrary function. A second-order equation goes typically like $$ \begin{equation} \frac{d^2y}{dt^2}=f(t,\frac{dy}{dt},y). \label{_auto2} \end{equation} $$ A well-known second-order equation is Newton's second law $$ \begin{equation} m\frac{d^2x}{dt^2}=-kx, \label{eq:newton} \end{equation} $$ where \( k \) is the force constant. ODE depend only on one variable
partial differential equations like the time-dependent Schr\"odinger equation $$ \begin{equation} i\hbar\frac{\partial \psi({\bf x},t)}{\partial t}= -\frac{\hbar^2}{2m}\left( \frac{\partial^2 \psi({\bf r},t)}{\partial x^2} + \frac{\partial^2 \psi({\bf r},t)}{\partial y^2}+ \frac{\partial^2 \psi({\bf r},t)}{\partial z^2}\right) + V({\bf x})\psi({\bf x},t), \label{_auto3} \end{equation} $$ may depend on several variables. In certain cases, like the above equation, the wave function can be factorized in functions of the separate variables, so that the Schroedinger equation can be rewritten in terms of sets of ordinary differential equations. These equations are discussed in chapter 10. Involve boundary conditions in addition to initial conditions.
We distinguish also between linear and non-linear differential equation where for example $$ \begin{equation} \frac{dy}{dt}=g^3(t)y(t), \label{_auto4} \end{equation} $$ is an example of a linear equation, while $$ \begin{equation} \frac{dy}{dt}=g^3(t)y(t)-g(t)y^2(t), \label{_auto5} \end{equation} $$ is a non-linear ODE.
Another concept which dictates the numerical method chosen for solving an ODE, is that of initial and boundary conditions. To give an example, if we study white dwarf stars or neutron stars we will need to solve two coupled first-order differential equations, one for the total mass \( m \) and one for the pressure \( P \) as functions of \( \rho \) $$ \frac{dm}{dr}=4\pi r^{2}\rho (r)/c^2, $$ and $$ \frac{dP}{dr}=-\frac{Gm(r)}{r^{2}}\rho (r)/c^2. $$ where \( \rho \) is the mass-energy density. The initial conditions are dictated by the mass being zero at the center of the star, i.e., when \( r=0 \), yielding \( m(r=0)=0 \). The other condition is that the pressure vanishes at the surface of the star.
In the solution of the Schroedinger equation for a particle in a potential, we may need to apply boundary conditions as well, such as demanding continuity of the wave function and its derivative.
In many cases it is possible to rewrite a second-order differential equation in terms of two first-order differential equations. Consider again the case of Newton's second law in Eq. \eqref{eq:newton}. If we define the position \( x(t)=y^{(1)}(t) \) and the velocity \( v(t)=y^{(2)}(t) \) as its derivative $$ \begin{equation} \frac{dy^{(1)}(t)}{dt}=\frac{dx(t)}{dt}=y^{(2)}(t), \label{_auto6} \end{equation} $$ we can rewrite Newton's second law as two coupled first-order differential equations $$ \begin{equation} m\frac{dy^{(2)}(t)}{dt}=-kx(t)=-ky^{(1)}(t), \label{eq:n1} \end{equation} $$ and $$ \begin{equation} \frac{dy^{(1)}(t)}{dt}=y^{(2)}(t). \label{eq:n2} \end{equation} $$
These methods fall under the general class of one-step methods. The algoritm is rather simple. Suppose we have an initial value for the function \( y(t) \) given by $$ \begin{equation} y_0=y(t=t_0). \label{_auto7} \end{equation} $$ We are interested in solving a differential equation in a region in space \( [a,b] \). We define a step \( h \) by splitting the interval in \( N \) sub intervals, so that we have $$ \begin{equation} h=\frac{b-a}{N}. \label{_auto8} \end{equation} $$ With this step and the derivative of \( y \) we can construct the next value of the function \( y \) at $$ \begin{equation} y_1=y(t_1=t_0+h), \label{_auto9} \end{equation} $$ and so forth.
If the function is rather well-behaved in the domain \( [a,b] \), we can use a fixed step size. If not, adaptive steps may be needed. Here we concentrate on fixed-step methods only. Let us try to generalize the above procedure by writing the step \( y_{i+1} \) in terms of the previous step \( y_i \) $$ \begin{equation} y_{i+1}=y(t=t_i+h)=y(t_i) + h\Delta(t_i,y_i(t_i)) + O(h^{p+1}), \label{_auto10} \end{equation} $$ where \( O(h^{p+1}) \) represents the truncation error. To determine \( \Delta \), we Taylor expand our function \( y \) $$ \begin{equation} y_{i+1}=y(t=t_i+h)=y(t_i) + h(y'(t_i)+\dots +y^{(p)}(t_i)\frac{h^{p-1}}{p!}) + O(h^{p+1}), \label{eq:taylor} \end{equation} $$ where we will associate the derivatives in the parenthesis with $$ \begin{equation} \Delta(t_i,y_i(t_i))=(y'(t_i)+\dots +y^{(p)}(t_i)\frac{h^{p-1}}{p!}). \label{eq:delta} \end{equation} $$
We define $$ \begin{equation} y'(t_i)=f(t_i,y_i) \label{_auto11} \end{equation} $$ and if we truncate \( \Delta \) at the first derivative, we have $$ \begin{equation} y_{i+1}=y(t_i) + hf(t_i,y_i) + O(h^2), \label{eq:euler} \end{equation} $$ which when complemented with \( t_{i+1}=t_i+h \) forms the algorithm for the well-known Euler method. Note that at every step we make an approximation error of the order of \( O(h^2) \), however the total error is the sum over all steps \( N=(b-a)/h \), yielding thus a global error which goes like \( NO(h^2)\approx O(h) \).
To make Euler's method more precise we can obviously decrease \( h \) (increase \( N \)). However, if we are computing the derivative \( f \) numerically by for example the two-steps formula $$ f'_{2c}(x)= \frac{f(x+h)-f(x)}{h}+O(h), $$ we can enter into roundoff error problems when we subtract two almost equal numbers \( f(x+h)-f(x)\approx 0 \). Euler's method is not recommended for precision calculation, although it is handy to use in order to get a first view on how a solution may look like. As an example, consider Newton's equation rewritten in Eqs. \eqref{eq:n1} and \eqref{eq:n2}. We define \( y_0=y^{(1)}(t=0) \) an \( v_0=y^{(2)}(t=0) \). The first steps in Newton's equations are then $$ \begin{equation} y^{(1)}_1=y_0+hv_0+O(h^2) \label{_auto12} \end{equation} $$ and $$ \begin{equation} y^{(2)}_1=v_0-hy_0k/m+O(h^2). \label{_auto13} \end{equation} $$
The Euler method is asymmetric in time, since it uses information about the derivative at the beginning of the time interval. This means that we evaluate the position at \( y^{(1)}_1 \) using the velocity at \( y^{(2)}_0=v_0 \). A simple variation is to determine \( y^{(1)}_{n+1} \) using the velocity at \( y^{(2)}_{n+1} \), that is (in a slightly more generalized form) $$ \begin{equation} y^{(1)}_{n+1}=y^{(1)}_{n}+h y^{(2)}_{n+1}+O(h^2) \label{_auto14} \end{equation} $$ and $$ \begin{equation} y^{(2)}_{n+1}=y^{(2)}_{n}+h a_{n}+O(h^2). \label{_auto15} \end{equation} $$ The acceleration \( a_n \) is a function of \( a_n(y^{(1)}_{n}, y^{(2)}_{n},t) \) and needs to be evaluated as well. This is the Euler-Cromer method.
Let us then include the second derivative in our Taylor expansion. We have then $$ \begin{equation} \Delta(t_i,y_i(t_i))=f(t_i)+\frac{h}{2}\frac{df(t_i,y_i)}{dt}+O(h^3). \label{_auto16} \end{equation} $$ The second derivative can be rewritten as $$ \begin{equation} y''=f'=\frac{df}{dt}=\frac{\partial f}{\partial t}+\frac{\partial f}{\partial y}\frac{\partial y}{\partial t}=\frac{\partial f}{\partial t}+\frac{\partial f}{\partial y}f \label{eq:derivatives} \end{equation} $$ and we can rewrite Eq.\ \eqref{eq:taylor} as $$ \begin{equation} y_{i+1}=y(t=t_i+h)=y(t_i) +hf(t_i)+ \frac{h^2}{2}\left(\frac{\partial f}{\partial t}+\frac{\partial f}{\partial y}f\right) + O(h^{3 }), \label{_auto17} \end{equation} $$ which has a local approximation error \( O(h^{3 }) \) and a global error \( O(h^{2}) \).
These approximations can be generalized by using the derivative \( f \) to arbitrary order so that we have $$ \begin{equation} y_{i+1}=y(t=t_i+h)=y(t_i) + h(f(t_i,y_i)+\dots f^{(p-1)}(t_i,y_i) \frac{h^{p-1}}{p!}) + O(h^{p+1}). \label{_auto18} \end{equation} $$ These methods, based on higher-order derivatives, are in general not used in numerical computation, since they rely on evaluating derivatives several times. Unless one has analytical expressions for these, the risk of roundoff errors is large.
The most obvious improvements to Euler's and Euler-Cromer's algorithms, avoiding in addition the need for computing a second derivative, is the so-called midpoint method. We have then $$ \begin{equation} y^{(1)}_{n+1}=y^{(1)}_{n}+\frac{h}{2}\left(y^{(2)}_{n+1}+y^{(2)}_{n}\right)+O(h^2) \label{_auto19} \end{equation} $$ and $$ \begin{equation} y^{(2)}_{n+1}=y^{(2)}_{n}+h a_{n}+O(h^2), \label{_auto20} \end{equation} $$ yielding $$ \begin{equation} y^{(1)}_{n+1}=y^{(1)}_{n}+hy^{(2)}_{n}+\frac{h^2}{2}a_n+O(h^3) \label{_auto21} \end{equation} $$ implying that the local truncation error in the position is now \( O(h^3) \), whereas Euler's or Euler-Cromer's methods have a local error of \( O(h^2) \).
Thus, the midpoint method yields a global error with second-order accuracy for the position and first-order accuracy for the velocity. However, although these methods yield exact results for constant accelerations, the error increases in general with each time step.
One method that avoids this is the so-called half-step method. Here we define $$ \begin{equation} y^{(2)}_{n+1/2}=y^{(2)}_{n-1/2}+h a_{n}+O(h^2), \label{_auto22} \end{equation} $$ and $$ \begin{equation} y^{(1)}_{n+1}=y^{(1)}_{n}+hy^{(2)}_{n+1/2} +O(h^2). \label{_auto23} \end{equation} $$ Note that this method needs the calculation of \( y^{(2)}_{1/2} \). This is done using e.g., Euler's method $$ \begin{equation} y^{(2)}_{1/2}=y^{(2)}_{0}+h a_{0}+O(h^2). \label{_auto24} \end{equation} $$ As this method is numerically stable, it is often used instead of Euler's method.
Another method which one may encounter is the Euler-Richardson method with $$ \begin{equation} y^{(2)}_{n+1}=y^{(2)}_{n}+h a_{n+1/2}+O(h^2), \label{eq:er1} \end{equation} $$ and $$ \begin{equation} \label{eq:er2} y^{(1)}_{n+1}=y^{(1)}_{n}+hy^{(2)}_{n+1/2} +O(h^2). \end{equation} $$
Another set of popular algorithms, which are both numerically stable and easy to implement are the Verlet algorithms, with the velocity Verlet method as widely used in for example Molecular dynamics calculations. Consider again a second-order differential equation like Newton's second law, whose one-dimensional version reads $$ m\frac{d^2 x}{dt^2}= F(x,t), $$ which we rewrite in terms of two coupled differential equations $$ \frac{dx}{dt}=v(x,t) \hspace{1cm}\mathrm{and}\hspace{1cm} \frac{dv}{dt}=F(x,t)/m=a(x,t). $$
If we now perform a Taylor expansion $$ x(t+h) = x(t)+hx^{(1)}(t)+\frac{h^2}{2}x^{(2)}(t)+O(h^3). $$ In our case the second derivative is known via Newton's second law, namely \( x^{(2)}(t)=a(x,t) \). If we add to the above equation the corresponding Taylor expansion for \( x(t-h) \), we obtain, using the discretized expressions $$ x(t_i\pm h) = x_{i\pm 1} \hspace{1cm}\mathrm{and}\hspace{1cm} x_i=x(t_i), $$ we arrive at $$ x_{i+1} = 2x_i - x_{i-1} +h^2x^{(2)}_i+O(h^4). $$
We note that the truncation error goes like \( O(h^4) \) since all the odd terms cancel when we add the two Taylor expansions. We see also that the velocity is not directly included in the equation since the function \( x^{(2)}=a(x,t) \) is supposed to be known. If we need the velocity however, we can compute it using the well-known formula $$ x^{(1)}_i=\frac{x_{i+1}-x_{i-1}}{2h}+O(h^2). $$ We note that the velocity has a truncation error which goes like \( O(h^2) \). In for example so-called Molecular dynamics calculations, since the acceleration is normally known via Newton's second law, there is seldomly a need for computing the velocity.
We note also that the algorithm for the position is not self-starting since, for \( i=0 \) it depends on the value of \( x \) at the fictitious value \( x_{-1} \).
We can amend this by introducing the velocity Verlet method.
We have the Taylor expansion for the position given by $$ x_{i+1} = x_i+hx^{(1)}_i+\frac{h^2}{2}x^{(2)}_i+O(h^3). $$ The corresponding expansion for the velocity is $$ v_{i+1} = v_i+hv^{(1)}_i+\frac{h^2}{2}v^{(2)}_i+O(h^3). $$ Via Newton's second law we have normally an analytical expression for the derivative of the velocity, namely $$ v^{(1)}_i = \frac{d^2 x}{dt^2}\vert_{i}= \frac{F(x_i,t_i)}{m}, $$
If we add to this the corresponding expansion for the derivative of the velocity $$ v^{(1)}_{i+1} = v^{(1)}_i+hv^{(2)}_i+O(h^2), $$ and retain only terms up to the second derivative of the velocity since our error goes as \( O(h^3) \), we have $$ hv^{(2)}_i\approx v^{(1)}_{i+1}-v^{(1)}_i. $$ We can then rewrite the Taylor expansion for the velocity as $$ v_{i+1} = v_i+\frac{h}{2}\left( v^{(1)}_{i+1}+v^{(1)}_{i}\right)+O(h^3). $$
Our final equations for the position and the velocity become then $$ x_{i+1} = x_i+hv_i+\frac{h^2}{2}v^{(1)}_{i}+O(h^3), $$ and $$ v_{i+1} = v_i+\frac{h}{2}\left( v^{(1)}_{i+1}+v^{(1)}_{i}\right)+O(h^3). $$ Note well that the term \( v^{(1)}_{i+1} \) depends on the position at \( x_{i+1} \). This means that you need to calculate the position at the updated time \( t_{i+1} \) before the computing the next velocity. Note also that the derivative of the velocity at the time \( t_i \) used in the updating of the position can be reused in the calculation of the velocity update as well.
Runge-Kutta (RK) methods are based on Taylor expansion formulae, but yield in general better algorithms for solutions of an ODE. The basic philosophy is that it provides an intermediate step in the computation of \( y_{i+1} \).
To see this, consider first the following definitions $$ \begin{equation} \frac{dy}{dt}=f(t,y), \label{_auto25} \end{equation} $$ and $$ \begin{equation} y(t)=\int f(t,y) dt, \label{_auto26} \end{equation} $$ and $$ \begin{equation} y_{i+1}=y_i+ \int_{t_i}^{t_{i+1}} f(t,y) dt. \label{_auto27} \end{equation} $$
To demonstrate the philosophy behind RK methods, let us consider the second-order RK method, RK2. The first approximation consists in Taylor expanding \( f(t,y) \) around the center of the integration interval \( t_i \) to \( t_{i+1} \), that is, at \( t_i+h/2 \), \( h \) being the step. Using the midpoint formula for an integral, defining \( y(t_i+h/2) = y_{i+1/2} \) and \( t_i+h/2 = t_{i+1/2} \), we obtain $$ \begin{equation} \int_{t_i}^{t_{i+1}} f(t,y) dt \approx hf(t_{i+1/2},y_{i+1/2}) +O(h^3). \label{_auto28} \end{equation} $$ This means in turn that we have $$ \begin{equation} y_{i+1}=y_i + hf(t_{i+1/2},y_{i+1/2}) +O(h^3). \label{_auto29} \end{equation} $$
However, we do not know the value of \( y_{i+1/2} \). Here comes thus the next approximation, namely, we use Euler's method to approximate \( y_{i+1/2} \). We have then $$ \begin{equation} y_{(i+1/2)}=y_i + \frac{h}{2}\frac{dy}{dt} = y(t_i) + \frac{h}{2}f(t_i,y_i). \label{_auto30} \end{equation} $$ This means that we can define the following algorithm for the second-order Runge-Kutta method, RK2. $$ \begin{equation} k_1=hf(t_i,y_i), \label{_auto31} \end{equation} $$ $$ \begin{equation} k_2=hf(t_{i+1/2},y_i+k_1/2), \label{_auto32} \end{equation} $$ with the final value $$ \begin{equation} y_{i+i}\approx y_i + k_2 +O(h^3). \label{_auto33} \end{equation} $$
The difference between the previous one-step methods is that we now need an intermediate step in our evaluation, namely \( t_i+h/2 = t_{(i+1/2)} \) where we evaluate the derivative \( f \). This involves more operations, but the gain is a better stability in the solution.
The fourth-order Runge-Kutta, RK4, which we will employ in the solution of various differential equations below, has the following algorithm $$ k_1=hf(t_i,y_i) \hspace{0.5cm} k_2=hf(t_i+h/2,y_i+k_1/2) $$ $$ k_3=hf(t_i+h/2,y_i+k_2/2)\hspace{0.5cm} k_4=hf(t_i+h,y_i+k_3) $$ with the final result $$ y_{i+1}=y_i +\frac{1}{6}\left( k_1 +2k_2+2k_3+k_4\right). $$ Thus, the algorithm consists in first calculating \( k_1 \) with \( t_i \), \( y_1 \) and \( f \) as inputs. Thereafter, we increase the step size by \( h/2 \) and calculate \( k_2 \), then \( k_3 \) and finally \( k_4 \). The global error goes as \( O(h^4) \).
Our first example is the classical case of simple harmonic oscillations, namely a block sliding on a horizontal frictionless surface. The block is tied to a wall with a spring. If the spring is not compressed or stretched too far, the force on the block at a given position \( x \) is $$ F=-kx. $$ The negative sign means that the force acts to restore the object to an equilibrium position. Newton's equation of motion for this idealized system is then $$ m\frac{d^2x}{dt^2}=-kx, $$ or we could rephrase it as $$ \frac{d^2x}{dt^2}=-\frac{k}{m}x=-\omega_0^2x, \label{eq:newton1} $$ with the angular frequency \( \omega_0^2=k/m \).
The above differential equation has the advantage that it can be solved analytically with solutions on the form $$ x(t)=Acos(\omega_0t+\nu), $$ where \( A \) is the amplitude and \( \nu \) the phase constant. This provides in turn an important test for the numerical solution and the development of a program for more complicated cases which cannot be solved analytically.
With the position \( x(t) \) and the velocity \( v(t)=dx/dt \) we can reformulate Newton's equation in the following way $$ \frac{dx(t)}{dt}=v(t), $$ and $$ \frac{dv(t)}{dt}=-\omega_0^2x(t). $$ We are now going to solve these equations using the Runge-Kutta method to fourth order discussed previously.
Before proceeding however, it is important to note that in addition to the exact solution, we have at least two further tests which can be used to check our solution.
Since functions like \( cos \) are periodic with a period \( 2\pi \), then the solution \( x(t) \) has also to be periodic. This means that $$ x(t+T)=x(t), $$ with \( T \) the period defined as $$ T=\frac{2\pi}{\omega_0}=\frac{2\pi}{\sqrt{k/m}}. $$ Observe that \( T \) depends only on \( k/m \) and not on the amplitude of the solution.
In addition to the periodicity test, the total energy has also to be conserved.
Suppose we choose the initial conditions $$ x(t=0)=1\hspace{0.1cm} \mathrm{m}\hspace{1cm} v(t=0)=0\hspace{0.1cm}\mathrm{m/s}, $$ meaning that block is at rest at \( t=0 \) but with a potential energy $$ E_0=\frac{1}{2}kx(t=0)^2=\frac{1}{2}k. $$ The total energy at any time \( t \) has however to be conserved, meaning that our solution has to fulfil the condition $$ E_0=\frac{1}{2}kx(t)^2+\frac{1}{2}mv(t)^2. $$
An algorithm which implements these equations is included below.
The following python program performs essentially the same calculations as the previous c++ code.
The angular equation of motion of the pendulum is given by Newton's equation and with no external force it reads $$ \begin{equation} ml\frac{d^2\theta}{dt^2}+mgsin(\theta)=0, \label{_auto34} \end{equation} $$ with an angular velocity and acceleration given by $$ \begin{equation} v=l\frac{d\theta}{dt}, \label{_auto35} \end{equation} $$ and $$ \begin{equation} a=l\frac{d^2\theta}{dt^2}. \label{_auto36} \end{equation} $$
We do however expect that the motion will gradually come to an end due a viscous drag torque acting on the pendulum. In the presence of the drag, the above equation becomes $$ \begin{equation} ml\frac{d^2\theta}{dt^2}+\nu\frac{d\theta}{dt} +mgsin(\theta)=0, \label{eq:pend1} \end{equation} $$ where \( \nu \) is now a positive constant parameterizing the viscosity of the medium in question. In order to maintain the motion against viscosity, it is necessary to add some external driving force. We choose here a periodic driving force. The last equation becomes then $$ \begin{equation} ml\frac{d^2\theta}{dt^2}+\nu\frac{d\theta}{dt} +mgsin(\theta)=Asin(\omega t), \label{eq:pend2} \end{equation} $$ with \( A \) and \( \omega \) two constants representing the amplitude and the angular frequency respectively. The latter is called the driving frequency.
We define $$ \omega_0=\sqrt{g/l}, $$ the so-called natural frequency and the new dimensionless quantities $$ \hat{t}=\omega_0t, $$ with the dimensionless driving frequency $$ \hat{\omega}=\frac{\omega}{\omega_0}, $$ and introducing the quantity \( Q \), called the quality factor, $$ Q=\frac{mg}{\omega_0\nu}, $$ and the dimensionless amplitude $$ \hat{A}=\frac{A}{mg} $$
We have $$ \frac{d^2\theta}{d\hat{t}^2}+\frac{1}{Q}\frac{d\theta}{d\hat{t}} +sin(\theta)=\hat{A}cos(\hat{\omega}\hat{t}). $$ This equation can in turn be recast in terms of two coupled first-order differential equations as follows $$ \frac{d\theta}{d\hat{t}}=\hat{v}, $$ and $$ \frac{d\hat{v}}{d\hat{t}}=-\frac{\hat{v}}{Q}-sin(\theta)+\hat{A}cos(\hat{\omega}\hat{t}). $$ These are the equations to be solved. The factor \( Q \) represents the number of oscillations of the undriven system that must occur before its energy is significantly reduced due to the viscous drag. The amplitude \( \hat{A} \) is measured in units of the maximum possible gravitational torque while \( \hat{\omega} \) is the angular frequency of the external torque measured in units of the pendulum's natural frequency.
We start with a simpler case first, the Earth-Sun system in two dimensions only. The gravitational force \( F_G \) is $$ F=\frac{GM_{\odot}M_E}{r^2}, $$ where \( G \) is the gravitational constant, $$ M_E=6\times 10^{24}\mathrm{Kg}, $$ the mass of Earth, $$ M_{\odot}=2\times 10^{30}\mathrm{Kg}, $$ the mass of the Sun and $$ r=1.5\times 10^{11}\mathrm{m}, $$ is the distance between Earth and the Sun. The latter defines what we call an astronomical unit AU. From Newton's second law we have then for the \( x \) direction $$ \frac{d^2x}{dt^2}=\frac{F_{x}}{M_E}, $$ and $$ \frac{d^2y}{dt^2}=\frac{F_{y}}{M_E}, $$ for the \( y \) direction.
Introducing \( x=r\cos{(\theta)} \), \( y=r\sin{(\theta)} \) and $$ r = \sqrt{x^2+y^2}, $$ we can rewrite $$ F_{x}=-\frac{GM_{\odot}M_E}{r^2}\cos{(\theta)}=-\frac{GM_{\odot}M_E}{r^3}x, $$ and $$ F_{y}=-\frac{GM_{\odot}M_E}{r^2}\sin{(\theta)}=-\frac{GM_{\odot}M_E}{r^3}y, $$ for the \( y \) direction.
We can rewrite these two equations $$ F_{x}=-\frac{GM_{\odot}M_E}{r^2}\cos{(\theta)}=-\frac{GM_{\odot}M_E}{r^3}x, $$ and $$ F_{y}=-\frac{GM_{\odot}M_E}{r^2}\sin{(\theta)}=-\frac{GM_{\odot}M_E}{r^3}y, $$ as four first-order coupled differential equations $$ \frac{dv_x}{dt}=-\frac{GM_{\odot}}{r^3}x, $$ $$ \frac{dx}{dt}=v_x, $$ $$ \frac{dv_y}{dt}=-\frac{GM_{\odot}}{r^3}y, $$ $$ \frac{dy}{dt}=v_y. $$
The four coupled differential equations $$ \frac{dv_x}{dt}=-\frac{GM_{\odot}}{r^3}x, $$ $$ \frac{dx}{dt}=v_x, $$ $$ \frac{dv_y}{dt}=-\frac{GM_{\odot}}{r^3}y, $$ $$ \frac{dy}{dt}=v_y, $$ can be turned into dimensionless equations (as we did in project 2) or we can introduce astronomical units with \( 1 \) AU = \( 1.5\times 10^{11} \).
Using the equations from circular motion (with \( r =1\mathrm{AU} \)) $$ \frac{M_E v^2}{r} = F = \frac{GM_{\odot}M_E}{r^2}, $$ we have $$ GM_{\odot}=v^2r, $$ and using that the velocity of Earth (assuming circular motion) is \( v = 2\pi r/\mathrm{yr}=2\pi\mathrm{AU}/\mathrm{yr} \), we have $$ GM_{\odot}= v^2r = 4\pi^2 \frac{(\mathrm{AU})^3}{\mathrm{yr}^2}. $$
The four coupled differential equations can then be discretized using Euler's method as (with step length \( h \)) $$ v_{x,i+1}=v_{x,i}-h\frac{4\pi^2}{r_i^3}x_i, $$ $$ x_{i+1}=x_i+hv_{x,i}, $$ $$ v_{y,i+1}=v_{y,i}-h\frac{4\pi^2}{r_i^3}y_i, $$ $$ y_{i+1}=y_i+hv_{y,i}, $$
It is rather straightforward to add a new planet, say Jupiter. Jupiter has mass $$ M_J=1.9\times 10^{27}\mathrm{kg}, $$ and distance to the Sun of \( 5.2 \) AU. The additional gravitational force the Earth feels from Jupiter in the \( x \)-direction is $$ F_{x}^{EJ}=-\frac{GM_JM_E}{r_{EJ}^3}(x_E-x_J), $$ where \( E \) stands for Earth, \( J \) for Jupiter, \( r_{EJ} \) is distance between Earth and Jupiter $$ r_{EJ} = \sqrt{(x_E-x_J)^2+(y_E-y_J)^2}, $$ and \( x_E \) and \( y_E \) are the \( x \) and \( y \) coordinates of Earth, respectively, and \( x_J \) and \( y_J \) are the \( x \) and \( y \) coordinates of Jupiter, respectively. The \( x \)-component of the velocity of Earth changes thus to $$ \frac{dv_x^E}{dt}=-\frac{GM_{\odot}}{r^3}x_E-\frac{GM_J}{r_{EJ}^3}(x_E-x_J). $$
We can rewrite $$ \frac{dv_x^E}{dt}=-\frac{GM_{\odot}}{r^3}x_E-\frac{GM_J}{r_{EJ}^3}(x_E-x_J). $$ to $$ \frac{dv_x^E}{dt}=-\frac{4\pi^2}{r^3}x_E-\frac{4\pi^2M_J/M_{\odot}}{r_{EJ}^3}(x_E-x_J), $$ where we used $$ GM_J = GM_{\odot}\left(\frac{M_J}{M_{\odot}}\right)=4\pi^2 \frac{M_J}{M_{\odot}}. $$ Similarly, for the velocity in \( y \)-direction we have $$ \frac{dv_y^E}{dt}=-\frac{4\pi^2}{r^3}y_E-\frac{4\pi^2M_J/M_{\odot}}{r_{EJ}^3}(y_E-y_J). $$ Similar expressions apply for Jupiter. The equations for \( x \) and \( y \) derivatives are unchanged. This equations are similar for all other planets and as we will see later, it will be convenient to object orient this part when we program the full solar system.
NASA has an excellent site at http://ssd.jpl.nasa.gov/horizons.cgi#top. From there you can extract initial conditions in order to start your differential equation solver. At the above website you need to change from OBSERVER to VECTOR and then write in the planet you are interested in. The generated data contain the \( x \), \( y \) and \( z \) values as well as their corresponding velocities. The velocities are in units of AU per day. Alternatively they can be obtained in terms of km and km/s.
For the first simple system involving the Earth and the Sun, you could just initialize the position with say \( x=1 \) AU and \( y=0 \) AU.
When building up a numerical project there are several elements you should think of, amongst these we take the liberty of mentioning the following.
The simplest possible step is to code the Earth-Sun system using Euler's method in two dimensions. The four coupled differential equations can then be discretized using Euler's method as (with step length \( h \)) are $$ v_{x,i+1}=v_{x,i}-h\frac{4\pi^2}{r_i^3}x_i, $$ $$ x_{i+1}=x_i+hv_{x,i}, $$ $$ v_{y,i+1}=v_{y,i}-h\frac{4\pi^2}{r_i^3}y_i, $$ $$ y_{i+1}=y_i+hv_{y,i}, $$
/*
Euler's method for the Eart-Sun system, simplest possible code
*/
#include <cmath>
#include <iostream>
#include <fstream>
#include <iomanip>
using namespace std;
// output file as global variable
ofstream ofile;
// function declarations
void output( double, double, double, double, double);
int main(int argc, char* argv[])
{
// declarations of variables
char *outfilename;
// Read in output file, abort if there are too few command-line arguments
if( argc <= 1 ){
cout << "Bad Usage: " << argv[0] <<
" read also output file on same line" << endl;
// exit(1);
}
else{
outfilename=argv[1];
}
ofile.open(outfilename);
int NumberofSteps = 1000;
double FinalTime = 1.0;
double Step = FinalTime/((double) NumberofSteps);
double time = 0.0;
// Initial values x = 1.0 AU and vy = 2*pi
double pi = acos(-1.0);
double FourPi2 = 4*pi*pi;
double x = 1.0; double y = 0.0; double vx = 0.0; double vy = 2.0*pi;
double r = sqrt(x*x+y*y);
// now we start solving the differential equations using Euler's method
while (time <= FinalTime){
x += Step*vx;
y += Step*vy;
vx -= Step*FourPi2*x/(r*r*r);
vy -= Step*FourPi2*y/(r*r*r);
r = sqrt(x*x+y*y);
time += Step;
output(time, x, y, vx, vy); // write to file
}
ofile.close(); // close output file
return 0;
} // End of main function
// function to write out the final results
void output(double time, double x, double y, double vx, double vy)
{
ofile << setiosflags(ios::showpoint | ios::uppercase);
ofile << setw(15) << setprecision(8) << time;
ofile << setw(15) << setprecision(8) << x;
ofile << setw(15) << setprecision(8) << y;
ofile << setw(15) << setprecision(8) << vx;
ofile << setw(15) << setprecision(8) << vy << endl;
} // end of function output
In case the function to integrate varies slowly or fast in different integration domains, adaptive methods are normally used. One strategy is always to decrease the step size. As we have seen earlier, this leads to more CPU cycles and may lead to loss or numerical precision. An alternative is to use higher-order RK methods for example. However, this leads again to more cycles, furthermore, there is no guarantee that higher-order leads to an improved error.
Assume the exact result is \( \tilde{x} \) and that we are using an RKM method. Suppose we run two calculations, one with \( h \) (called \( x_1 \)) and one with \( h/2 \) (called \( x_2 \)). Then $$ \tilde{x}=x_1+Ch^{M+1}+O(h^{M+2}), $$ and $$ \tilde{x}=x_2+2C(h/2)^{M+1}+O(h^{M+2}), $$ with \( C \) a constant. Note that we calculate two halves in the last equation. We get then $$ |x_1-x_2| = Ch^{M+1}(1-\frac{1}{2^M}). $$ yielding $$ C=\frac{|x_1-x_2|}{(1-2^{-M})h^{M+1}}. $$ We rewrite $$ \tilde{x}=x_2+\epsilon+O((h)^{M+2}), $$ with $$ \epsilon = \frac{|x_1-x_2|}{2^M-1}. $$
With RK4 the expressions become $$ \tilde{x}=x_2+\epsilon+O((h)^{6}), $$ with $$ \epsilon = \frac{|x_1-x_2|}{15}. $$ The estimate is one order higher than the original RK4. But this method is normally rather inefficient since it requires a lot of computations. We solve typically the equation three times at each time step. However, we can compare the estimate \( \epsilon \) with some by us given accuracy \( \xi \). We can then ask the question: what is, with a given \( x_j \) and \( t_j \), the largest possible step size \( \tilde{h} \) that leads to a truncation error below \( \xi \)? We want $$ C\tilde{h} \le \xi, $$ which leads to $$ \left(\frac{\tilde{h}}{h}\right)^{M+1}\frac{|x_1-x_2|}{(1-2^{-M})}\le \xi, $$ meaning that $$ \tilde{h}=h\left(\frac{\xi}{\epsilon}\right)^{1+1/M}. $$
With $$ \tilde{h}=h\left(\frac{\xi}{\epsilon}\right)^{1+1/M}. $$ we can design the following algorithm:


{% extends 'answrs/base.html' %} {% block content %}
{{question.description}}
{{answer.text}}
Answered by {{answer.user.username}} on {{answer.created_on|date}}


Conventions Used in This Book
I use the following typesetting conventions in this book:
- Italic
-
Used for new terms where they are defined, buttons, pages,
configuration file directives, filenames, modules, ACLs, directories,
and URI/URLs
- Constant width
-
Used for configuration file examples, program output, HTTP header
names and directives, scripts, options, environment variables,
functions, methods, rules, keywords, libraries, and command names
- Constant width italic
-
Used for replaceable text within examples and code pieces
Constant width bold
-
Used to indicate commands to be typed verbatim
When displaying a Unix command, I'll include a shell
prompt, like this:
% ls -l
If the command is specific to the Bourne shell
(sh) or C shell (csh), the
prompt will indicate which you should use:
sh$ ulimit -a
csh% limits
If the command requires super-user privileges, the shell prompt is a
hash mark:
# make install
Occasionally, I provide configuration file examples with long lines.
If the line is too wide to fit on the page, it's
wrapped around and indented. Squid doesn't accept
this sort of syntax, so you must make sure to place everything on one
line.
|
This icon signifies a tip, suggestion, or general note.
|
|
|
This icon indicates a warning or caution.
|
|
|


Repo {{ $repoName }}
{{ $lastIssueActivity := $repoInfo.LastIssueCommented.Time }}
{{ if $lastIssueActivity.Before $repoInfo.LastIssueClosed.Time }}
{{ $lastIssueActivity = $repoInfo.LastIssueClosed.Time }}
{{ end }}
{{ if $lastIssueActivity.Before $repoInfo.LastIssueTriaged.Time }}
{{ $lastIssueActivity = $repoInfo.LastIssueTriaged.Time }}
{{ end }}
{{ $lastPRActivity := $timeZero }}
{{ range $repoInfo.Paths }}
{{ if $lastPRActivity.Before .LastPullRequestSubmitted.Time }}
{{ $lastPRActivity = .LastPullRequestSubmitted.Time }}
{{ end }}
{{ if $lastPRActivity.Before .LastPullRequestReviewed.Time }}
{{ $lastPRActivity = .LastPullRequestReviewed.Time }}
{{ end }}
{{ end }}
Latest issue activity: {{ $lastIssueActivity }}
Latest PR activity: {{ $lastPRActivity }}


|
|
IFXDeque< T > Class Template ReferenceDouble-Ended Queue.
More...
Inheritance diagram for IFXDeque< T >:
List of all members.
Detailed Description
template<class T>
class IFXDeque< T >
Double-Ended Queue.
Implemented as circular queue on a dynamic array.
PopHead() and PopTail() discard the popped entry, so read it BEFORE you pop it.
The queue does not do strong bounds checking. Do not try an index >= GetNumberQueued().
The queue stores actual objects, if you want to queue pointers, then you should template on a pointer to the object's class.
- Note:
- To properly reset reused items on the queue, the derived deque should provide a `ResetElement(T &element)'.
Since arbitrary non-reference counted classes are accepted in the template, `T &Pop*()' is not supported since the object would be gone after the pop.
Example:
- Warning:
- minimal optimization
Constructor & Destructor Documentation
Member Function Documentation
|
template<class T> |
| virtual void IFXDeque< T >::Clear |
( |
U32 |
preallocation = 0 |
) |
[inline, virtual] |
|
|
|
Deletes all elements in the array and resets the size of the preallocated contiguous space.
Reimplemented from IFXCoreArray. |
|
template<class T> |
| IFXINLINE U32 IFXDeque< T >::CorrectIndex |
( |
I32 |
index |
) |
const [private] |
|
|
template<class T> |
| IFXINLINE T & IFXDeque< T >::ElementFromHead |
( |
U32 |
index |
) |
|
|
|
|
Gets an element indexed relative to the head.
ElementFromHead(0) returns a reference to the first element in the queue. |
|
template<class T> |
| IFXINLINE const T & IFXDeque< T >::ElementFromHeadConst |
( |
U32 |
index |
) |
const |
|
|
|
Gets an element indexed relative to the head, retaining const.
|
|
template<class T> |
| IFXINLINE T & IFXDeque< T >::ElementFromTail |
( |
U32 |
index |
) |
|
|
|
|
Gets an element indexed relative to the tail.
ElementFromHead(0) returns a reference to the last element in the queue. |
|
template<class T> |
| IFXINLINE const T & IFXDeque< T >::ElementFromTailConst |
( |
U32 |
index |
) |
const |
|
|
|
Gets an element indexed relative to the tail, retaining const.
|
|
template<class T> |
| IFXINLINE void IFXDeque< T >::Expand |
( |
void |
|
) |
[private] |
|
|
template<class T> |
| U32 IFXDeque< T >::GetNumberQueued |
( |
void |
|
) |
const [inline] |
|
|
|
Returns the number of elements currently queued.
This can be different than the GetNumberElements() since IFXDeque may allocate more elements in the underlying IFXArray than are currently queued. |
|
template<class T> |
| IFXINLINE BOOL IFXDeque< T >::PopHead |
( |
void |
|
) |
|
|
|
|
Ejects and deletes the element at the beginning of the queue.
Returns TRUE if successful. |
|
template<class T> |
| IFXINLINE BOOL IFXDeque< T >::PopTail |
( |
void |
|
) |
|
|
|
|
Ejects and deletes the element at the end of the queue.
Returns TRUE if successful. |
|
template<class T> |
| IFXINLINE T & IFXDeque< T >::PushHead |
( |
void |
|
) |
|
|
|
|
Pushes a new element at the beginning of the queue and return a reference to it.
|
|
template<class T> |
| IFXINLINE T & IFXDeque< T >::PushTail |
( |
void |
|
) |
|
|
|
|
Pushes a new element at the end of the queue and return a reference to it.
|
|
template<class T> |
| virtual void IFXDeque< T >::ResetElement |
( |
T & |
element |
) |
[inline, virtual] |
|
|
|
An overridable method for resetting element.
Reimplemented from IFXArray< T >. |
Member Data Documentation
© 1999 - 2006 Intel Corporation. All rights reserved.
* Other names and brands may be claimed as the property of others.
|
|


Topographical map of Ross County, Ohio /
Title: Topographical map of Ross County, Ohio /; Description .
http://www.loc.gov/item/2012592235
35 Miles from Center
facilities engineering acquisition division saseboOhio Historical Topographic Maps - Perry-Castañeda Map ...
Sep 20, 2011 . Perry-Castañeda Library Map Collection. Ohio Historical Topographic Maps. All maps on this page were published by the U.S. Geological .
http://www.lib.utexas.edu/maps/topo/ohio/
Government Resources - Maps & Geography
USGS Geography - The National Map: Continuously updated topographical . Geologic Maps of Ohio: Online maps of Ohio bedrock, glacial and surface features .
http://www.cincinnatilibrary.org/resources/government.asp?section=1&category=23
Ohio Topographic Map
Buy Ohio Topographic Maps online with interactive graphic representation, Scalable format and user friendly with easy navigation.
http://www.mapsofworld.com/usa/topographic-maps/ohio-topo-map.html
Ohio Physical Map and Ohio Topographic Map
A colorful physical map of Ohio and a generalized topographic map of Ohio - by Geology.com.
http://geology.com/topographic-physical-map/ohio.shtml
Ohio Topographic Maps - Ohio Department of Natural Resources
Educational Leaflet 16. Revised 2011. OHIO TOPOGRAPHIC MAPS. Topographic maps show the shape and elevation of the land surface by means of contour .
http://www.dnr.state.oh.us/Portals/10/pdf/EL/el16.pdf
Ohio Topo Garmin Compatible Map - GPSFileDepot
Ohio Topo Map. Map Info Map Information. Created By: maps4gps. Last Updated: May 30th, 2011 7:05am. Map Coverage: North: 42° West: -85° East: -80.5° .
http://www.gpsfiledepot.com/maps/view/118/
Ohio County Map - OH Counties - Map of Ohio
An Ohio County Map that you can view and print. Reference Map of Ohio Counties.
http://www.digital-topo-maps.com/county-map/ohio.shtml
Shaded bedrock-topography map of Ohio - NeoGeo
SHADED BEDROCK-TOPOGRAPHY MAP OF OHIO. 1401-1500. 1301-1400. 1201-1300. 1101-1200. 1001-1100. 901-1000. 801-900. 701-800. 601-700 .
http://neogeo.kent.edu/munro/glacial/fieldtrip/oh_btmap.pdf
Ohio maps from Omnimap, the world's leading international map ...
Ohio Atlas and Gazetteer. 1:150,000. DeLorme. Excellent road atlas with topographic maps and gazetteer, tables of campgrounds and outdoor recreation sites.
http://www.omnimap.com/catalog/cats/ohio.htm
Price: $975
(866) 571-8737
MyTopo Ohio Topo Maps, Aerial Photos, Hybrid TopoPhotos
MyTopo.com Customized Topo Maps and Aerial Photos · Find a Map > States > Ohio. OHIO Topo (Topographic) Maps, Aerial Photos, and Topo/Aerial Hybrids .
http://www.mytopo.com/Ohio
Quad Index - MyTopo: Historical Topographic Maps
Terrain Navigator Pro combines USGS topographic maps (topo .
http://historical.mytopo.com/quadlist.cfm?stateabr=OH
Price: $1,000
(877) 614-6455
Beds: 3, Baths: 2
problem with post office email connectionOhio Topographic Maps (USGS Quad Topo Maps) & Aerial Photos
Search our complete topographic map and aerial photo library for Ohio by county name or USGS Quad topo map name.
http://www.topozone.com/states/Ohio.asp
Ohio Maps - Ohio Cities and Counties, Physical Map of Ohio Rivers ...
Maps of Ohio cities and counties. Physical map of Ohio landforms and rivers like the Ohio Rivers. Historical maps, weather and more. World Atlas.
http://www.worldatlas.com/webimage/countrys/namerica/usstates/ohmaps.htm
(866) 605-6558
Shaded elevation map of Ohio - Ohio Department of Natural ...
This map depicts the topographic relief of Ohio's landscape using color to represent . tally derived map shows details of Ohio's topography unlike any map of .
http://www.ohiodnr.com/Portals/10/pdf/sem_spec.pdf
Shaded bedrock-topography map of Ohio - Ohio Department of ...
SHADED BEDROCK-TOPOGRAPHY MAP OF OHIO. 1401-1500. 1301-1400. 1201-1300. 1101-1200. 1001-1100. 901-1000. 801-900. 701-800. 601-700 .
http://www.dnr.state.oh.us/portals/10/pdf/oh_btmap.pdf
Price: $470-$605
(770) 325-1592
US Geological Survey Topographical Maps
Apr 26, 2012 . 7.5-minute series, topographic quadrangle maps, scale 1:24,000 (1 inch = 2,000 feet). 788 maps cover Ohio. Maps show geographic features, .
http://www.dnr.state.oh.us/tabid/7183/Default.aspx
Free Cuyahoga County, Ohio Topographic Maps
Free Cuyahoga County, Ohio topographic maps, along with lat .
http://www.anyplaceamerica.com/topographic_maps/search/ohio/cuyahoga_county/-/0/
USGS OFR 03-471: Bedrock Geology and Bedrock Topography GIS ...
Jan 13, 2013 . Between 1957 and 1963, a new topographic map series was created for Ohio at a scale of 1:24,000 by the USGS (Bernhagen, 1994). With the .
http://pubs.usgs.gov/of/2003/of03-471/mcdonald/index.html
(404) 448-4970
Maps and Mapping Services - Clermont Soil and Water ...
Click here to visit the Clermont County, Ohio Portal. Navigation . USGS Topographical Maps (Clermont County QUADs, assorted pub. dates). Historical Aerial .
http://www.clermontswcd.org/maps.aspx
Wayne National Forest - Maps & Publications
Downloadable mini-map of the Wayne National Forest. . Trails featured on the Hiking/Backpacking map are: Wildcat Hollow, Lamping Homestead, Ohio View, . Topographic maps show Forest Service ownership as well as other physical and .
http://www.fs.usda.gov/main/wayne/maps-pubs
Sectional & topographical map of Holmes County, Ohio
Title: Sectional & topographical map of Holmes County, Ohio; Description: LC Land ownership maps, 641: Available also through the Library of Congress Web .
http://www.loc.gov/item/2012591117
(866) 572-3487
Ohio Topographic Map - Wall Map of Ohio
A nice, large wall map of Ohio with place names, physical features and beautiful shading!
http://www.metskers.com/23160/234653/Ohio/Ohio-Topographical-State-Map-by-Raven-Maps.html
USGS 1950 Era Ohio Quads
Ohio 1900 Maps - More Historic Topo Maps - 1950's 60' Topo Maps. The U.S. . Each detailed printed map covered a 7.5 minute section (quadrangles).
http://www.railsandtrails.com/USGS1950/OH/index.html
USGS Historic Topo Maps
Aug 11, 2012 . Ohio Pennsylvania. They have many other maps types as well. 48 large scale topographic maps of Cincinnati in 1912 are available from the .
http://www.railsandtrails.com/USGS1900/index.html
(404) 719-5798
Athens, OH Topographic Map - TopoQuest
Athens, OH USGS 1:24K Topographic Map Preview: Athens .
http://www.topoquest.com/map-detail.php?usgs_cell_id=1751
Sort By:
Bedrock Topography of Ohio - CET
specialized geologic maps known as bedrock-topography maps. Such maps have been compiled by the Division of Geological. Survey for many parts of Ohio, .
http://www.cetconnect.org/ohiorocks/resources/docs/BedrockTopographyofOhio.pdf
Price: $1,295
(888) 531-6478
Beds: 4, Baths: 2
what should be recycled in pa download worms armageddon rom 64Historic Cincinnati Maps
Topographical Map of the City of Cincinnati, Engraved and Published by Doolittle and Muson 1841. Plan of the City of Cincinnati 1842. A New Map of Ohio with .
http://sandmancincinnati.com/cincinnati-maps
Price: $1,195
(866) 563-5024
Antique Maps Of Ohio
Jan 29, 2013 . A wonderful topographical map of Ohio that is the joint work of two of the Ohio's most important cartographers from the early days of its .
http://www.philaprintshop.com/ohio.html
USGS 1900 Era Ohio Quads
The U.S. Geological Survey, in cooperation with the State of Ohio, completed a topographic survey of Ohio between 1898 and 1916. 208 detailed maps covering .
http://www.railsandtrails.com/USGS1900/OH/index.html
Price: $1,400
(877) 721-3245
309 Vintage USGS Topographic Maps of Ohio on 2 CDs | eBay
309 Vintage USGS Topographic Maps of OHIO on 2 CDs in Antiques, Maps, Atlases & Globes, Maps on CD | eBay.
http://www.ebay.com/itm/309-Vintage-USGS-Topographic-Maps-of-OHIO-on-2-CDs-/130682457999
USGS Topographical Maps - Topographic Maps - United States ...
USGS topo maps of the entire United States. . All important instructions on this topographical maps website are written in this color & typeface. Be sure to read .
http://topographicalmaps.com/
Price: $1,200
(866) 936-6163
Beds: 4, Baths: 3
de vere eclipse of the sunHocking Hills - Mapping Center - Topo Maps
Topographical Maps of the Hocking Hills. . Hocking Hills Topo Maps. Click on an area below to view the Topographical Maps. Hocking Hills Topo Maps .
http://www.hockinghillsmap.com/M_TOPOS.HTM
An Introduction to Reading Topographic Maps - Ohio Agricultural ...
An Introduction to Reading Topographic Maps. Darlene C. Florence. National Science Foundation Graduate STEM Fellow in K-12 Education. Sugar Creek .
http://www.oardc.ohio-state.edu/gk12/images/Intro_Topo_Maps.pdf
(770) 783-3225
Historical Maps of Ohio
Title/Description: A Topographical & Geographical Map of the Coal Measures & the Muriatiferous & Ferruginous Deposits in the Secondary Region of the Ohio .
http://alabamamaps.ua.edu/historicalmaps/us_states/ohio/index.html
Topographic Maps - Ohio State University Libraries
Feb 15, 2012 . In some cases there is also a link to an index map that is online. Some sets are more complete than others but there are topographic maps for .
http://library.osu.edu/find/subjects/maps/topographic-maps/
Price: From $599
(678) 819-9388
Topographical map of the city of Cincinnati, from actual survey /
Title: Topographical map of the city of Cincinnati, from actual survey /; Description : Indexed. Table of . 1830, by Robinson & Fairbank of the Distrcit of Ohio.
http://www.loc.gov/item/2006626028
Results per Page:
Antique Topographic Maps - Maps of the Past, Inc.
The wide range of information provided by topographical maps makes them . Topographical Maps - YOUNGSTOWN QUAD OHIO (PA/OH) USGS 1908 .
http://www.historicmapsrestored.com/topographic-maps.html
Topographical map of Ross County, Ohio /
Title: Topographical map of Ross County, Ohio /; Description .
http://www.loc.gov/item/2012592235
35 Miles from Center
facilities engineering acquisition division saseboYou can use this form to contact the manager of this property and check availability for your desired move-in date:
You can use this form to contact the manager of this property and request information about special incentives:
Topographical Maps | Entire United States
Topographical Maps of the Entire United States. This is an example of the Topographical Maps we are able to provide for various states in . Topo Map of Ohio .
http://www.mapmart.com/Products/Topographical-Maps/Topo-states/Topographical-Maps-US-States.htm
Egypt Valley Wildlife Area Topo Map
Get Egypt Valley Wildlife Area Topo maps on Trails.com. One of Ohio's best places to fish, Egypt Valley Wildlife Area is located near Cambridge, OH. Trails' .
http://www.trails.com/topomap.aspx?trailid=XFA072-108
Topographic Maps Illustrating Physical Features
Jan 14, 2013 . Click to view map. Catskill, New York Click to view map. Guadalupe Peak, Texas Click to view map. Maumee, Ohio Click to view map .
http://www.nationalatlas.gov/100topos/
Map of Ohio
This is a generalized topographic map of Ohio. It shows elevation trends across the state. Detailed topographic maps and aerial photos of Ohio are available in .
http://geology.com/state-map/ohio.shtml
OHS - Ohio Historic Preservation Office (OHPO) - Services for ...
Sep 28, 2010 . Link to OHIO HISTORY STORE website · Link to OHS . Free Topographic Maps and UTM Collection Tools Online. Creating a Project Area .
http://beta2.ohiohistory.org/resource/histpres/services/s106-03.html


Dude, Where's My Car? * * (out of * * * * )
Directed by Danny Leiner. Cast: Ashton Kutcher, Seann William Scott, Marla Sokoloff, Jennifer Garner, Kristy Swanson. 2000 - 90 minutes Rated PG-13 (for violence, profanity, drug use, and sexual situations). Reviewed by Dustin Putman, December 16, 2000.
Sort of a teenage version of "Dumb and Dumber," "Dude, Where's My Car?" is such a bad movie that it exhibits a sort of innocent charm.   Its surprising success right from the get-go hurts the final product more than helps it, as its jokes quickly grows tiresome and repetitive, until the movie becomes almost unbearable in its final thirty minutes.
Jesse (Ashton Kutcher) and Chester (Seann William Scott) are stoner best friends who wake up one morning to find that their car has disappeared. Not remembering anything from the drug-induced night before other than that their car holds their anniversary gifts for their girlfriends, Wilma (Marla Sokoloff) and Wanda (Jennifer Garner), Jesse and Chester set out to retrace their steps. With everyone they run into, another piece of the puzzle is filled in, from the advances of their voluptuous dream girl Christie Boner (Kristy Swanson), to their apparent visit to a strip club, to a case they had gotten hold of carrying thousands of dollars in cash, to a feuding group of alien hunters and actual extraterrestrial "chicks."
I've said it once already, and I'll say it again. "Dude, Where's My Car?"  Aside from the tedious third act, the movie falls into the category of a guilty pleasure--the type of bad movie you can have fun with, rather than the type that is just plain awful ("Battlefield Earth" comes instantly to mind).
 Kutcher, especially, stands out as having quite an enjoyable presence, and it's not difficult to see him making more substantial motion pictures in the future.  Marla Sokoloff (2000's "Whatever It Takes") and Jennifer Garner (TV's "Felicity") are briefly on hand as their respective girlfriends, while the unfortunate Kristy Swanson (1999's "Big Daddy") has clearly fallen on hard times by taking such a wasted role.
There are a couple comic sequences that work extremely well--far more than they have any right to.  All of these setpieces, however, appear by the 40-minute mark, and it is followed by a comic dead zone in the increasingly preposterous climax.
"Dude, Where's My Car?" is terrible as a film, yet passable entertainment as a movie. 13-to-16-year-olds will likely have the most fun, and one's tolerance for strictly juvenile humor will decide what other age frame might enjoy such fodder. Credit director Danny Leiner and screenwriter Philip Stark for one thing: they realize "Dude, Where's My Car?" is akin to a piece of fecal matter, and have a great time living up to such a low honor.
- Copyright 2000 by Dustin Putman Http://us.imdb.com/ReviewsBy?Dustin+Putman Reviews by Dustin Putman
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


RT-Thread is an open source RTOS and is designed specifically for small memory footprint platforms. The real-time and embedded characters are the most significant advantages of RT-Thread.
RT-Thread is a real-time operating system kernel, with fully preempted multi-thread scheduler, inter-thread communication with timing sensitivity and transparent interrupt handling.
RT-Thread is suitable for embedded systems for small footprint characters. The kernel is implemented as a simple C library. The simplest application costs less than 1 Kbytes RAM on the ARM Cortex-M platform.
RT-Thread system architecture is like:
Figure 1: RT-Thread Architecture
The Kernel APIs are the core APIs of RT-Thread, which supports the following features:
For more details, please refer to RT-Thread Kernel API
Once RT-Thread operating system starts up, the facility in system must be initialized firstly.
For more details, please refer to System Initialization


subject
REPOSITORY WTJZW1E4CCCNHPC
SOLEDAD WILKINSON 1
Total documents: 427 files
Recent share at: August 18, 2016
subject
View eBooks Archive 2YRATBX0Y
SEDRICK BEER 1
Total documents: 427 files
Recent share at: September 05, 2016
subject
View ePubs Directory MDMU0XXLMSA
CEDRICK SPENCER 1
Total documents: 353 files
Recent share at: October 02, 2016
subject
View Directory IW4AIMUN5D89J
BUCK WINTHEISER 1
Total documents: 393 files
Recent share at: October 16, 2016
subject
View Docs Directory JTWABUXY
CALI KRIS
Total documents: 451 files
Recent share at: August 12, 2016
subject
View ePubs Repository MHRMQFEQVWI32
ALEXIS RICE
Total documents: 461 files
Recent share at: November 12, 2016
subject
View Documents Repository TIOZYDBFH
MONTY HERZOG III 3
Total documents: 445 files
Recent share at: August 30, 2016
subject
View ePubs Catalog RA6NZYYNP6
MISS JACKIE LITTLE DVM 1
Total documents: 348 files
Recent share at: August 19, 2016
subject
View Books Repository BNLWLTCDZ
CASIMIR HESSEL DVM 2
Total documents: 422 files
Recent share at: January 11, 2017
subject
View Books Repository SNRVVQ5JKYIBPZ
PROF JAIDEN SCHUSTER MD
Total documents: 389 files
Recent share at: October 07, 2016
subject
View Books Directory VINSLSPJEONVZ5M
LULA REMPEL 1
Total documents: 347 files
Recent share at: December 22, 2016
subject
View Docs Directory AHHCE9T3B
GRAHAM DECKOW SR 1
Total documents: 459 files
Recent share at: January 11, 2017
subject
View Directory 0K4MUPFOPULQ
ALEXANDRA RYAN SR 1
Total documents: 337 files
Recent share at: December 29, 2016
subject
View eBooks Directory KOWJUEMX5
ELVIS CREMIN
Total documents: 420 files
Recent share at: August 30, 2016
subject
View Repository KMBL2ST0LQ
JAKOB HAHN
Total documents: 405 files
Recent share at: October 26, 2016
subject
View eBooks Directory V1ULIJ3QNE928
MR KIM SPORER III 4
Total documents: 326 files
Recent share at: December 10, 2016
subject
View Docs Directory HSZNZFRQPR7
PROF FLORINE KLEIN DVM
Total documents: 340 files
Recent share at: August 24, 2016
subject
View ePubs Repository IYKQ2SCS
MS JAKAYLA BATZ
Total documents: 380 files
Recent share at: August 30, 2016
subject
View eBooks Repository H2AGRAEBUQ9
MS ALEXANDRIA BREKKE SR 1
Total documents: 399 files
Recent share at: October 04, 2016
subject
View Documents Directory 5E21TGSB1RW
DR JED LYNCH 1
Total documents: 440 files
Recent share at: January 08, 2017
subject
View eBooks Directory MK6EZWIYJVEB4
TRISTON BERNHARD
Total documents: 420 files
Recent share at: December 24, 2016
subject
View Documents Archive 3BYLNQFQ
MS CATALINA RICE PHD
Total documents: 338 files
Recent share at: December 13, 2016
subject
View eBooks Repository BCU0FNCVTFYPD0
AUDRA FLATLEY
Total documents: 369 files
Recent share at: December 08, 2016
subject
View Documents Repository QYQLTI2KWJP
MS BLANCHE DIBBERT
Total documents: 258 files
Recent share at: November 27, 2016
subject
View Documents Repository PCW5CCCH


Akan names are derived from Ghanian culture.
get your Akan name by filling in the form above.
Names are based and the date you were born and gender.
Akan names are derived from Ghanian culture.
get your Akan name by filling in the form above.
Names are based and the date you were born and gender.
Frequently in Ghana, children are given their first name as a 'day name' which corresponds to the day in the week they were born. Here are Ghanian day names.


M.O.T.H Systems
Dashboard
Configure
Map
Other Pages
Login Page
Registration Page
Forgot Password Page
Logout
Dashboard
Configure
Configure UAV: Firescout
Sensor Suite:
Radar
Lidar
EO/IR Camera
Fuel Load:
Percent
0
100
Communications Burst Every:
Minutes
0
Never
Cruising Altitude:
Feet
0
20,000
Scanning Altitude:
Feet
0
20,000
Conduct Scan Every:
Minutes
0
180
Submit
UAV Capabilities
Maximum Flight Time:
Hours
Maximum Range:
Nautical Miles
Maximum Speed:
Knots
EMCON Level:
Ready to Leave?
×
Select "Logout" below if you are ready to end your current session.


JCC uses a very simple mechanism for extending its widgets. Basicly, you only need to add a an object with 3 methods and 1 property to the 'jcc.widgets' collection where the key is the name of your widget:
A a sample of the mechanism is provided in the snippet below. For more details please refer to the JCC source code to see real implementations of widgets - all built-in widgets of JCC use absolutely the same mechanism.
jcc.widgets["yourWidget"] =
{
version : "1.0",
can_enhance : function(el)
{
return el.nodeName == "DIV" && el.getAttribute("data-role") == "yourWidget";
},
enhance : function(el) { if(el.yourWidget) el.yourWidget.refresh(); else new jcc.yourWidget(el).refresh(); },
unenhance : function(el) { if(el.yourWidget) el.yourWidget.destroy(); }
};
jcc.yourWidget = function(el)
{
//Inherit from base class 'widget'
this.widget = jcc.widget;
this.widget(el);
this.refresh = function()
{
this.destroy();
el.yourWidget = this;
//Add CSS classes here and other object setup
...
}
this.destroy = function()
{
if(el.yourWidget)
{
//Remove CSS classes and uninitialize object
...
delete el.yourWidget;
}
}
}


IRWIN, Dwight Russel
Date of death: November 16, 2019
Date of birth: May 7, 1957
Age: 62
Family
- Spouse: Debbie (nee McCrorey)
- Step-Children: Shelly Friesen (John Friesen) and Christopher Nickason ( Sarah Noseworthy- Nickason)
- Grandchildren: Bryce, Luke, Kale, Meadow and Finnley
- Parents: John and Mary (nee Gilmour) Irwin
- Siblings: Larry, Sandra, Joanne, Arlene, John Alan, and Lisa
Celebration of Life: December 1, 2019 at 2:00 p.m. at Homewood Suites, 800 Jamieson Pkwy, Cambridge, Ontario


1. Multiples of 3 and 5
If we list all the natural numbers below 10 that are multiples of 3 or 5, we get 3, 5, 6 and 9. The sum of these multiples is 23.
Find the sum of all the multiples of 3 or 5 below 1000.
run solution source code2. Even Fibonacci numbers
Each new term in the Fibonacci sequence is generated by adding the previous two terms. By starting with 1 and 2, the first 10 terms will be:
1, 2, 3, 5, 8, 13, 21, 34, 55, 89, ...
By considering the terms in the Fibonacci sequence whose values do not exceed four million, find the sum of the even-valued terms.
run solution source code3. Largest prime factor
The prime factors of 13195 are 5, 7, 13 and 29.
What is the largest prime factor of the number<PHONE_NUMBER>43 ?
run solution source code4. Largest palindrome product
A palindromic number reads the same both ways. The largest palindrome made from the product of two 2-digit numbers is 9009 = 91 × 99.
Find the largest palindrome made from the product of two 3-digit numbers.
run solution source code5. Smallest multiple
2520 is the smallest number that can be divided by each of the numbers from 1 to 10 without any remainder.
What is the smallest positive number that is evenly divisible by all of the numbers from 1 to 20?
run solution source code6. Sum square difference
Hence the difference between the sum of the squares of the first ten natural numbers and the square of the sum is 3025 - 385 = 2640.
Find the difference between the sum of the squares of the first one hundred natural numbers and the square of the sum.
run solution source code7. 10001st prime
By listing the first six prime numbers: 2, 3, 5, 7, 11, and 13, we can see that the 6th prime is 13.
What is the 10 001st prime number?
run solution source code8. Largest product in a series
Find the greatest product of five consecutive digits in the 1000-digit number.
73167176531330624919225119674426574742355349194934<PHONE_NUMBER>2774506326239578318016984801869478851843<PHONE_NUMBER>9112949495459501737958331952853208805511<PHONE_NUMBER>7158523863050715693290963295227443043557<PHONE_NUMBER>0445244523161731856403098711121722383113<PHONE_NUMBER>3380308135336276614282806444486645238749<PHONE_NUMBER>6290491560440772390713810515859307960866<PHONE_NUMBER>1883998797908792274921901699720888093776<PHONE_NUMBER>1053367881220235421809751254540594752243<PHONE_NUMBER>1670556013604839586446706324415722155397<PHONE_NUMBER>7846174064955149290862569321978468622482<PHONE_NUMBER>5657056057490261407972968652414535100474<PHONE_NUMBER>4403199890008895243450658541227588666881<PHONE_NUMBER>9924442928230863465674813919123162824586<PHONE_NUMBER>9124566529476545682848912883142607690042<PHONE_NUMBER>1055626321111109370544217506941658960408<PHONE_NUMBER>0962455444362981230987879927244284909188<PHONE_NUMBER>6097919133875499200524063689912560717606<PHONE_NUMBER>7109405077541002256983155200055935729725<PHONE_NUMBER>1882670428252483600823257530420752963450run solution source code
9. Special Pythagorean triplet
A Pythagorean triplet is a set of three natural numbers, a < b < c, for which, a2 + b2 = c2
For example, 32 + 42 = 9 + 16 = 25 = 52.
There exists exactly one Pythagorean triplet for which a + b + c = 1000. Find the product abc.
run solution source code10. Summation of primes
The sum of the primes below 10 is 2 + 3 + 5 + 7 = 17.
Find the sum of all the primes below two million.
run solution source code11. Largest product in a grid
In the 20×20 grid below, four numbers along a diagonal line have been marked in red.
08 02 22 97 38 15 00 40 00 75 04 05 07 78 52 12 50 77 91 08 49 49 99 40 17 81 18 57 60 87 17 40 98 43 69 48 04 56 62 00 81 49 31 73 55 79 14 29 93 71 40 67 53 88 30 03 49 13 36 65 52 70 95 23 04 60 11 42 69 24 68 56 01 32 56 71 37 02 36 91 22 31 16 71 51 67 63 89 41 92 36 54 22 40 40 28 66 33 13 80 24 47 32 60 99 03 45 02 44 75 33 53 78 36 84 20 35 17 12 50 32 98 81 28 64 23 67 10 26 38 40 67 59 54 70 66 18 38 64 70 67 26 20 68 02 62 12 20 95 63 94 39 63 08 40 91 66 49 94 21 24 55 58 05 66 73 99 26 97 17 78 78 96 83 14 88 34 89 63 72 21 36 23 09 75 00 76 44 20 45 35 14 00 61 33 97 34 31 33 95 78 17 53 28 22 75 31 67 15 94 03 80 04 62 16 14 09 53 56 92 16 39 05 42 96 35 31 47 55 58 88 24 00 17 54 24 36 29 85 57 86 56 00 48 35 71 89 07 05 44 44 37 44 60 21 58 51 54 17 58 19 80 81 68 05 94 47 69 28 73 92 13 86 52 17 77 04 89 55 40 04 52 08 83 97 35 99 16 07 97 57 32 16 26 26 79 33 27 98 66 88 36 68 87 57 62 20 72 03 46 33 67 46 55 12 32 63 93 53 69 04 42 16 73 38 25 39 11 24 94 72 18 08 46 29 32 40 62 76 36 20 69 36 41 72 30 23 88 34 62 99 69 82 67 59 85 74 04 36 16 20 73 35 29 78 31 90 01 74 31 49 71 48 86 81 16 23 57 05 54 01 70 54 71 83 51 54 69 16 92 33 48 61 43 52 01 89 19 67 48
The product of these numbers is 26 × 63 × 78 × 14 = 1788696.
What is the greatest product of four adjacent numbers in the same direction (up, down, left, right, or diagonally) in the 20×20 grid?
run solution source code


--- layout: default title: "Chartjs - Sleek Admin Dashboard Template" parent: "pages" sub_parent: "others" activePage: "404" plugins: [] ---
Looks like something went wrong.


Susan Granger's review of "Wrongfully Accused" (Warner Bros.)
Writer/director Pat Proft is an advocate of the "non-stop jokes" school of comedic film-making. Problem is: they're not very funny. Amusing, perhaps, but really funny? No. Straight-faced Leslie Nielsen's game, though. In this parody, he's the stripped-to-the-waist acrobat from "Lord of the Dance" and an aging wannabe Leonardo Di Caprio from "Titanic," whose high-on-the deck love scene in the mist and the rain culminates in a slapstick twist. The story begins like "The Fugitive," as Ryan Harrison, a superstar classical violinist (Nielsen) - "Lord of the Violin" - becomes romantically involved with the sexy, socialite wife (Kelly LeBrock) of his pretentious benefactor (Michael York). When the tycoon is fatally shot, he's found holding the gun and wrongfully accused. But, on his way to death row, the prison transport bus crashes into a train and Nielsen runs for his life, spewing likes like, "My head is spinning like a dreidel in a sandstorm." He knows he must track down the one-armed, one-legged, one -eyed real murderer in order to clear his name. And he's doggedly pursued by a United States Marshal, Richard Crenna, whose Tommy Lee Jones imitation is relentlessly dead on. There are giggles - like the "Baywatch" life guards who spring into action when he's in danger of being water-logged, the "Braveheart" battle make-up, the "Field of Dreams" baseball players disappearing into the mist, the "Mission Impossible" high-wire suspension, and the "ER" public address system bleating out messages for Drs. Ross, Green, Benton, et all to pick up their checks, plus evocations of "North by Northwest," "Casablanca" and other classics. But what Pat Proft really misses are his previous "Naked Gun" collaborators, Jim Abrahams and David Zucker, who could put some punch into his scenes and sight-gags. On the Granger Movie Gauge of 1 to 10, "Wrongfully Accused" is a silly, flimsy 4, consisting of loosely strung-together movie allusions, cliches, and quotes.
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


| 3707 - Fool's Game Europe - Northeastern Europe & Russian Republic - 2006/2007 | |||||
| Submit | Ranking |
A card game, often called ``Fool's Game", is quite popular in Russia. We will describe a game for two players. A standard deck of 36 cards is used. One suit is declared to be a trump.
A game consists of rounds. Before the round each player has several cards, one of the players is starting, the other one is covering. The starting player starts by laying one or several cards of the same rank down on the table. The number of cards must not exceed the number of cards the covering player has. The covering player must in turn cover all the cards with some of her cards, laying them on the table above the uncovered cards. A card can cover another if one of the following is true:
After the cards on the table are all covered, the starting player can toss some more cards to be covered. The rank of each card tossed must be among the ranks of the cards already on the table at the moment. Now the newly added cards must be covered by the covering player, after that the starting player can toss more cards, and so on. The starting player cannot toss more cards than the covering player has at the moment.
The round ends when either the covering player cannot or does not want to cover all uncovered cards on the table, or when the starting player cannot or does not want to toss more cards.
In the first case, when the covering player declares that she does not want to cover all uncovered cards on the table, the starting player is given a chance to toss in more cards. The ranks of the cards tossed must be among the ranks of the cards already on the table. The number of uncovered cards on the table cannot exceed the number of cards that the covering player has at the moment. After that, the covering player loses the round and takes all the cards from the table, adding them to her cards. Starting player keeps her starting role and moves again in the next round.
In the second case, when all cards on the table are covered and the starting player cannot or does not want to toss more cards, the covering player wins the round and the cards on the table are removed from the game. The players' roles for the next round are swapped: the covering player becomes the starting one and vice versa.
If, after the end of the round, one of the players has no cards, and the other one has one or more cards, then the player with no cards wins the game. If both players have no cards, then the player who was starting in the last round wins the game.
Given the trump suit and the cards the players initially have, find out who wins the game if both play optimally. Both players have full information about cards in the game.
The first line of the input contains n1
The second line contains n1
All cards in players' hands are different.
Output
For each test case, write to the output, on a line by itself, ``FIRST" if the first player wins the game, or ``SECOND"
if the second player does.
Sample Input
2 2 S
KC AD
6S 7S
2 2 D
KC AD
6S 7S
4 5 C
AS 6S 7S 8S
9S TS JS QS KS
3 2 C
6H JS
JD AD 6C
Sample Output
SECOND
FIRST
SECOND
FIRST
Northeastern Europe & Russian Republic 2006-2007


Gross Renevue
$25,000 Expected
- Actual
Gross Expenses
$25,000 Expected
- Actual
Profit
$25,000 Expected
- Actual
Profit Margin
80% Expected
- Actual
Add Resource
Resources
Role
Client Rate (Per Hour)
Name
Resource Rate (Per Hour)
Add Week
Timeline Project Total: 10 weeks, 500 hrs
Resources
Project Manager Aaron Sananes
Project Manager Aaron Sananes
Project Manager Aaron Sananes
7th Week
8th Week
10th Week
5 hrs.
5 hrs.
5 hrs.
5 hrs.
5 hrs.
5 hrs.
5 hrs.
5 hrs.
5 hrs.
TOTAL (PER RESOURCE)
100 hrs.
100 hrs.
100 hrs.
Financials
Resource
Revenue Per Role No Discount
Expenses Per Role
Profit per role No Discount
Margin per role No Discount
Project Manager Aaron Sananes
$120,000
$60,000
$110,000
87.2%
Project Manager Aaron Sananes
$120,000
$60,000
$110,000
87.2%
Project Manager Aaron Sananes
$120,000
$60,000
$110,000
87.2%


Our Team has been absolutely dedicated and submitted towards delivering the best quality prducts for our Users
We are a bunch of developers ,novices who are working upon making a mark on the industry by the quality of products we deliver.
Seasoned as a Backend Developer ,Javascript designer and API integration expert
Seasoned in Web Designer , Javscript and using Latest Tech Tools.
Seasoned Web Designer and Developer ,Content manager and campaign planner


A folk song written by Steve Goodman describing a train ride from Chicago to
New
Orleans in bittersweet and nostalgic terms.
Goodman got the idea while traveling on the Illinois Central line for a visit to his wife's
family.
The song has been recorded by numerous artists both in the US and Europe, including two major
hit
versions: first by Arlo Guthrie in 1972, and later by Willie Nelson in 1984.
There’s an Arlo Guthrie version for this song. While at the Quiet Knight bar in Chicago,
Goodman
saw Arlo Guthrie, and asked to be allowed to play a song for him.
Guthrie grudgingly agreed, on the condition that if Goodman bought him a beer, Guthrie would
listen
to him play for as long as it
took to drink the beer. Goodman played "City of New Orleans", which Guthrie liked enough that
he
asked to record it.
The song was a hit for Guthrie on his 1972 album Hobo's Lullaby, reaching #4 on
the Billboard Easy Listening chart and #18 on the Hot 100chart; it would prove to be Guthrie's
only
top-40 hit and one of only two he would have on the Hot 100.
Riding on the City of New Orleans
Illinois Central Monday morning rail
Fifteen cars and fifteen restless riders
Three conductors and twenty-five sacks of mail
All along the southbound odyssey
The train pulls out at Kankakee
Rolls along past houses, farms and fields
Passin' trains that have no names
Freight yards full of old black men
And the graveyards of the rusted automobiles
Good morning America how are you?
Don't you know me I'm your native son
I'm the train they call The City of New Orleans
I'll be gone five hundred miles when the day is done
Dealin' cards games with the old men in the club car
Penny a point ain't no one keepin' score
Pass the paper bag that holds the bottle
Feel the wheels rumblin' 'neath the floor
And the sons of Pullman porters
And the sons of engineers
Ride their father's magic carpets made of steam
Mothers with their babes asleep
Are rockin' to the gentle beat
And the rhythm of the rails is all they feel
Good morning America how are you?
Said don't you know me I'm your native son
I'm the train they call The City of New Orleans
I'll be gone five hundred miles when the day is done
Nighttime on The City of New Orleans
Changing cars in Memphis, Tennessee
Half way home, we'll be there by morning
Through the Mississippi darkness
Rolling down to the sea
But all the towns and people seem
To fade into a bad dream
And the steel rails still ain't heard the news
The conductor sings his songs again
The passengers will please refrain
This train's got the disappearing railroad blues
Good night, America, how are you?
Said don't you know me I'm your native son
I'm the train they call The City of New Orleans
I'll be gone five hundred miles when the day is done
From : {{article.username}}
Comment : {{article.comment}}


Please enter a postcode to search for coding events near you.
Beginner friendly - no experience in coding is necessary to take part in this event
| When? | Where? | what? |
|---|---|---|
| 2nd | Westfield, Derby | Coding For Beginners   |
| 11th | City Library, Derby | Girls Only Coding Lessons     |
| 23rd | SunnyDevHQ,Spondon | Pi-athon |
| When? | Where? | what? |
|---|---|---|
| 2nd | Westfield, Derby | Coding For Beginners   |
| 11th | City Library, Derby | Girls Only Coding Lessons     |
| 23rd | SunnyDevHQ,Spondon | Pi-athon |
| When? | Where? | what? |
|---|---|---|
| 2nd | Westfield, Derby | Coding For Beginners   |
| 11th | City Library, Derby | Girls Only Coding Lessons     |
| 23rd | SunnyDevHQ,Spondon | Pi-athon |
| When? | Where? | what? |
|---|---|---|
| 2nd | Westfield, Derby | Coding For Beginners   |
| 11th | City Library, Derby | Girls Only Coding Lessons     |
| 23rd | SunnyDevHQ,Spondon | Pi-athon |
| When? | Where? | what? |
|---|---|---|
| 2nd | Westfield, Derby | Coding For Beginners   |
| 11th | City Library, Derby | Girls Only Coding Lessons     |
| 23rd | SunnyDevHQ,Spondon | Pi-athon |
| When? | Where? | what? |
|---|---|---|
| 2nd | Westfield, Derby | Coding For Beginners   |
| 11th | City Library, Derby | Girls Only Coding Lessons     |
| 23rd | SunnyDevHQ,Spondon | Pi-athon |
| When? | Where? | what? |
|---|---|---|
| 2nd | Westfield, Derby | Coding For Beginners   |
| 11th | City Library, Derby | Girls Only Coding Lessons     |
| 23rd | SunnyDevHQ,Spondon | Pi-athon |
| When? | Where? | what? |
|---|---|---|
| 2nd | Westfield, Derby | Coding For Beginners   |
| 11th | City Library, Derby | Girls Only Coding Lessons     |
| 23rd | SunnyDevHQ,Spondon | Pi-athon |
| When? | Where? | what? |
|---|---|---|
| 2nd | Westfield, Derby | Coding For Beginners   |
| 11th | City Library, Derby | Girls Only Coding Lessons     |
| 23rd | SunnyDevHQ,Spondon | Pi-athon |
| When? | Where? | what? |
|---|---|---|
| 2nd | Westfield, Derby | Coding For Beginners   |
| 11th | City Library, Derby | Girls Only Coding Lessons     |
| 23rd | SunnyDevHQ,Spondon | Pi-athon |
| When? | Where? | what? |
|---|---|---|
| 2nd | Westfield, Derby | Coding For Beginners   |
| 11th | City Library, Derby | Girls Only Coding Lessons     |
| 23rd | SunnyDevHQ,Spondon | Pi-athon |
| When? | Where? | what? |
|---|---|---|
| 2nd | Westfield, Derby | Coding For Beginners   |
| 11th | City Library, Derby | Girls Only Coding Lessons     |
| 23rd | SunnyDevHQ,Spondon | Pi-athon |


About Me
My Blog
Resume
Contact
Hi there! My name is Eileen and I enjoy
coding
.
I'm studying at
the Recurse Center
until May 2019, after which I will be available for hire. If you'd like to learn about
my experience
or collaborate, please
get in touch
.