this is my book.. it's very interesting.. i like it.. this is my book.. it's very interesting.. i like it.. this is my book.. it's very interesting.. i like it.. this is my book.. it's very interesting.. i like it.. this is my book.. it's very interesting.. i like it.. this is my book.. it's very interesting.. i like it.. this is my book.. it's very interesting.. i like it.. this is my book.. it's very interesting.. i like it.. this is my book.. it's very interesting.. i like it.. this is my book.. it's very interesting.. i like it..
| roll no | name | age |
|---|---|---|
| 1 | deepak | 25 |
| 2 | sonia | 22 |
| 3 | amit | 21 |


This post works through the continuous time formulation of path integral optimal control. This is the original formulation proposed by H. Kappan, but I will mostly follow the exposition of Theodorou et al. $ \newcommand{\abs}[1]{| #1 |} \newcommand{\bigabs}[1]{\left| #1 \right|} \newcommand{\R}{\mathbb{R}} \newcommand{\E}{\mathbb{E}} \renewcommand{\Pr}{\mathbb{P}} \newcommand{\calE}{\mathcal{E}} \newcommand{\calF}{\mathcal{F}} \newcommand{\calD}{\mathcal{D}} \newcommand{\calN}{\mathcal{N}} \newcommand{\calL}{\mathcal{L}} \newcommand{\calM}{\mathcal{M}} \newcommand{\bbP}{\mathbb{P}} \newcommand{\bbQ}{\mathbb{Q}} \newcommand{\ip}[2]{\langle #1, #2 \rangle} \newcommand{\bigip}[2]{\left\langle #1, #2 \right\rangle} \newcommand{\T}{\mathsf{T}} \newcommand{\Tr}{\mathrm{Tr}} \newcommand{\ind}{\mathbf{1}} \newcommand{\calL}{\mathcal{L}} \newcommand{\norm}[1]{\lVert #1 \rVert}$
We start with the following dynamical system $$ \begin{align} dx = (f(x_t, t) + G_t u_t) dt + G_t dw \:, \label{eq:dynamics} \end{align} $$ where $dw$ is Brownian motion with covariance $\Sigma_w$. Here, for simplicity the matrix $G_t$ does not depend on state; it will be straightforward to generalize what follows to $G_t = G(x_t, t)$. However, the more fundamental assumption here is that the dynamics are control-affine, and that the noise enters the same way as the control input (both are multiplied by the pre-factor $G_t$). Practically speaking, the noise is modeled as corrupting the input channel, instead of the more classical process noise.
Given $\eqref{eq:dynamics}$, we are interested in solving the following stochastic optimal control problem $$ \begin{align} \mathop{\mathrm{minimize}}_{u(\cdot, [t_i, t_N])} \: \E\left[ \phi_{t_N}(x_{t_N}) + \int_{t_i}^{t_N} (q_t(x_t) + \frac{1}{2} u_t^\T R u_t) \; dt \right] ~~\mathrm{s.t.}~~ \eqref{eq:dynamics} \:. \label{eq:optimal_control} \end{align} $$ Notice the optimal control problem has a separable cost $c_t(x_t, u_t)$ and the penality on $u_t$ is assumed to be quadratic. We further assume that $R$ is positive-definite. This assumption on the form of the cost allows us to make some simplifications to the optimality conditions, as we now see.
The Hamilton-Jacobi-Bellman (HJB) equation for $\eqref{eq:optimal_control}$ states that the optimal value function $V_t(x)$ satisfies the partial differential equation $$ \begin{align} - \partial_t V_t = \min_u q_t + \frac{1}{2} u^\T R u + \ip{\nabla_x V_t}{f_t + G_t u} + \frac{1}{2} \ip{\nabla^2_x V_t}{G_t \Sigma_w G_t^\T} \label{eq:HJB} \end{align} $$ with the boundary condition $v_{t_N} = \phi_{t_N}$. The RHS of \eqref{eq:HJB} is minimized with $$ \begin{align} u_t^* = -R^{-1} G_t^\T \nabla_x V_t \:. \label{eq:optimal_input} \end{align} $$ Plugging this value of $u_t^*$ back in, the HJB equation reads $$ \begin{align} -\partial_t V_t = q_t + \ip{\nabla_x V_t}{f_t} - \frac{1}{2} (\nabla_x V_t)^\T G_t R^{-1} G_t^\T (\nabla_x V_t) + \frac{1}{2} \ip{\nabla^2_x V_t}{G_t \Sigma_w G_t^\T} \:. \label{eq:HJB_second_order} \end{align} $$
Sanity check: LQR
As a quick sanity check for $\eqref{eq:HJB_second_order}$, let us see what happens in the case of LQR. Let $f(x, t) = A_t x$, $G_t = B_t$, $q_t(x) = \frac{1}{2} x^\T Q_t x$, and $\phi_{t_N} = \frac{1}{2} x^\T Q_{t_N} x$, where $Q_t$ is positive semi-definite. Let us guess that $V_t(x) = \frac{1}{2} x^\T P(t) x + c(t)$ with $P(t)$ positive semi-definite. Then we have $$ \begin{align*} \partial_t V_t &= \frac{1}{2} x^\T \dot{P}(t) x + \dot{c}(t) \:, \\ \nabla_x V_t &= P(t) x \:, \\ \nabla^2_x V_t &= P(t) \:. \end{align*} $$ Plugging into $\eqref{eq:HJB_second_order}$, we obtain $$ \begin{align*} -\frac{1}{2} x^\T \dot{P}(t) x - \dot{c}(t) &= \frac{1}{2} x^\T Q_t x + x^\T P(t) A_t x - \frac{1}{2} x^\T P(t) B_t R^{-1} B_t^\T P(t) x + \frac{1}{2} \ip{P(t)}{B_t \Sigma_w B_t^\T} \:. \end{align*} $$ Since $x^\T P(t) A_t x = \frac{1}{2} x^\T (A_t^\T P(t) + P(t) A_t) x$, we obtain the following ODEs for $P(t)$ and $c(t)$, $$ \begin{align*} -\dot{P}(t) &= A_t^\T P(t) + P(t) A_t - P(t) B_t R^{-1} B_t^\T P(t) + Q_t \:, \:\: P(t_N) = Q_{t_N} \:, \\ -\dot{c}(t) &= \frac{1}{2} \ip{P(t)}{B_t \Sigma_w B_t^\T} \:, \:\: c(t_N) = 0 \:. \end{align*} $$ Furthermore, the optimal input is $u_t^*(x) = -R^{-1} B_t^\T P(t) x$. These are the well-known Riccatti differential equations for LQR. One can solve these equations using numerical integration backwards in time. A simple scheme is to perform the forward Euler method backwards in time (not to be confused with the backward Euler method). Choosing a discretization $\Delta_t$, one computes the following backwards recursion, $$ P(t_{ \Delta_t k }) = P(t_{\Delta_t (k+1)}) - \dot{P}(t_{\Delta_t (k+1)}) \Delta_t \:. $$
Exponential Transform and the Chapman-Kolmogorov PDE
Now back to $\eqref{eq:HJB_second_order}$ in the general case, this is a non-linear PDE. We transform it into a linear PDE using a standard exponential transformation from statistical physics. Specifically, we define for a fixed $\lambda > 0$, $$ \begin{align} \Psi_t = \exp(-V_t / \lambda) \:. \end{align} $$ With this transformation, it is straightforward to check $$ \begin{align*} \partial_t V_t &= -\lambda \frac{\partial_t \Psi_t}{\Psi_t} \:, \\ \nabla_x V_t &= -\lambda \frac{\nabla_x \Psi_t}{\Psi_t} \:, \\ \nabla^2_x V_t &= - \frac{\lambda}{\Psi_t} \nabla^2_x \Psi_t + \frac{\lambda}{\Psi_t^2} (\nabla_x \Psi_t)(\nabla_x \Psi_t)^\T \:. \end{align*} $$ We now plug in these derivates into $\eqref{eq:HJB_second_order}$ to obtain a linear PDE in $\Psi_t$, $$ \begin{align*} \frac{\lambda}{\Psi_t} \partial_t \Psi_t &= q_t - \frac{\lambda}{\Psi_t} \ip{\nabla_x \Psi_t}{f_t} - \frac{\lambda^2}{2\Psi_t^2} (\nabla_x \Psi_t)^\T G_t R^{-1} G_t^\T (\nabla_x \Psi_t) - \frac{\lambda}{2 \Psi_t} \ip{\nabla^2_x \Psi_t}{G_t \Sigma_w G_t^\T} \\ &\qquad + \frac{\lambda}{2\Psi_t^2} (\nabla_x \Psi_t)^\T G_t \Sigma_w G_t (\nabla_x \Psi_t) \:. \end{align*} $$ If we now make the assumption that $\lambda R^{-1} = \Sigma_w$, the second order terms cancel out and we arrive that $$ \begin{align*} \frac{\lambda}{\Psi_t} \partial_t \Psi_t &= q_t - \frac{\lambda}{\Psi_t} \ip{\nabla_x \Psi_t}{f_t} - \frac{\lambda}{2 \Psi_t} \ip{\nabla^2_x \Psi_t}{G_t \Sigma_w G_t^\T} \:. \end{align*} $$ Multiplying both sides by $-\frac{\Psi_t}{\lambda}$, $$ \begin{align} -\partial_t \Psi_t = -\frac{q_t}{\lambda} \Psi_t + \ip{\nabla_x \Psi_t}{f_t} + \frac{1}{2} \ip{\nabla^2_x \Psi_t}{G_t \Sigma_w G_t^\T} \:, \label{eq:HJB_linear} \end{align} $$ and we have the boundary condition $\Psi_{t_N} = \exp(-\phi_{t_N}/\lambda)$. The optimal input is given by $$ \begin{align*} u_t^* = \lambda R^{-1} G_t^\T \frac{\nabla_x \Psi_t}{\Psi_t} \:. \end{align*} $$ The PDE $\eqref{eq:HJB_linear}$ is a linear PDE, and is known as the Chapman-Kolmogorov PDE.
Feynman-Kac Formula
The main advantage of using the exponential transform to convert the HJB PDE into an instance of the Chapman-Kolmogorov PDE is that the latter admits a path integral representation of the solution via the Feynman-Kac formula. Specifically, we have that $$ \begin{align} \Psi_t(x) = \E\left[ \exp\left(-\frac{\phi_{t_N}}{\lambda} - \frac{1}{\lambda} \int_{t}^{t_N} q_t \; dt \right) \right] \;, \label{eq:path_integral_solution} \end{align} $$ where the path distribution is given by the uncontrolled dynamics $$ \begin{align} dx = f(x_t, t) dt + G_t dw \:. \label{eq:uncontrolled_dynamics} \end{align} $$ with initial condition $x_t = x$. Immediately, the formula for $\eqref{eq:path_integral_solution}$ does not seem that useful, but the idea is that its evaluation is amendable to Monte-Carlo techniques, since it is expressed as an expectation of a stochastic process.
Discretization of the Solution
Up until this point, all the transformations we have done have been exact in that they have not changed the solution to the problem. However, in order to turn this formalism into an algorithm that can be implemented on a computer, we will need to introduce some approximations via discretization (since we cannot sample continuous paths). In my opinion, this is where the elegance of the formalism breaks down.
Our next step will be to derive an expression for $\nabla_x \Psi_t$ in terms of an expectation we can sample from. For what follows, I will be quite hand-wavy in the exposition. I will also illustrate this derivation on linear dynamics for simplicity. So we now restrict to the case when $$ dx = (A x + B u) dt + B dw \:, $$ where $w$ is Brownian motion with covariance $\Sigma_w$. We will also assume for simplicity that $B \Sigma_w B^\T$ is invertible. Suppose that $x_{t_0} = x_0$. By standard results in SDE (consult this excellent reference for more background on SDE), we can write $$ x_t = e^{At} x_0 + \int_{t_0}^{t} e^{A(t-\tau)} B \; dw_t \:. $$ Furthermore, the marginal distribution of $x_t$ is given as $$ x_t \sim \calN\left( e^{A(t-t_0)} x_0, \int_{t_0}^{t} e^{A(t-\tau)} B \Sigma_w B^\T e^{A^\T(t-\tau)} \; d\tau \right) \:, $$ and the conditional distribution of $x_{t+\Delta} | x_t$ is given as $$ x_{t+\Delta} | x_t \sim \calN( e^{A \Delta} x_t, \Gamma_{\Delta} ) \:, \:\: \Gamma_{\Delta} = \int_{0}^{\Delta} e^{A(t-\tau)} B \Sigma_w B^\T e^{A^\T(t-\tau)} \; d\tau \:. $$
Next, we write (dropping subscripts on $t$ and assuming $t=0$), $$ \begin{align*} \Psi(x) = \lim_{M \to \infty} \E\left[ \exp\left( - \frac{\phi_{t_N}}{\lambda} - \frac{1}{\lambda} \sum_{i=1}^{M} q_{t_i} \Delta_t \right) \right] \:, \end{align*} $$ where $t_i = (i-1) t_N/M$ and $\Delta_t = t_N/M$. But then the expectation over the paths $x(t)$ simplifies to an expectation over the jointly Gaussian vector $(x(t_1), ..., x(t_M))$. Recall that $x(t_1) = x$. By the Markovian property of the paths, $$ \begin{align*} p(x(t_1), ..., x(t_M)|x(t_1){=}x) = p(x(t_2) | x(t_1){=}x) \times ... \times p(x(t_M) | x(t_{M-1})) \:. \end{align*} $$ We know the conditional distribution is given by $$ \begin{align*} p(x(t_i) | x(t_{i-1})) = \frac{1}{( (2\pi)^n \det(\Gamma_{\Delta_t}))^{1/2}} \exp\left( - \frac{1}{2} \norm{x(t_i) - e^{A\Delta_t} x(t_{i-1})}^2_{\Gamma_{\Delta_t}^{-1}} \right) \;, \end{align*} $$ and therefore, $$ \begin{align*} &p(x(t_1), ..., x(t_M)|x(t_1){=}x) \\ &\qquad= \frac{1}{((2\pi)^{n} \det(\Gamma_{\Delta_t}))^{(M-1)/2}} \exp\left( -\frac{1}{2} \norm{x(t_2) - e^{A \Delta_t} x}^2_{\Gamma_{\Delta_t}^{-1}} - \frac{1}{2} \sum_{i=2}^{M-1} \norm{x(t_{i+1}) - e^{A \Delta_t} x(t_i)}^2_{\Gamma_{\Delta_t}^{-1}} \right) \:. \end{align*} $$ Next, passing the differentiation under the integral, $$ \begin{align*} &\nabla_x \E\left[ \exp\left( - \frac{\phi_{t_N}}{\lambda} - \frac{1}{\lambda} \sum_{i=1}^{M} q_{t_i} \Delta_t \right) \right] \\ &\qquad= \int \nabla_x \left[\exp\left( - \frac{\phi_{t_N}}{\lambda} - \frac{1}{\lambda} \sum_{i=1}^{M} q_{t_i} \Delta_t \right) p(x_{t_2}, ..., x_{t_M} | x_{t_1}{=}x) \right] \; dx_{t_2}...dx_{t_M} \\ &\qquad= \int \exp\left( - \frac{\phi_{t_N}}{\lambda} - \frac{1}{\lambda} \sum_{i=1}^{M} q_{t_i} \Delta_t \right) \nabla_x p(x_{t_2}, ..., x_{t_M} | x_{t_1}{=}x) \; dx_{t_2}...dx_{t_M} \\ &\qquad\qquad + \int \left[ \nabla_x \exp\left( - \frac{\phi_{t_N}}{\lambda} - \frac{1}{\lambda} \sum_{i=1}^{M} q_{t_i} \Delta_t \right) \right] p(x_{t_2}, ..., x_{t_M} | x_{t_1}{=}x) \; dx_{t_2}...dx_{t_M} \:. \end{align*} $$ We now compute these derivatives. First, $$ \begin{align*} \nabla_x \exp\left( - \frac{\phi_{t_N}}{\lambda} - \frac{1}{\lambda} \sum_{i=1}^{M} q_{t_i} \Delta_t \right) = -\frac{1}{\lambda}\exp\left( - \frac{\phi_{t_N}}{\lambda} - \frac{1}{\lambda} \sum_{i=1}^{M} q_{t_i} \Delta_t \right) Q x \Delta_t \:. \end{align*} $$ Exchanging the limit as $M \to \infty$ with $\nabla_x$, we conclude that $$ \begin{align*} \nabla_x \Psi = \lim_{M \to \infty} \int \exp\left( - \frac{\phi_{t_N}}{\lambda} - \frac{1}{\lambda} \sum_{i=1}^{M} q_{t_i} \Delta_t \right) \nabla_x p(x_{t_2}, ..., x_{t_M} | x_{t_1}{=}x) \; dx_{t_2}...dx_{t_M} \:. \end{align*} $$ Next, $$ \begin{align*} \nabla_x p(x_{t_2}, ..., x_{t_M} | x_{t_1}{=}x) = -p(x_{t_2}, ..., x_{t_M} | x_{t_1}{=}x) (e^{A^\T \Delta_t} \Gamma_{\Delta_t}^{-1} e^{A \Delta_t} x - e^{A^\T \Delta_t} \Gamma_{\Delta_t}^{-1} x_{t_2}) \:. \end{align*} $$ We will now approximate this equation for small $\Delta_t$. For small $\Delta_t$, $$ \begin{align*} e^{A \Delta_t} &= I + A \Delta_t + O(\Delta_t^2) \:, \\ (e^{A \Delta_t})^{-1} &= I - A \Delta_t + O(\Delta_t^2) \:, \\ \Gamma_{\Delta_t} &= e^{A \Delta_t} B \Sigma_w B^\T e^{A^\T \Delta_t} \Delta_t + O(\Delta_t^2) \:. \end{align*} $$ Therefore, ignoring the higher order $\Delta_t$ terms, $$ \begin{align*} e^{A^\T \Delta_t} \Gamma_{\Delta_t}^{-1} e^{A \Delta_t} &\approx \frac{(B \Sigma_w B^\T)^{-1}}{\Delta_t} \:, \\ e^{A^\T \Delta_t} \Gamma_{\Delta_t}^{-1} &\approx \frac{(B \Sigma_w B^\T)^{-1} (I - A \Delta_t)}{\Delta_t} \:. \end{align*} $$ Hence, $$ \begin{align*} -e^{A^\T \Delta_t} \Gamma_{\Delta_t}^{-1} e^{A \Delta_t} x - e^{A^\T \Delta_t} \Gamma_{\Delta_t}^{-1} x_{t_2} &\approx (B \Sigma_w B^\T)^{-1} \left(\frac{ x_{t_2} - x }{\Delta_t} - A x_{t_2} \right) \:. \end{align*} $$ Therefore, combining the formulas above, $$ \begin{align*} \nabla_x p(x_{t_2}, ..., x_{t_M} | x_{t_1}{=}x) \approx p(x_{t_2}, ..., x_{t_M} | x_{t_1}{=}x) (B \Sigma_w B^\T)^{-1} \left(\frac{ x_{t_2} - x }{\Delta_t} - A x_{t_2} \right) \:. \end{align*} $$ Hence, $$ \begin{align} \nabla_x \Psi_t &= \nabla_x \E\left[ \exp\left( - \frac{\phi_{t_N}}{\lambda} - \frac{1}{\lambda} \int_{t}^{t_N} q_{t_i} \; dt \right) \right] \nonumber \\ &= \lim_{M \to \infty} \int \exp\left( - \frac{\phi_{t_N}}{\lambda} - \frac{1}{\lambda} \sum_{i=1}^{M} q_{t_i} \Delta_t \right) \nabla_x p(x_{t_2}, ..., x_{t_M} | x_{t_1}{=}x) \; dx_{t_2}...dx_{t_M} \nonumber \\ &= \lim_{M \to \infty} \int \exp\left( - \frac{\phi_{t_N}}{\lambda} - \frac{1}{\lambda} \sum_{i=1}^{M} q_{t_i} \Delta_t \right)(B \Sigma_w B^\T)^{-1} \left(\frac{ x_{t_2} - x }{\Delta_t} - A x_{t_2} \right) p(x_{t_2}, ..., x_{t_M} | x_{t_1}{=}x) \; dx_{t_2}...dx_{t_M} \nonumber \\ &= \lim_{M \to \infty} \E\left[\exp\left( - \frac{\phi_{t_N}}{\lambda} - \frac{1}{\lambda} \sum_{i=1}^{M} q_{t_i} \Delta_t \right)(B \Sigma_w B^\T)^{-1} \left(\frac{ x_{t_2} - x }{\Delta_t} - A x_{t_2} \right)\right] \:. \label{eq:grad_expr} \end{align} $$
In the literature, the last expression $\eqref{eq:grad_expr}$ is often written as $$ \E\left[\exp\left( - \frac{\phi_{t_N}}{\lambda} - \frac{1}{\lambda} \int_{t_i}^{t_N} q_{t} \; dt \right)(B \Sigma_w B^\T)^{-1} (\dot{x} - Ax) \right] \:. $$ I prefer to not use this notation, because it is confusing. For instance, we know the sample paths are nowhere differentiable, so the $\dot{x}$ notation is deceiving.
Let us now discuss how to sample from $\eqref{eq:grad_expr}$. We first generate $K$ sample paths from the recursion $$ x^{(k)}_{t_{i+1}} = x^{(k)}_{t_i} + A x^{(k)}_{t_i} \Delta_t + B \xi^{(k)}_{i} \sqrt{\Delta_t} \:, \:\: \xi^{(k)}_i \sim \calN(0, \Sigma_w) \:, \:\: x^{(k)}_{t_1} = x \:, \:\: k=1, ..., K \:. $$ Next, observe that $$ \frac{ x^{(k)}_{t_2} - x }{\Delta_t} - A x^{(k)}_{t_2} = \frac{B}{\sqrt{\Delta_t}} \xi^{(k)}_1 - A^2 x \Delta_t + AB \sqrt{\Delta_t} \xi^{(k)}_1 \:. $$ For small $\Delta_t$, the dominating term is going to be the $1/\sqrt{\Delta_t}$ term, so we can approximate this with $$ \frac{ x^{(k)}_{t_2} - x }{\Delta_t} - A x^{(k)}_{t_2} \approx \frac{B}{\sqrt{\Delta_t}} \xi^{(k)}_1 \:. $$ This gives us a formula to estimate $\nabla_x \Psi_t$, $$ \nabla_x \Psi_t \approx (B\Sigma_w B^\T)^{-1} B \frac{1}{K} \sum_{k=1}^{K} S(x^{(k)}) \frac{\xi_1^{(k)}}{\sqrt{\Delta_t}} \:, $$ where the score $S(\cdot)$ is defined as $$ S(x^{(k)}) = \exp\left( - \frac{\phi(x^{(k)}_{t_N})}{\lambda} - \frac{1}{\lambda} \sum_{i=1}^{M} q(x^{(k)}_{t_i}) \Delta_t \right) \:. $$ Similarly, we can approximate $\Psi_t$ as $$ \Psi_t \approx \frac{1}{K} \sum_{k=1}^{K} S(x^{(k)}) \:. $$ Combining these two approximations, we approximate the ratio $\frac{\nabla_x \Psi_t}{\Psi_t}$ as $$ \frac{\nabla_x \Psi_t}{\Psi_t} \approx (B\Sigma_w B^\T)^{-1} B \sum_{k=1}^{K} \frac{S(x^{(k)})}{\sum_{k'=1}^{K} S(x^{(k')}) } \frac{\xi_1^{(k)}}{\sqrt{\Delta_t}} \:. $$ Recalling that $u^*_t = \lambda R^{-1} B^\T \frac{\nabla_x \Psi_t}{\Psi_t}$ and our assumption that $\lambda R^{-1} = \Sigma_w$, we have the following approximation for $u_t^*$, $$ \begin{align} u_t^* \approx R^{-1} B^\T (B R B^\T)^{-1} B \sum_{k=1}^{K} \frac{S(x^{(k)})}{\sum_{k'=1}^{K} S(x^{(k')}) } \frac{\xi_1^{(k)}}{\sqrt{\Delta_t}} \:. \label{eq:optimal_input_approx} \end{align} $$ Equation $\eqref{eq:optimal_input_approx}$ has a very intuitive interpretation. We draw a bunch of sample paths that start at our current position $x$. Because we assume the noise enters in the same channel as the control input, these random sample paths can be interpreted as choosing a random sequence of control inputs. We keep track of how well these random control inputs do via the score function $S(x^{(k)})$, giving trajectories which perform well on the cost function a higher score. We then take a weighted average over the first control input and this forms our control input.
Importance Sampling
Equation $\eqref{eq:optimal_input_approx}$ might seem close to a viable algorithm, but over long horizons it is effectively useless. This is because for any non-trivial problem, with overwhelming probability a random trajectory is not going to perform well. The way to work around this is to use importance sampling from a distribution which is biased towards "good" trajectories. Of course, this is kind of a chicken-and-egg problem, because the best distribution to use is the one that solves the original problem.
I will not say much more about this issue. So far our discussion has essentially covered up to and including Section 2 of Theodorou et al., but Section 3 actually contains the description of the $\mathrm{PI}^2$ algorithm, where this formalism is used for parameterized policy search.


This is probably the fastest way to launch a drone
by Alexander WongLaunching a drone can take a lot of time and patience. After finding a nice spot, you turn it on and hope that it can get GPS lock as quickly as possible. A lot of things may go wrong which can ruin the drone experience.
For faster drone deployments, a couple of researchers from Caltech University and NASA’s Jet Propulsion Laboratory have figured a way to put a drone in the sky in a just matter of seconds. This insane contraption is called the SQUID, which is short for Streamlined Quick Unfolding Investigation Drone.
Unlike a typical drone design, the SQUID is shaped like a short missile that’s 27 cm long and it weighs 530 grams. It is launched from a modified pneumatic baseball pitching machine with speeds of about 35 mph (56 km/h).
The drone has four spring-loaded arms with attached rotors that will start spinning in just 200ms after launch. It is reported that it takes less than a second to get to a stable and hovering position. The best part is that it can be launched even from a moving vehicle and they managed to do so on a pickup truck that’s travelling at 50 mph (about 80km/h).
At the moment, SQUID is just a prototype and it can be useful for emergency responders and the military where multiple surveillance drones can be deployed without stopping. According to The Verge, this isn’t the first ballistic launched drone ever made but earlier examples are using a fixed-wing design which is less manoeuvrable compared to a multi-rotor drone.
The makers of SQUID are looking at making larger prototypes of the drone and they are also exploring mission-specific variants for Mars and Titan.
[ SOURCE ]


Networks provide the communication channels for instances in the cloud. You can select ports instead of networks or a mix of both.


Dalal Alrayes
Vivian Fialho
What is pair programming?
Why is pair programming important to DBC?
Driver vs Navigator
Our experience


In the digital era that we live in, our lives our filled with...screens. We're watching TV, while responding the emails on our computer, while watching the twitter feed on our phones. Some might say we're addicted to our devices. After a long day of staring at a computer at work, we come home and relax by staring at a different computer at home. One of the outcomes? Computer Vision Syndrome (CVS - I know, bad name right?).
Recent studies have shown that nearly 70 percent of American adults experience some form of digital eye strain due to prolonged use of electronic devices. Another alarming study showed that nearsightedness among Americans has increased from 25% to 41.6% percent over the past 30 years.
You might be saying, "modern computer screens are a lot safer and less harmful to your eyes that old tube monitors." Yes, to some extent. But working on a computer is more challenging to your eyes than reading a book or piece of paper, because a computer screen also adds the elements of screen contrast, flicker, glare, as well as a usual bombardment of ad's jumping at your from the side of your screen.
In my first couple of weeks of Dev Bootcamp, I have noticed the effect. My eyes have felt more tired than usual. So I decided to research this topic and provide some tips on how to keep your eyes relaxed, while working through an intensive computer programming course.
20-20-20
Every 20 minutes, spend 20 seconds looking at something 20 feet away. 20-20-20. Find something as blank as possible; a wall with nothing on it, the hills in the distance, the sky if it's relatively clear (but not too close to the sun!). These may be some of the only chances during the day your eyes get to actually taking a break.
Move the monitor back
When I'm deep into my coding, I'll sometimes find myself 6 inches from the computer screen. When you realize that, mooooooove it back.  If your overhead light is too bright, use a desk lap, and focus the desk lamp on the desk not on you. You can also but glare filter's for all size screens.
Follow some of these guidelines to keep your eyes fresh, and save yourself from the headaches of CVS.
-Evan


To create a slideshow : simply create a block with the class "slideshow".
All its children will be the slides of the slideshow.
Note : The slides must be <div> elements, otherwise they won't be detected.
You can then specify the width and height of the container (see style.css).
You may have several slideshows in a single page.


I will serve this ship as First Officer. And in an attack against the Enterprise, I will die with this crew.
For an android with no feelings, he sure managed to evoke them in others. We have a saboteur aboard.
Captain, why are we out here chasing comets? What's a knock-out like you doing in a computer-generated gin joint like this?


Rendezvous Of The Universes
Click hereCRCE Roadies
Mr. and Ms. CRCE
CRCE's Fittest
Domain Co-ordinator: Surya - +919146675169
Do Re Mi(English)
Sa Re Ga Ma(Hindi)
Dance face-off
CRCE's got talent
Domain Co-ordinator: Sanfer - +919372072408
Extempore
Just a minute
Fake a news
Poetry Re-engineered
Domain Co-ordinator: Pranay - +919930490811
Nail Art
Rangoli
Brushes and Pallets
Face Paint
Domain Co-ordinator: Ridhika - +918879767222


We are in business for over 6 years providing amazing services to client and people love them to the core. View our story to know more.
TRAVEL IS
BEAUTIFUL
Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s


sprof - read and display shared object profiling data
sprof [\fIoption\fP]... \fIshared-object-path\fP \[profile-data-path]"
The sprof command displays a profiling summary for the shared object specified as its first command-line argument. The profiling summary is created using previously generated profiling data in the (optional) second command-line argument. If the profiling data pathname is omitted, then sprof will attempt to deduce it using the soname of the shared object, looking for a file with the name <soname>.profile in the current directory.
The following command-line options specify the profile output to be produced:
-c, --call-pairsPrint a list of pairs of call paths for the interfaces exported by the shared object, along with the number of times each path is used.
-p, --flat-profileGenerate a flat profile of all of the functions in the monitored object, with counts and ticks.
-q, --graphGenerate a call graph.
If none of the above options is specified, then the default behavior is to display a flat profile and a call graph.
The following additional command-line options are available:
-?, --helpDisplay a summary of command-line options and arguments and exit.
--usageDisplay a short usage message and exit.
-V, --versionDisplay the program version and exit.
The sprof command is a GNU extension, not present in POSIX.1.
The following example demonstrates the use of , sprof .The example consists of a main program that calls two functions in a shared library. First, the code of the main program:
$ cat prog.c
#include <stdlib.h>
void x1(void);
void x2(void);
int
main(int argc, char *argv[])
{
x1();
x2();
exit(EXIT_SUCCESS);
}
The functions x1() and x2() are defined in the following source file that is used to construct the shared library:
$ cat libdemo.c
#include <unistd.h>
void
consumeCpu1(int lim)
{
int j;
for (j = 0; j < lim; j++)
getppid();
}
void
x1(void) {
int j;
for (j = 0; j < 100; j++)
consumeCpu1(200000);
}
void
consumeCpu2(int lim)
{
int j;
for (j = 0; j < lim; j++)
getppid();
}
void
x2(void)
{
int j;
for (j = 0; j < 1000; j++)
consumeCpu2(10000);
}
Now we construct the shared library with the real name libdemo.so.1.0.1 , and the soname libdemo.so.1 :
$ cc -g -fPIC -shared -Wl,-soname,libdemo.so.1 e -o libdemo.so.1.0.1 libdemo.c
Then we construct symbolic links for the library soname and the library linker name:
$ ln -sf libdemo.so.1.0.1 libdemo.so.1 $ ln -sf libdemo.so.1 libdemo.so
Next, we compile the main program, linking it against the shared library, and then list the dynamic dependencies of the program:
$ cc -g -o prog prog.c -L. -ldemo $ ldd prog linux-vdso.so.1 => (0x00007fff86d66000) libdemo.so.1 => not found libc.so.6 => /lib64/libc.so.6 (0x00007fd4dc138000) /lib64/ld-linux-x86-64.so.2 (0x00007fd4dc51f000)
In order to get profiling information for the shared library, we define the environment variable LD_PROFILEwith the soname of the library:
$ export LD_PROFILE=libdemo.so.1
We then define the environment variable LD_PROFILE_OUTPUTwith the pathname of the directory where profile output should be written, and create that directory if it does not exist already:
$ export LD_PROFILE_OUTPUT=$(pwd)/prof_data $ mkdir -p $LD_PROFILE_OUTPUT
LD_PROFILE causes profiling output to be appended to the output file if it already exists, so we ensure that there is no preexisting profiling data:
$ rm -f $LD_PROFILE_OUTPUT/$LD_PROFILE.profile
We then run the program to produce the profiling output, which is written to a file in the directory specified in LD_PROFILE_OUTPUT :
$ LD_LIBRARY_PATH=. ./prog $ ls prof_data libdemo.so.1.profile
We then use the sprof -poption to generate a flat profile with counts and ticks:
$ sprof -p libdemo.so.1 $LD_PROFILE_OUTPUT/libdemo.so.1.profile
Flat profile:
Each sample counts as 0.01 seconds.
% cumulative self self total
time seconds seconds calls us/call us/call name
60.00 0.06 0.06 100 600.00 consumeCpu1
40.00 0.10 0.04 1000 40.00 consumeCpu2
0.00 0.10 0.00 1 0.00 x1
0.00 0.10 0.00 1 0.00 x2
The sprof -qoption generates a call graph:
$ sprof -q libdemo.so.1 $LD_PROFILE_OUTPUT/libdemo.so.1.profile
index % time self children called name
0.00 0.00 100/100 x1 [1]
[0] 100.0 0.00 0.00 100 consumeCpu1 [0]
-----------------------------------------------
0.00 0.00 1/1 <UNKNOWN>
[1] 0.0 0.00 0.00 1 x1 [1]
0.00 0.00 100/100 consumeCpu1 [0]
-----------------------------------------------
0.00 0.00 1000/1000 x2 [3]
[2] 0.0 0.00 0.00 1000 consumeCpu2 [2]
-----------------------------------------------
0.00 0.00 1/1 <UNKNOWN>
[3] 0.0 0.00 0.00 1 x2 [3]
0.00 0.00 1000/1000 consumeCpu2 [2]
-----------------------------------------------
Above and below, the "<UNKNOWN>" strings represent identifiers that are outside of the profiled object (in this example, these are instances of main() ).
The sprof -coption generates a list of call pairs and the number of their occurrences:
$ sprof -c libdemo.so.1 $LD_PROFILE_OUTPUT/libdemo.so.1.profile
<UNKNOWN> x1 1
x1 consumeCpu1 100
<UNKNOWN> x2 1
x2 consumeCpu2 1000
This page is part of release 3.74 of the Linux man-pages project. A description of the project, information about reporting bugs, and the latest version of this page, can be found at %http://www.kernel.org/doc/man-pages/.


Create a Task
Give your new task a name, description, time, and picture reminder.
Name
Description
Time
Upload a Picture via URL
Photo Search By Keyword
Don't have a URL? Search for a photo below and copy the URL.


Before Change
Before, and greet his grace: my lord, we come.
Exeunt"""
count = {}
for character in info.upper():
count[character] = count.get(character, 0) + 1
value = pprint.pformat(count)
print(value)
After Change
Before, and greet his grace: my lord, we come.
Exeunt"""
wordlist = wordstring.split()
wordfreq = []
for w in wordlist:
wordfreq.append(wordlist.count(w))
print("String\n" + wordstring +"\n")
print("List\n" + str(wordlist) + "\n")
print("Frequencies\n" + str(wordfreq) + "\n")
print("Pairs\n" + str(list(zip(wordlist, wordfreq))))


Customize path variables within the IDE.
For more information on how to configure variables, refer to section Path variables.


This application shows Enjin notifications as Chrome popups, in the bottom left of your screen.
Please note that this extension is not 100% complete yet, and is a side project of mine. Development on this extension will be sporradic.
For the code, please check out the GitLab repository for this project. Any issues can also be reported there.


This site was strongly inspired by Webkay.
If you have an idea of something I could add here send me a DM on Twitter or email me at hi [at] ferrucc [dot] io


S
E
Qu
-
R
Am
A
"ruby reflection versus java reflection"
has
150
results in
5.4
seconds from
25
sites.
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
SEQu-RAmA Results 0...9
#0
Index
[~]
http://blog.khd.me/blog/2008/12/19/ruby-reflection/
DuckDuckGo
[?]
Start
Next
#1
Index
[~]
https://blogs.kde.org/2005/10/08/java-reflection-vs-rub ...
DuckDuckGo
[?]
Start
Next
#2
Index
[~]
http://phrogz.net/programmingruby/ospace.html
Google.UK
[?]
Start
Next
#3
Index
[~]
https://en.wikipedia.org/wiki/Reflection_(computer_prog ...
Google.UK
[?]
Start
Next
#4
Index
[~]
http://blog.khd.me/blog/2008/12/26/ruby-reflection-2/
Google.UK
[?]
Start
Next
#5
Index
[~]
https://www.safaribooksonline.com/library/view/the-ruby ...
Google.UK
[?]
Start
Next
#6
Index
[~]
https://pdfs.semanticscholar.org/8a06/b3a1694b7ee9ac3b2 ...
Google.UK
[?]
Start
Next
#7
Index
[~]
https://softwareengineering.stackexchange.com/questions ...
Google.UK
[?]
Start
Next
#8
Index
[~]
https://stackoverflow.com/questions/7641881/is-metaprog ...
Google.UK
[?]
Start
Next
#9
Index
[~]
https://thesocietea.org/2016/02/programming-concepts-ty ...
DuckDuckGo
[?]
Start
Next
SEQu-RAmA Results 10...19
#10
Index
[~]
https://stackoverflow.com/questions/6476644/can-i-refle ...
Google.NZ
[?]
Start
Next
#11
Index
[~]
https://www.cs.montana.edu/~tosun/phpvsjava.pdf
DuckDuckGo
[?]
Start
Next
#12
Index
[~]
http://www.javaworld.com/article/2071794/java-app-dev/r ...
DuckDuckGo
[?]
Start
Next
#13
Index
[~]
https://docs.oracle.com/javase/tutorial/reflect/
DuckDuckGo
[?]
Start
Next
#14
Index
[~]
http://www.25hoursaday.com/CsharpVsJava.html
DuckDuckGo
[?]
Start
Next
#15
Index
[~]
http://www.developer.com/java/data/introspection-of-jav ...
DuckDuckGo
[?]
Start
Next
#16
Index
[~]
http://www.c2.com/cgi/wiki?WhyIsReflectionComplex
DuckDuckGo
[?]
Start
Next
#17
Index
[~]
https://stackoverflow.com/questions/17145499/java-is-it ...
DuckDuckGo
[?]
Start
Next
#18
Index
[~]
https://blog.udemy.com/java-reflection/
Bing
[?]
Start
Next
#19
Index
[~]
https://vaskoz.wordpress.com/2013/07/15/is-java-reflect ...
Bing
[?]
Start
Next
SEQu-RAmA Results 20...29
#20
Index
[~]
http://www.zohararad.com/2012/11/16/10-reasons-not-to-u ...
DuckDuckGo
[?]
Start
Next
#21
Index
[~]
http://www.developer.com/java/data/explore-core-feature ...
DuckDuckGo
[?]
Start
Next
#22
Index
[~]
http://www.powershow.com/view/13947e-NWQzO/Using_Reflec ...
DuckDuckGo
[?]
Start
Next
#23
Index
[~]
https://github.com/boonproject/boon/wiki/Ruby-Style-Ref ...
DuckDuckGo
[?]
Start
Next
#24
Index
[~]
http://www.javaworld.com/article/2077682/scripting-jvm- ...
DuckDuckGo
[?]
Start
Next
#25
Index
[~]
http://www.java2s.com/Code/Ruby/Reflection/CatalogRefle ...
DuckDuckGo
[?]
Start
Next
#26
Index
[~]
https://en.wikipedia.org/wiki/Reflection_(computer_science)
DuckDuckGo
[?]
Start
Next
#27
Index
[~]
http://ruby.11.x6.nabble.com/Understanding-Java-JRuby-r ...
DuckDuckGo
[?]
Start
Next
#28
Index
[~]
https://github.com/jashkenas/ruby-processing/wiki/Java- ...
DuckDuckGo
[?]
Start
Next
#29
Index
[~]
https://stackoverflow.com/questions/3790412/ruby-reflec ...
DuckDuckGo
[?]
Start
Next
SEQu-RAmA Results 30...39
#30
Index
[~]
http://tratt.net/laurie/research/pubs/html/tratt__dynam ...
Sogou
[?]
Start
Next
#31
Index
[~]
http://blogs.msdn.com/b/charlie/archive/2008/01/25/futu ...
Sogou
[?]
Start
Next
#32
Index
[~]
https://news.ycombinator.com/item?id=3971867
Sogou
[?]
Start
Next
#33
Index
[~]
http://www.blogjava.net/wyz191/archive/2007/11/13/16022 ...
Sogou
[?]
Start
Next
#34
Index
[~]
http://www.nvisia.com/insights/ruby-and-rails-vs-groovy ...
Sogou
[?]
Start
Next
#35
Index
[~]
http://stackoverflow.com/questions/4464947/java-reflect ...
Sogou
[?]
Start
Next
#36
Index
[~]
http://www.th7.cn/Program/java/201407/229433.shtml
Sogou
[?]
Start
Next
#37
Index
[~]
http://evolvestar.com/want/java-reflection-generics-usi ...
Sogou
[?]
Start
Next
#38
Index
[~]
https://www.lynda.com/Java-tutorials/Reflection/562926/ ...
MetagerDE
[?]
Start
Next
#39
Index
[~]
http://www.mkyong.com/java/how-to-use-reflection-to-cal ...
MetagerDE
[?]
Start
Next
SEQu-RAmA Results 40...49
#40
Index
[~]
https://docs.oracle.com/javase/tutorial/reflect/class/i ...
MetagerDE
[?]
Start
Next
#41
Index
[~]
https://stackoverflow.com/questions/3301635/change-priv ...
MetagerDE
[?]
Start
Next
#42
Index
[~]
https://teachnorthern.wordpress.com/2012/02/02/reflexio ...
MetagerDE
[?]
Start
Next
#43
Index
[~]
http://blog.takipi.com/java-vs-net-vs-python-vs-ruby-vs ...
MetagerDE
[?]
Start
Next
#44
Index
[~]
http://psychology.wikia.com/wiki/Muslims
MetagerDE
[?]
Start
Next
#45
Index
[~]
http://www.programcreek.com/2013/09/java-reflection-tut ...
MetagerDE
[?]
Start
Next
#46
Index
[~]
http://nanowiki.info/
MetagerDE
[?]
Start
Next
#47
Index
[~]
http://stackoverflow.com/questions/9166797/java-reflect ...
MetagerDE
[?]
Start
Next
#48
Index
[~]
https://github.com/ronmamo/reflections
MetagerDE
[?]
Start
Next
#49
Index
[~]
http://www.programmerinterview.com/index.php/java-quest ...
MetagerDE
[?]
Start
Next
SEQu-RAmA Results 50...59
#50
Index
[~]
http://wiki.tcl.tk/4138
MetagerDE
[?]
Start
Next
#51
Index
[~]
http://tutorials.jenkov.com/java-reflection/index.html
MetagerDE
[?]
Start
Next
#52
Index
[~]
http://blog.codefx.org/java/reflection-vs-encapsulation/
MetagerDE
[?]
Start
Next
#53
Index
[~]
http://www.javaworld.com/article/2075801/java-se/reflec ...
MetagerDE
[?]
Start
Next
#54
Index
[~]
http://www.oracle.com/technetwork/articles/java/javaref ...
MetagerDE
[?]
Start
Next
#55
Index
[~]
https://de.wikipedia.org/wiki/Reflexion_(Programmierung)
MetagerDE
[?]
Start
Next
#56
Index
[~]
http://intertwingly.net/wiki/pie/WordIndex
MetagerDE
[?]
Start
Next
#57
Index
[~]
https://stackoverflow.com/questions/34709845/whats-the- ...
MetagerDE
[?]
Start
Next
#58
Index
[~]
http://en.wikibooks.org/wiki/Object_Oriented_Programming
MetagerDE
[?]
Start
Next
#59
Index
[~]
http://tech.rufy.com/2006/06/ruby-vs-java-matter-of-tas ...
MetagerDE
[?]
Start
Next
SEQu-RAmA Results 60...69
#60
Index
[~]
https://www.fastbot.de/red.php?red=34517026901255208077 ...
MetagerDE
[?]
Start
Next
#61
Index
[~]
http://c2.com/cgi/wiki/wiki?ChallengeSixVersusFpDiscussion
MetagerDE
[?]
Start
Next
#62
Index
[~]
http://teachnorthern.wordpress.com/2012/02/02/reflexion ...
QWant
[?]
Start
Next
#63
Index
[~]
http://simpleprogrammer.com/2010/02/12/c-vs-java-part-3 ...
QWant
[?]
Start
Next
#64
Index
[~]
http://stackoverflow.com/questions/3790412/ruby-reflect ...
QWant
[?]
Start
Next
#65
Index
[~]
http://en.wikipedia.org/wiki/Reflection_(computer_science)
QWant
[?]
Start
Next
#66
Index
[~]
http://github.com/jashkenas/ruby-processing/wiki/Java-R ...
QWant
[?]
Start
Next
#67
Index
[~]
http://blogs.kde.org/2005/10/08/java-reflection-vs-ruby ...
QWant
[?]
Start
Next
#68
Index
[~]
https://stackoverflow.com/questions/2556193/reflection- ...
Startpage
[?]
Start
Next
#69
Index
[~]
https://stackoverflow.com/questions/37628/what-is-refle ...
Startpage
[?]
Start
Next
SEQu-RAmA Results 70...79
#70
Index
[~]
https://books.sonatype.com/mcookbook/reference/writing- ...
Rambler
[?]
Start
Next
#71
Index
[~]
https://developer.jboss.org/thread/275310
Rambler
[?]
Start
Next
#72
Index
[~]
https://www.sencha.com/forum/showthread.php?310161-Buil ...
Rambler
[?]
Start
Next
#73
Index
[~]
http://blog.zsoldosp.eu/2014/02/08/what-elixir-taught-m ...
Rambler
[?]
Start
Next
#74
Index
[~]
http://conspiracyscope.blogspot.com/2015/09/
GoodGopher
[?]
Start
Next
#75
Index
[~]
http://cleanupcityofstaugustine.blogspot.com/2014/04/
GoodGopher
[?]
Start
Next
#76
Index
[~]
http://www.altnews.eu/
GoodGopher
[?]
Start
Next
#77
Index
[~]
http://www.wakeupkiwi.com/news-articles-31.shtml
GoodGopher
[?]
Start
Next
#78
Index
[~]
http://www.silverbearcafe.com/private/narco.html
GoodGopher
[?]
Start
Next
#79
Index
[~]
http://sens2001.hubweb.net/bbs/view.php?id=tip&page=2&s ...
Nate
[?]
Start
Next
SEQu-RAmA Results 80...89
#80
Index
[~]
https://docs.oracle.com/javase/9/migrate/toc.htm
Nate
[?]
Start
Next
#81
Index
[~]
http://link.springer.com/chapter/10.1007/3-540-45254-0_10
Nate
[?]
Start
Next
#82
Index
[~]
http://www.sky.ph/bbs/board.php?bo_table=board_job&wr_id=352
Nate
[?]
Start
Next
#83
Index
[~]
https://www.appannie.com/kr/apps/ios/app/groovy-program ...
Nate
[?]
Start
Next
#84
Index
[~]
https://stefanroock.wordpress.com/2005/09/16/ruby-vs-java/
Nate
[?]
Start
Next
#85
Index
[~]
https://websela.wordpress.com/2013/08/14/object-models- ...
Nate
[?]
Start
Next
#86
Index
[~]
https://aws.amazon.com/ko/blogs/korea/week-in-review-17 ...
Nate
[?]
Start
Next
#87
Index
[~]
http://searchmicroservices.techtarget.com/news/1243687/ ...
Nate
[?]
Start
Next
#88
Index
[~]
http://www.marksdailyapple.com/10-psychological-hurdles ...
GoodGopher
[?]
Start
Next
#89
Index
[~]
http://hawaiianlibertarian.blogspot.com/2010/08/
GoodGopher
[?]
Start
Next
SEQu-RAmA Results 90...99
#90
Index
[~]
http://hawaiianlibertarian.blogspot.com/2007/
GoodGopher
[?]
Start
Next
#91
Index
[~]
http://theopenscroll.blogspot.com/2010/10/
GoodGopher
[?]
Start
Next
#92
Index
[~]
http://www.thelibertymill.com/
GoodGopher
[?]
Start
Next
#93
Index
[~]
http://www.scala-lang.org/old/node/10516.html
Nate
[?]
Start
Next
#94
Index
[~]
http://storm.apache.org/releases/1.0.1/Using-non-JVM-la ...
Rambler
[?]
Start
Next
#95
Index
[~]
https://developers.google.com/protocol-buffers/docs/ref ...
Rambler
[?]
Start
Next
#96
Index
[~]
https://services.emi.u-bordeaux.fr/pythontutor/visualiz ...
Rambler
[?]
Start
Next
#97
Index
[~]
http://www.virtuouscode.com/introduction-to-much-ado-ab ...
Rambler
[?]
Start
Next
#98
Index
[~]
https://www.toptal.com/scala/why-should-i-learn-scala
Rambler
[?]
Start
Next
#99
Index
[~]
http://kmizu.hatenablog.com/entry/20080607/1212801414
Goo
[?]
Start
Next
SEQu-RAmA Results 100...109
#100
Index
[~]
https://ja.wikipedia.org/wiki/リフレクション_(情報工学)
Goo
[?]
Start
Next
#101
Index
[~]
http://tomohiko37-i.hatenablog.jp/entry/2015/07/22/123054
Goo
[?]
Start
Next
#102
Index
[~]
https://github.com/jruby/jruby/wiki/CallingJavaFromJRuby
Goo
[?]
Start
Next
#103
Index
[~]
http://d.hatena.ne.jp/myokoym/20100822/1282488109
Goo
[?]
Start
Next
#104
Index
[~]
http://morizyun.github.io/java/basic-refrection.html
Goo
[?]
Start
Next
#105
Index
[~]
https://ios.libhunt.com/project/swiftkvc/vs/reflection
Bing
[?]
Start
Next
#106
Index
[~]
http://www.nakov.com/blog/2008/02/26/aspnet-vs-php-vs-j ...
Bing
[?]
Start
Next
#107
Index
[~]
https://www.safaribooksonline.com/library/view/java-coo ...
Bing
[?]
Start
Next
#108
Index
[~]
http://www.onjava.com/pub/a/onjava/2007/03/15/reflectio ...
Bing
[?]
Start
Next
#109
Index
[~]
http://marxsoftware.blogspot.com/2012/02/book-review-ja ...
Bing
[?]
Start
Next
SEQu-RAmA Results 110...119
#110
Index
[~]
https://en.wikipedia.org/wiki/Talk:Reflection_(computer ...
Bing
[?]
Start
Next
#111
Index
[~]
http://linuxism.tistory.com/2009
Naver
[?]
Start
Next
#112
Index
[~]
http://esconsult.egloos.com/1693297
Naver
[?]
Start
Next
#113
Index
[~]
http://feedproxy.google.com/~r/oreilly/radar/atom/~3/0z ...
Naver
[?]
Start
Next
#114
Index
[~]
http://levin01.tistory.com/624
Naver
[?]
Start
Next
#115
Index
[~]
http://blog.dahlia.pe.kr/?p=326
Naver
[?]
Start
Next
#116
Index
[~]
http://beforu.egloos.com/1444994
Naver
[?]
Start
Next
#117
Index
[~]
http://www.linuxjournal.com/article/8217
Naver
[?]
Start
Next
#118
Index
[~]
http://surii75.blog.me/60038121520
Naver
[?]
Start
Next
#119
Index
[~]
http://teemos.tistory.com/entry/Javascript-Oh-My-Js-번역본
Naver
[?]
Start
Next
SEQu-RAmA Results 120...129
#120
Index
[~]
https://en.wikipedia.org/wiki/Comparison_of_C_Sharp_and_Java
DuckDuckGo
[?]
Start
Next
#121
Index
[~]
https://news.ycombinator.com/item?id=13197461
DuckDuckGo
[?]
Start
Next
#122
Index
[~]
https://bytes.com/sitemap/f-304-p-34.html
ExactSeek
[?]
Start
Next
#123
Index
[~]
https://bytes.com/sitemap/f-326-p-15.html
ExactSeek
[?]
Start
Next
#124
Index
[~]
http://www.javacodegeeks.com/2014/05/java-8-features-tu ...
ExactSeek
[?]
Start
Next
#125
Index
[~]
http://marxsoftware.blogspot.com/2008/01/jmx-and-intros ...
DuckDuckGo
[?]
Start
Next
#126
Index
[~]
https://docs.oracle.com/javase/tutorial/reflect/member/ ...
DuckDuckGo
[?]
Start
Next
#127
Index
[~]
https://ios.libhunt.com/project/reflection/vs/evreflection
DuckDuckGo
[?]
Start
Next
#128
Index
[~]
https://simpleprogrammer.com/2010/02/12/c-vs-java-part- ...
DuckDuckGo
[?]
Start
Next
#129
Index
[~]
http://www.kaibabjournal.com
ExactSeek
[?]
Start
Next
SEQu-RAmA Results 130...139
#130
Index
[~]
http://databasefaq.com/index.php/tag/byte
ExactSeek
[?]
Start
Next
#131
Index
[~]
https://saintaardvarkthecarpeted.com/blog/tag/lisa
ExactSeek
[?]
Start
Next
#132
Index
[~]
http://journalistopia.com
ExactSeek
[?]
Start
Next
#133
Index
[~]
https://community.cadence.com/cadence_blogs_8/b/fv/
ExactSeek
[?]
Start
Next
#134
Index
[~]
https://simpleprogrammer.com/2012/12/01/why-c-is-not-back/
ExactSeek
[?]
Start
Next
#135
Index
[~]
http://lanpanya.com/phiangpen/?p=24
ExactSeek
[?]
Start
Next
#136
Index
[~]
http://www.realtimerendering.com/refs.html
ExactSeek
[?]
Start
Next
#137
Index
[~]
http://www.jtv.com/library/gemstone-glossary.html
ExactSeek
[?]
Start
Next
#138
Index
[~]
https://www.sitepoint.com/reflection-vs-encapsulation-i ...
DuckDuckGo
[?]
Start
Next
#139
Index
[~]
https://www.quora.com/Is-there-a-concept-of-Reflection- ...
DuckDuckGo
[?]
Start
Next
SEQu-RAmA Results 140...149
#140
Index
[~]
http://fakecineaste.blogspot.com/2012/06/reflection.html
DuckDuckGo
[?]
Start
Next
#141
Index
[~]
http://www.java2s.com/Code/Ruby/Reflection/Object.htm
DuckDuckGo
[?]
Start
Next
#142
Index
[~]
http://ajaxian.com/archives/2006/04
ExactSeek
[?]
Start
Next
#143
Index
[~]
http://bravenewgeek.com/category/software-architecture/
ExactSeek
[?]
Start
Next
#144
Index
[~]
http://bravenewgeek.com/2015/05/
ExactSeek
[?]
Start
Next
#145
Index
[~]
http://bravenewgeek.com/tag/go/
ExactSeek
[?]
Start
Next
#146
Index
[~]
http://bravenewgeek.com/tag/software-engineering-2/
ExactSeek
[?]
Start
Next
#147
Index
[~]
http://crookedtimber.org/2017/03/01/in-praise-of-creden ...
ExactSeek
[?]
Start
Next
#148
Index
[~]
http://bravenewgeek.com/category/go-2/
ExactSeek
[?]
Start
Next
#149
Index
[~]
http://ntcore.com/files/dyncpp.htm
ExactSeek
[?]
Start
Next
SEQu-RAmA Results 150...159
Copyright © 2017 William F. Gilreath. All Rights Reserved.
Meta-search for 'ruby reflection versus java reflection' has 150 results on Sat Jul 22 09:20:06 PDT 2017
Internal IP address: '<IP_ADDRESS>'. External IP address/hostname: '<IP_ADDRESS>'/'ipNameExternal'.


Main Page
Related Pages
Namespaces
Classes
Files
Class List
Class Hierarchy
Class Members
Graphical Class Hierarchy
Go to the textual class hierarchy
Generated by
1.6.2


# (c) 2012, Zettar Inc.
# Written by Chin Fang<EMAIL_ADDRESS>#
# This file is part of Ansible
#
# This module is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This software is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this software. If not, see <http://www.gnu.org/licenses/>.
#
'''
This module is for enhancing ansible's inventory parsing capability such
that it can deal with hostnames specified using a simple pattern in the
form of [beg:end], example: [1:5], [a:c], [D:G]. If beg is not specified,
it defaults to 0.
If beg is given and is left-zero-padded, e.g. '001', it is taken as a
formatting hint when the range is expanded. e.g. [001:010] is to be
expanded into 001, 002 ...009, 010.
Note that when beg is specified with left zero padding, then the length of
end must be the same as that of beg, else an exception is raised.
'''
from __future__ import (absolute_import, division, print_function)
__metaclass__ = type
import string
from ansible import errors
[docs]def detect_range(line = None):
'''
A helper function that checks a given host line to see if it contains
a range pattern described in the docstring above.
Returnes True if the given line contains a pattern, else False.
'''
if '[' in line:
return True
else:
return False
[docs]def expand_hostname_range(line = None):
'''
A helper function that expands a given line that contains a pattern
specified in top docstring, and returns a list that consists of the
expanded version.
The '[' and ']' characters are used to maintain the pseudo-code
appearance. They are replaced in this function with '|' to ease
string splitting.
References: http://ansible.github.com/patterns.html#hosts-and-groups
'''
all_hosts = []
if line:
# A hostname such as db[1:6]-node is considered to consists
# three parts:
# head: 'db'
# nrange: [1:6]; range() is a built-in. Can't use the name
# tail: '-node'
# Add support for multiple ranges in a host so:
# db[01:10:3]node-[01:10]
# - to do this we split off at the first [...] set, getting the list
# of hosts and then repeat until none left.
# - also add an optional third parameter which contains the step. (Default: 1)
# so range can be [01:10:2] -> 01 03 05 07 09
(head, nrange, tail) = line.replace('[','|',1).replace(']','|',1).split('|')
bounds = nrange.split(":")
if len(bounds) != 2 and len(bounds) != 3:
raise errors.AnsibleError("host range must be begin:end or begin:end:step")
beg = bounds[0]
end = bounds[1]
if len(bounds) == 2:
step = 1
else:
step = bounds[2]
if not beg:
beg = "0"
if not end:
raise errors.AnsibleError("host range must specify end value")
if beg[0] == '0' and len(beg) > 1:
rlen = len(beg) # range length formatting hint
if rlen != len(end):
raise errors.AnsibleError("host range must specify equal-length begin and end formats")
fill = lambda _: str(_).zfill(rlen) # range sequence
else:
fill = str
try:
i_beg = string.ascii_letters.index(beg)
i_end = string.ascii_letters.index(end)
if i_beg > i_end:
raise errors.AnsibleError("host range must have begin <= end")
seq = list(string.ascii_letters[i_beg:i_end+1:int(step)])
except ValueError: # not an alpha range
seq = range(int(beg), int(end)+1, int(step))
for rseq in seq:
hname = ''.join((head, fill(rseq), tail))
if detect_range(hname):
all_hosts.extend( expand_hostname_range( hname ) )
else:
all_hosts.append(hname)
return all_hosts


--- layout: page hidePageTitle: true classes: press title: "Investor room" ---
When we founded Stockflare in May 2013, we were just three guys bootstrapping. Since then the supporter base has grown to over 270 investors. The key event was our crowdfunding in August 2015. We've now got shareholders in Australia, China, Denmark, France, Germany, India, Ireland, Malaysia Spain, South Africa, Switzerland, and the United Kingdom. We never forget that the shareholders own Stockflare, we work for them, not just for our users.


Kitura is built to be Cloud-ready.
We provide a simple starter project that demonstrates deployment to IBM Cloud.
Additionally, you can use our pre-built Docker image to guide you on how to deploy a container-based Kitura application.
Pushing your application to IBM Cloud will build your application using the latest Swift version supported by the buildpack, which changes periodically. Adding a .swift-version to your application is a common convention to specify the version of Swift needed for your application.
Add a .swift-version file with the desired version or snapshot of Swift
echo "4.0.3" > .swift-version
Kitura-Starter is a Kitura based server application that you can use as a starting point to get your own Kitura application up and running on IBM Cloud. After cloning this GitHub repo to your local system, you can deploy this application to IBM Cloud right away.
Once you have the IBM Cloud command line tool installed, deploying to the cloud is as simple as bx app push.
We provide a pre-built Docker image containing the latest release of Kitura. Follow these steps to try it out:
Install Docker on your development system.
Pull down the kitura-ubuntu image from Docker Hub:
docker pull ibmcom/kitura-ubuntu:latest
Create a Docker container to build and run the kitura-ubuntu image you just downloaded and forward port 8080 on host to the container:
docker run -i -p 8080:8080 -t ibmcom/kitura-ubuntu:latest
You should see an output message similar to the following:
[2017-04-03T18:22:47.146Z] [INFO] [main.swift:28 Kitura_Starter] Server will be started on 'http://localhost:8080'.
[2017-04-03T18:22:47.222Z] [INFO] [HTTPServer.swift:104 listen(on:)] Listening on port 8080
Visit http://localhost:8080/ in your web browser.


| Package | com.whirled.contrib.card.graphics |
| Class | public class MainTrickSprite |
| Inheritance | MainTrickSprite TrickSprite CardArraySprite flash.display.Sprite |
| Property | Defined by | ||
|---|---|---|---|
| _animations : Array | CardArraySprite | ||
| _cards : Array | CardArraySprite | ||
| _factory : CardSpriteFactory | CardArraySprite | ||
| _localHand : HandSprite | MainTrickSprite | ||
| _playerSprites : Array | MainTrickSprite | ||
| _seating : Table | TrickSprite | ||
| _target : CardArray | CardArraySprite | ||
| _trick : Trick | TrickSprite | ||
| _winningCard : int = -1 | TrickSprite | ||
| winningCard : int Access the card that is currently winning, relative to the first card played this round.
| TrickSprite |
| Method | Defined by | ||
|---|---|---|---|
|
Creates a new main trick sprite.
| MainTrickSprite | ||
|
orphanCards():Array
Remove all the card sprites and return an array containing them.
| MainTrickSprite |
| Method | Defined by | ||
|---|---|---|---|
|
animateAddition(card:CardSprite):void
inheritDoc
| MainTrickSprite | ||
|
animateRemoval(card:CardSprite):void
Animates the removal of a card.
| CardArraySprite | ||
|
cardArrayListener(event:CardArrayEvent):void
When the card array changes, update our child sprites and re-layout.
| CardArraySprite | ||
|
getStaticCardPosition(index:int, pos:Point):void
Use the static proportional positions and the current trick leader to place the cards in
a cross, mimicking the player positions at the table.
| TrickSprite | ||
|
positionCards():void
Positions all cards (that are not currently animating).
| CardArraySprite | ||
|
refresh():void
Update our card sprites with the contents of the target card array.
| CardArraySprite | ||
|
trickListener(event:TrickEvent):void
| TrickSprite |
| Constant | Defined by | ||
|---|---|---|---|
| CARD_POSITIONS : Array [static]
| TrickSprite | ||
| FLY_IN_DURATION : Number = .75 [static]
| MainTrickSprite |
| _localHand | property |
protected var _localHand:HandSprite
| _playerSprites | property |
protected var _playerSprites:Array
| MainTrickSprite | () | constructor |
public function MainTrickSprite(target:Trick, seating:Table, playerSprites:Array, localHand:HandSprite)
Creates a new main trick sprite.
Parameterstarget:Trick — The trick that this sprite represents
|
|
seating:Table — An array of player sprite, relative to the local player
|
|
playerSprites:Array — The sprite representing the local player's hand |
|
localHand:HandSprite |
| animateAddition | () | method |
protected override function animateAddition(card:CardSprite):void
inheritDoc
Parameterscard:CardSprite |
| orphanCards | () | method |
public function orphanCards():Array
Remove all the card sprites and return an array containing them. This should only be called if the underlying trick is about to be reset, i.e. on a CardArrayEvent.ACTION_PRERESET action. Otherwise a crash will occur. TODO: handle this using internal listener so caveat is not needed.
ReturnsArray |
| FLY_IN_DURATION | constant |
protected static const FLY_IN_DURATION:Number = .75


We are a GPS tool aimed at improving the lives of the autistic & disabled community. We are bringing the humanity back to navigation with easy to follow directions that describe locations of interest along the way.


This application collects and displays alerts issued through the National Alert Aggregation & Dissemination System.
Alerts are issued by various public safety agencies in Canada, including Environment Canada.


{% extends "layout.html" %} {% block styles %} {% endblock %} {% block scripts %} {% endblock %} {% block title %}
Let people know where to find you on other sites (optional):
Care to tell us a little about yourself?
Markdown is supported, limit 10000 characters.
Want to tell people how to find you on other sites?
You can choose a header image for your profile page. Make it a cool screenshot!


--- author: display_name: UGRC email<EMAIL_ADDRESS>tags: - fuel sites - society categories: [] date: 2011-11-23 15:24:53 -0700 FuelSites: hub: name: Utah State Fuel Sites item_id: 8d9bc67285fb421fb15d55342148ac1e updates: - December 2022 --- {% include abstract.html name="State Fuel Sites" abstract="This dataset contains fueling locations operated by the State Of Utah" %}
This dataset contains state-run fuel sites in the State Of Utah and contains the site name, site status, address and whether it offers gas and/or diesel. The dataset receives periodic updates and is maintained in collaboration with the Utah Division of Fleet Operations.
{% include contact.html subject=page.title contact=site.data.contacts.agrc %}


App Info
| ID | com.homagames.tc |
|---|---|
| Ad Networks | Ironsource |
| Monetization Networks | Ironsource |
| Platforms | iOS, Android |
Dataset Info
| Date Range | dd/mm/YYYY - dd/mm/YYYY |
|---|---|
| Number of rows | X |
| Number of columns | X |
| LTV D | 2 |
| property | value |
|---|---|
| property | value |
| property | value |
| property | value |
United-States - US
| total installs | value |
|---|---|
| Mean total LTV by site ID | value |
| Median total LTV by site ID | value |
| Variance total LTV by site ID | value |
| total revenue | value |
LTV OVER TIME
INSTALLS OVER TIME
CUMLATED REVENUE OVER TIME


- valueOf(String) - Static method in enum DBL.Colour.ColorDistanceFormula
-
Returns the enum constant of this type with the specified name.
- valueOf(String) - Static method in enum DBL.Colour.ColorDistanceFormula
-
Returns the enum constant of this type with the specified name.
- valueOf(String) - Static method in enum DBL.Colour.ColorScheme
-
Returns the enum constant of this type with the specified name.
- valueOf(String) - Static method in enum DBL.Colour.ColorScheme
-
Returns the enum constant of this type with the specified name.
- values() - Static method in enum DBL.Colour.ColorDistanceFormula
-
Returns an array containing the constants of this enum type, in
the order they are declared.
- values() - Static method in enum DBL.Colour.ColorDistanceFormula
-
Returns an array containing the constants of this enum type, in
the order they are declared.
- values() - Static method in enum DBL.Colour.ColorScheme
-
Returns an array containing the constants of this enum type, in
the order they are declared.
- values() - Static method in enum DBL.Colour.ColorScheme
-
Returns an array containing the constants of this enum type, in
the order they are declared.
- violetColor() - Static method in class DBL.Colour.Colours
-
- violetColor() - Static method in class DBL.Colour.Colours
-


# -*- coding: utf-8 -*-
r"""
Generic NEURON cell object. Provides template abstract methods and a generic
design for NEURON cell models.
AUTHORS:
- Thomas McTavish (2010-11-04).
- Thomas McTavish (2011-11-06) Update for cleaner docstring and error reporting.
- Thomas McTavish (2012-02-04) Added _resolve_attr to retrieve attributes,
sub-attributes, and sub-elements via strings.
"""
import textwrap
import numpy
from neuron import h as nrn
[docs]class Cell(object):
"""
Generic cell template for NEURON cell objects.
.. Note::
Subclasses can override :func:`__init__` completely,
or do some of their own initialization first, and then
let :class:`Cell` do its initializing, and then the
subclass can finish. For example::
class ChildCell(Cell):
def __init__(self):
# Do some stuff
Cell.__init__(self)
# Do some more stuff
You might have to get fancy with arguments::
class ChildCell(Cell):
def __init__(self, someparameter=someval, **kwargs):
# Do some stuff
self.someparameter = someparameter
Cell.__init__(self, **kwargs)
# Do some more stuff
"""
def __init__(self, nameprefix='', **kwargs):
self.nameprefix = nameprefix
self.x = 0; self.y = 0; self.z = 0
self.soma = None
self.synlist = []
self.create_sections()
self.build_topology()
self.build_subsets()
self.define_geometry()
self.define_biophysics()
self.create_synapses()
self.gid = 0
# def __getattr__(self, name):
# return self._resolve_attr(self, name)
def _resolve_attr(self, obj, attrspec):
"""Permit sub-attribute or sub-element retrieval through dot syntax.
This allows dynamic programming as strings can be assembled
to retrieve particular cell subobjects and subelements from the cell.
For example, to connect a NetStim to a cell object that has a variety
of synapses, a method could dynamically construct a
string to connect that synapse:
def attach_netstims(cells, loc):
for cell in cells:
stim = nrn.NetStim()
# Set stim params
nc = nrn.NetCon(stim, getattr(cell, loc))
To attach a NetStim to a cell that has ExpSyn objects on the apical and
dendritic trees, say, then this could be arranged as:
attach_netstims(cells, 'expsyns.apical_syn')
attach_netstims(cells, 'expsyns.basal_syn')
Note that the sub elements must have a string label, but single list
indices can also be addressed. For example ``synlist[2]`` could be
called with the string "synlist.2".
:param obj: Object to query the attribute
:param attrspec: String of the attribute or element label to retrieve.
:return: The attribute or object
"""
attrssplit = attrspec.split(".")
attr = attrssplit[0]
try:
obj = obj[int(attr)] # In case list element
except ValueError:
try:
obj = obj[attr]
except (TypeError, KeyError, AttributeError):
obj = getattr(obj, attr)
except (TypeError, KeyError, AttributeError):
obj = getattr(obj, attr)
if len(attrssplit) > 1:
attrspec = attrspec.partition(".")[2] # right part of the string.
return self._resolve_attr(obj, attrspec) # Recurse
return obj
[docs] def create_sections(self):
"""
Create the sections of the cell. Remember to do this
in the form::
self.soma = nrn.Section(name='soma', cell=self)
"""
errstr = "create_sections() is not implemented.\n"
errstr += textwrap.dedent(self.create_sections.__doc__)
raise NotImplementedError(errstr)
[docs] def build_topology(self):
"""
Connect the sections of the cell to build a tree. "0" ends are
toward the soma and "1" ends are distal. For example, to connect
the "0" end of a dendrite to the "1" end of the soma::
self.dend.connect(self.soma(1))
"""
# errstr = "build_topology() is not implemented.\n"
# errstr += textwrap.dedent(self.build_topology.__doc__)
# raise NotImplementedError(errstr)
pass # May be a 1-compartment neuron. No need to abstract.
[docs] def define_geometry(self):
"""
Set the 3D geometry of the cell. The length, diameter, and
number of segments should be set for each section as well as
the section's (x,y,z) coordinates, if necessary. For example::
self.soma.L = self.soma.diam = 12.6157 # microns
self.dend.L = 200 # microns
self.dend.diam = 1 # microns
self.dend.nseg = 5
"""
errstr = "define_geometry() is not implemented.\n"
errstr += textwrap.dedent(self.define_geometry.__doc__)
raise NotImplementedError(errstr)
[docs] def define_biophysics(self):
"""
Assign the membrane properties across the cell. For example::
for sec in self.all: # 'all' exists in parent object.
sec.Ra = 100 # Axial resistance in Ohm * cm
sec.cm = 1 # Membrane capacitance in micro Farads / cm^2
# Insert active Hodgkin-Huxley current in the soma
self.soma.insert('hh')
self.soma.gnabar_hh = 0.12 # Sodium conductance in S/cm2
self.soma.gkbar_hh = 0.036 # Potassium conductance in S/cm2
self.soma.gl_hh = 0.0003 # Leak conductance in S/cm2
self.soma.el_hh = -54.3 # Reversal potential in mV
"""
errstr = "define_biophysics() is not implemented.\n"
errstr += textwrap.dedent(self.define_biophysics.__doc__)
raise NotImplementedError(errstr)
[docs] def create_synapses(self):
"""
Create synapses (such as ExpSyn) at various
segments and add them to self.synlist.
For example, in a ball-and-stick cell with a soma and single
dendrite, to add an exponentially decaying (tau = 2 ms) synapse
in the middle of the dendrite::
syn = nrn.ExpSyn(self.dend(0.5))
syn.tau = 2
self.synlist.append(syn)
"""
pass # Ignore if child does not implement.
[docs] def build_subsets(self):
"""
Build section list iterators. This defines the 'all',
SectionList, but subclasses may want to define others.
If overriden, call Cell.build_subsets(self) to create the 'all'
SectionList.
For example, in a subclass with two dendrites,
``self.dend[0]`` and ``self.dend[1]`` already defined,
we can add them to a "dendlist" iterator::
Cell.build_subsets(self) # Make 'all' iterator
self.dendlist = nrn.SectionList()
self.dendlist.append(self.dend[0])
self.dendlist.append(self.dend[1])
"""
self.all = nrn.SectionList()
self.all.wholetree(sec=self.soma)
[docs] def connect2target(self, target, thresh=10):
"""
Make a new :class:`NetCon` with this cell's membrane
potential at the soma as the source (i.e. the spike detector)
onto the target passed in (i.e. a synapse on a cell).
Subclasses may override with other spike detectors.
"""
nc = nrn.NetCon(self.soma(1)._ref_v, target, sec = self.soma)
nc.threshold = thresh
return nc
[docs] def is_art(self):
"""Flag to check if we are an integrate-and-fire artificial cell."""
return 0
[docs] def set_position(self, x, y, z):
"""
Set the base location in 3D and move all other
parts of the cell relative to that location.
"""
for sec in self.all:
for i in range(int(nrn.n3d())):
nrn.pt3dchange(i, \
x-self.x+nrn.x3d(i), \
y-self.y+nrn.y3d(i), \
z-self.z+nrn.z3d(i), \
nrn.diam3d(i))
self.x = x; self.y = y; self.z = z
[docs] def rotateZ(self, theta):
"""
Rotate the cell about the Z axis.
"""
rot_m = numpy.array([[numpy.sin(theta), numpy.cos(theta)], \
[numpy.cos(theta), -numpy.sin(theta)]])
for sec in self.all:
for i in range(int(nrn.n3d())):
xy = numpy.dot([nrn.x3d(i), nrn.y3d(i)], rot_m)
nrn.pt3dchange(i, float(xy[0]), float(xy[1]), nrn.z3d(i), \
nrn.diam3d(i))


THERMOSTAT
Current Temperature:
PowerSave Status:
Energy Use:
Thresholds for energy use:
High: 25 or above
Medium: 18-25
Low: Lower than 18


Cursor Position Exposed via CSS Variables
Cursory is a CSS reprocessor that makes the following JS values available as CSS variables:
cursorX
cursorY
innerWidth
innerHeight
clicked
These can be used as CSS variables with the following names:
--cursorX
--cursorY
--innerWidth
--innerHeight
--clicked
These variables are updated at the following events:
mousemove
touchmove
In addition, the --clicked
variable is changed from 0
to 1
between the mousedown
and touchstart
events and the corresponding mouseup
or touchend
events.
To run Cursory whenever you want, use the cursory()
function in JS.
This allows you to use the var(--clicked)
ratio as a 1
or 0
in your CSS calc()
functions, or as a value for opacity:;
fairly easily.
To run Cursory whenever you want, use the cursory.load()
function in JS.
To make an element like div
follow the cursor position when using cursory
, use CSS with variables like this:
div {
width: 10px;
height: 10px;
position: fixed;
background: black;
top: calc(var(--cursorY) * 1px);
left: calc(var(--cursorX) * 1px);
}


My name is Aidan Sawyer. I'm a Web Developer, Brewer, Distiller, bartender, and fireman with a great appreciation for immersion, interoperability, and separation of concerns.
I think everything is better crafted when done both with an earnest interest/investment in its purpose and from within a pretty deep knowledge of the context for its use. I try to hold myself to these measures throughout my life.
Software is a powerful tool for communicating and facilitating ideas and supporting work across any number of industries. While it's not my only calling and interest, it's a means of expression and a way to dabble and explore interesting ideas, support my other work (and future family), and to maintain my skills over time.
I spent much of my early career working in and around academic research and libraries. We live in a world replete with information and research, so finding ways to organize, describe, find, and access it all, remain challenging and important problems I hope to return to at some point in my future.
I've spent the last couple years exploring brewing/distilling, emergency response, writing, and mountaineering. All of these provide a time, space, and protection for varieties of human experience that I deeply cherish. I'm currently in search of a way to better incorporate one or more of these fields with my capacities in software development.
If you'd like to contact me, the preferred way to do that is to email me.
If that's not working (or it's related to any of my projects, please feel free to submit an issue.


{% extends 'layouts/layout-bsa-design-system.html' %} {% block pageTitle %} Start page template - NHS.UK prototype kit {% endblock %} {% block beforeContent %} {{ breadcrumb({ items: [ { href: "/index", text: "Home" } ], href: "/design-system/community", text: "Community" }) }} {% endblock %} {% block content %}
This design system is for everyone. It's purpose is to extend the NHS.UK Service Manual with work specific to the NHS Business Services Authority.
Patterns or components that have a wider use will be shared with the NHS.UK and GOV.UK Design System so they can be used by delivery teams across government.
Find out:


--- layout: default title: Breakout groups description: Every week after the presentation, we split up into breakout groups led by regular attendees to guide conversations, answer questions, and build civic apps. The groups are split into two types - working groups and learning groups. ---
Every week after the presentation, we split up into breakout groups led by regular attendees to guide conversations, answer questions, and build civic apps. The groups are split into two types: working groups and learning groups.
Want to start your own breakout group? All you need to do is announce it at the next hack night and people will vote with their feet! We also recommend that you check out our guide to starting a breakout group.
New to Chi Hack Night? Interested in learning what it's all about? Or learning how to program or work with data? Join a learning group!
These groups focus on building civic apps, doing research and pursuing ways of using technology to make Chicago a better place to live in. Groups can last for one night or several years - it's up to you!
Sometimes groups get marked as closed
if they haven't been active in a few weeks. This is to keep the list size managable. Any group marked this way can be re-opened at any time.
To re-open a group:


Define a parser 'main' in the first textarea, and it will be used to parse the data in the second textarea.
makeParser.coffee
is a recursive-descent parsing library that I wrote in 2014
after feeling inspired by the combinator-centric parsing styles of Haskell. It is fairly
smooth to use, and nicely fitted to the syntactic sugar of CoffeeScript, though I don't
recommend using it extensively as I haven't written any documentation, nor am I very
likely to return to it for maintenance in the future.


Aarushi Parashar
Data Scientist. Software Engineer.
Computer Science Major at
Cornell University
About
Portfolio


House-54/A, Ghana, Accra
<EMAIL_ADDRESS>+233 200 000 000
Home
Fly
Training Online
FAQs
Latest News
Community Group
Member Area
Contact
Home
Pages
FAQs
Community Group
Contact
Training Online
Home
Training Online
Aviation Training
Aviation Safety
Avionics
Aircrat
5
Macroeconomics
Logo
Animation
2
Avionics Systems and Troubleshooting
Drawing
8
Avionics Navigation Systems
Website
Ilustration
12
Communication Systems in Avionics
Logo
Drawing
5
Thermodynamics
Animation
9
Inspection and service
Website
1
General aeronautics
Ilustration
Animation
6


This form allows you to plot a single field from a model/experiment or compare
one field to itself or another. The instructions below explain each of the sections
of the form.
Field(s)
- From the Collection, select the Model, Experiment, Ensemble Member and Variable you wish to plot. You can select
one or more ensemble members, however, if you select more than 10-15, the process will most likely time out.
- From the Time Series, select the Climate Index you wish to compare with the model data. A description
of the timeseries can be found here.
- Click the Select Data button to bring up the options for comparing and plotting the data you've selected.
If you make any changes in the Field(s) section, click the Update Data Selection button to refresh
the options below.
Time Series Comparison
- The model variable and time series you selected are listed. If you are plotting pressure level data, select the Level you wish to use.
- Choose a starting and ending month over which to average the data.
- Choose a starting and ending year for the time series.
- Select the Region that the data will be averaged over. You can select from a predefined
list of regions, or select Custom. If you choose custom, you can draw a region on the map
(use Shift+drag to draw the region), or enter the North, South, West and East coordinates of
the region.
Plot Options
- You can select to plot the correlation or comparison between the two time series.
- You can select a mask for the data to block out either ocean or land areas.
- You can plot the output as color-filled contours and optionally overlay contour lines and labels.
- You can override the default contour intervals for the plots by specifying
a contour interval, minimum and maximum values.
Make Plot
- After you have made your selections, click the Make Plot button to generate the image.
- An image will be displayed to the right of the data selection region. You can
click on the image to get a full sized version of it. There
is link below the image which allows you to download the image to your computer.
- There are links for downloading the individual files that were used to create the image and to download all files.


Very nice dry spot under the bridge with public transportation and laundromat just around the corner.
5's! Ultimate, Reaching for the stars!
5's!
Ultimate, Reaching for the stars!
4's! Sends anyone to heaven, I wish I could get my mother-in-law here!
4's!
Sends anyone to heaven, I wish I could get my mother-in-law here!


| Command | Description | Format | Aliases |
|---|---|---|---|
| updates | Receive Weverse Updates of a specific Weverse community in the current text channel. Use again to disable for a specific community. Available Communities -> [TXT, BTS, GFRIEND, SEVENTEEN, ENHYPEN, NU'EST, CL, P1Harmony, Weeekly, SUNMI, HENRY, Dreamcatcher, CherryBullet, MIRAE, TREASURE, LETTEAMOR, EVERGLOW, FTISLAND, woo!ah!, IKON, JUST B, BLACKPINK] | %updates (community name) [role to notify] | |
| disablecomments | Disable updates for comments on a community. | %disablecomments (community name) | |
| disablemedia | Disable updates for media on a community. | %disablecomments (community name) |


22 January 2007
The Ministry of Health of Indonesia has announced a new case of human infection of H5N1 avian influenza. A 32-year-old woman1 from West Java Province developed symptoms on 11 January and died in hospital on 19 January. Initial investigations of the source of her infection indicate that the woman had been involved in the slaughter of sick chickens in the days prior to symptom onset.
Of the 80 cases confirmed to date in Indonesia, 62 have been fatal.
1 Previously reported as 26-year-old


@* * Copyright 2021 HM Revenue & Customs * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. *@ @import models.view.NatureOfBusiness @import helpers.templates.{payeTextArea, payeErrorSummary} @import uk.gov.hmrc.play.views.html.{helpers => govHelpers} @import views.helpers.TitleHelper.title @import config.AppConfig @(sicForm: Form[NatureOfBusiness])(implicit request: Request[_], messages: Messages, appConfig: AppConfig) @main_template(title = title(messages("pages.natureOfBusiness.description"), sicForm)) { @payeErrorSummary( messages("app.common.errorSummaryLabel"), sicForm, dataJourney=Some("NatureOfBusiness") )


I'm a senior product designer building a product insights platform at Sprig. In a past life, I designed at Arcadia and The Atlantic, coded at Concur, and created graphics for a tea shop. My guiding design philosophy is that technology should be mindfully used to enhance people's lives instead of distract from it.
In my spare time, I read books, take long meandering walks, and make time-consuming desserts. Even in my down time, my preferred mode of being is making and learning, and I do it all with a cup of citron honey tea.
---
Designed & coded this site with patience & caffeine ☺


We believe that Hackers have power to change the scenario related to the issues we are facing right now. But to make this happen, we need to stand together and collaborate! Our mission is not just to build a mere platform but a vibrant community where the best talents are recognized by the leading industry partners and collaborate towards the future Innovation!! Are you Innovative and Creative in solving day-to-day challenges? Want to make dent in the society by doing something unusual?  Is innovation your forte? Are you a tech-enthusiast, coding geek or even other than these 2 fields but intereste in Electronics? Lastly, are you a passionate about the technology?? If YES is your answer to even few questions stated above then we invite you to CREATIVITY Un-LTD. - one of the finest Hardware Hackathons of its kind to celebrate ‘The International Arduino Day’ at Vadodara. A student held, 24 hours Hackathon is inviting best 10 teams, a legion of 30 Enthusiastic Hackers under one roof to meet, create and bring to life an idea in a most creative way. Our focus is on letting your imagination flow free and enable you to push the boundaries of your own capabilities in under 24 Hours. We believe that best learning from the hackathon is the process of looking-at and solving a problem in a unique way and the whole process around it, rather than merely an outcome!
A student held, 24 hours Hackathon is inviting best 10 teams, a legion of 30 Enthusiastic Hackers under one roof to meet, create and bring to life an idea in a most creative way.
Create musical instrument, Games based on VR, some kind of interactive robot like Wall-E, a small interactive show-piece which you can put in your living-room, or any cool Hardware which amazes people.
Brainstorming / Designing / Building / Coding / Hack / Networking / Mentoring / Competitions / Swags / Snacks / Games / Tech-Talks / And / Lot / More
Your aim should be to promote technology in such an interesting way, that a layman should feel 'WOWW' about it and eventually inspiring them to build such frugal solutions on their own! For instance, can you inspire 7th grade student to develop his/her own Home-Work doing Robot
This hackathon is free and open for all. If you are under 18 years of age, we will need a consent from your parents. For female participants, they need not have to stay at night for the hackathon!
We will be closing the registrations on 10th May, 2018. Selected teams will be declared by 11th May.
Maximum of 3 members. Tip: You can have team of people from different fields, as this hackathon not only focuses on Technical Side, but creativity will be mattered most!
This is a team event. We believe that you are stronger in a team than individual. So, lone rangers are not allowed. If at all you can’t find a team, we can help you to connect with others who have applied individually, but chances in getting selected as a lone applicant is less than in a team
Front End Developer with experience of 2 years
Front End Developer
Content Writer And Organizer
Organizer And Maintainance
Organizer


 Now, you can not just
slap some randon image on your site. Your image needs to be related to your content. Your image need to
be clear or sharp enough to see. Your image needs to be big enough to see, but do not oversize it as well.
To create images for web, it is best if you understand how the images work within the browser. Often,
you need to find balance between the file size and quality. You can only use graphic file formats that
browsers support.
Types of Images
JPEG: Joint Photographic Experts Group
- Among the most widely used graphic formats in existence
- Uses lossy compression to reduce file size
- High levels of compression result in artifacts appearing in the image
- Working with JPEGs as source images is not recommended
GIF: Graphics Interchange Format
- Quickly became the most widely used image format on web
- Support transparency and limited animation
- GIFs are 8 bit graphics and are limited to a max of 256 colors
- Are most widely used for icons and images with solid regions of color
PNG: Portable Network Graphics
- Support transparency and have a lossless compression
- Support millions of colors
- Typically larger in file size than JPEGs and GIFs
SVG: Scalable Vector Graphics
- Not widely used
- Is a vector graphics format
- Can be scaled independently of resolution
- Graphics are written in SVG markup, which make them editable through code


In a speech in San Francisco, Gates spoke of "anxiety" over the future role of the service after nearly a decade of fighting on land in Afghanistan and Iraq. He said some feel the Corps has "become too heavy, too removed from their expeditionary, amphibious roots and the unique skill sets those missions require." Though many Marines are battle-tested, some "may never have stepped aboard a ship."
Gates did not say Thursday whether the force structure review, to be led by Navy Secretary Ray Mabus and Gen. James Amos, the incoming Marine commandant, will result in "the few" becoming fewer after bulking up in recent years. But in a separate session with sailors aboard the destroyer USS Higgins, the Pentagon chief said the Corps had "gotten too big" and would be trimmed.
That prediction is in line with a larger overhaul that Gates detailed this week. It will involve belt-tightening across all the services and at the Pentagon to wring out $100 billion in savings over the next five years.
The days of storming Iwo Jima are long gone. Marines still belt out "From the Halls of Montezuma to the Shores of Tripoli," but as they learned in Somalia, where journalists beat them ashore in Mogadishu, times have changed.
Marines deployed aboard Navy ships remain the go-to ready forces in a crisis. Unlike the Army, they are lightly equipped to move quickly ashore by sea or air to conduct evacuations, relief operations or initiate combat. Traditionally the first in, they also are usually the first out, replaced after a few weeks by heavier Army troops trained for the long haul.
That "unique ability to project combat forces from the sea under uncertain circumstances -- forces quickly able to protect and sustain themselves -- is a capability that America has needed in this past decade and will require in the future," Gates said.
About 1,000 Marines flew in to the Afghan desert from ships more than 400 miles away in the Northern Arabian Sea to start the war against the Taliban in October 2001. Almost nine years later, though, 20,000 Marines are still fighting in that landlocked country, doing a job nearly indistinguishable from their soldier brethren.
"These warriors are writing a new chapter in the Marine Corps roll of honor with their blood and their sweat," Gates said.
Despite the Corps' storied history as the Navy's on-board landing force, the Pacific campaign of World War II was the only period in history when the service focused almost exclusively on amphibious assaults. The last major combat landing was during the Korean War at Inchon.
"It is proper to ask whether large-scale amphibious assault landings along the lines of Inchon are feasible," Gates told an audience that included retired Marines. "New anti-ship missiles with long range and high accuracy may make it necessary to debark from ships 25, 40 or 60 or more miles at sea."
Beach landings have become so rare that the Marines made headlines in June when the Corps put on an amphibious training exercise at California's Camp Pendleton.
Meanwhile, military observers questioned Gates' concern about blurring the lines between soldiers and Marines.
"They are a second land army -- and a third air force, by the way. That's not necessarily a bad thing. It provides a competing way of operating. What could be more American than such a competition?" said Thomas Ricks, a senior fellow at the Center for a New American Security and author of "Making the Corps," about how Marines inculcate their culture at boot camp.
"I wouldn't make a lot of changes to the Marines right now. They tend to be very handy in the first phases of wars -- Guadalcanal in World War II, the Pusan Perimeter in Korea," he added. "I'd make bigger changes in the Army, really taking seriously the mission to train foreign security forces. And I'd look for really big savings more in the support areas than in the teeth area."
But Andrew Bacevich, a national security expert at Boston University and a graduate of the U.S. Military Academy at West Point, said the Marines have become an "example of the redundancies that permeate our defense establishment. ... Redundancies can be good as long as you can afford them. We no longer can."
Anthony Cordesman, a defense analyst at the Center for Strategic and International Studies, cautioned against too much tinkering with an organization established by the Continental Congress in 1775.
"The reality is, when you have one of the most successful combat units in the world," he said, "you do not conduct fascinating social experiments to see if you can transform it into something else."


According the NASA, there are three broad bands where the Earth's skies are most likely to be cloudy, a narrow strip near the equator and two wider strips in the mid-latitiudes 60 degress norht and south of the equator. The scatter plot indicates a somewhat equal distribution of clouds as confirmed by this NASA cloud fraction map fromt the same day the data was pulled - 2/26/18
© 2018 Copyright Vacanti LLC


[gecode-users] High memory consumption during execution
benoit
benoitlaurent at neuf.fr
Mon Nov 9 23:17:22 CET 2009
Hello,
In a previous message
(http://www.ps.uni-sb.de/pipermail/gecode-users/2009-November/003287.html),
I faced memory problems with the element constraint during the
definition of my space. The concept of shared array implemented in the
new version of Gecode (3.2.1) solved it.
However, a high memory consumption problem now occurs during execution.
I suppose that it is also related to the element constraint (but I'm not
completely sure). I tried to isolate a simple piece of code but failed
to reproduce the problem. I also tried to identify the problem in debug
mode but, at some point, I can not have access to the code (I'm using
Visual Studio Express 2008). With the few information provided, it may
be difficult to solve my problem. Is there a "classical" mistake that
could explain this behavior ?
I can provide my code if needed but it is not very "digeste".
Thank you in advance for your help.
Benoît
More information about the gecode-users
mailing list


Reports a class that doesn't depend on any other class in its package, depends on classes from another package, and itself is a dependency
only for classes from this other package.
Consider moving such a class to the package on which it depends.
Available only from Code | Inspect Code or
Code | Analyze Code | Run Inspection by Name and isn't reported in the editor.


Cybersecurity is the practice of protecting systems, networks, and programs from digital attacks. These cyberattacks are usually aimed at accessing, changing, or destroying sensitive information; extorting money from users; or interrupting normal business processes.
Implementing effective cybersecurity measures is particularly challenging today because there are more devices than people, and attackers are becoming more innovative.
Hacking refers to activities that seek to compromise digital devices, such as computers, smartphones, tablets, and even entire networks. And while hacking might not always be for malicious purposes, nowadays most references to hacking, and hackers, characterize it/them as unlawful activity by cybercriminals—motivated by financial gain, protest, information gathering (spying), and even just for the “fun” of the challenge.
Using software to protect your systems and networks acts as a deterrent for hackers who prefer easy targets that require less effort and carry less risk of being caught. Although no software can promise 100% impenetrability, security software makes it that much harder for cyber criminals to create access points, and we can think of it as an extra layer of protection from hackers.
Cybersecurity is important because it encompasses everything that pertains to protecting our sensitive data, personally identifiable information (PII), protected health information (PHI), personal information, intellectual property, data, and governmental and industry information systems from theft and damage attempted by criminals and adversaries.


My Travel Tracker
1 minute read
A simple Python 3/Flask web-app to track my flights details. Flight data is stored in a MySQL database & displayed in form of tables & charts.
Technologies used:
- Backend - Python3/Flask
- Frontend - Bootstrap
- MySQL
- Chart.js
GitHub repo: https://github.com/shashank-ssriva/My-Travel-Tracker
Posted:
Posted By:
Shashank Srivastava


Index
This show the trefoil knot $K$, embedded in $\mathbb{R}^3$ with no crossings
This shows a projection of the knot in $\mathbb{R}^2$. This inevitably has crossings, so the map $K\to\mathbb{R}^2$ is not injective.


With precious little surplus PV around at the moment, why not put your rig to an alternative use? With nothing more than an Arduino & voltage sensor to hand, variations in mains frequency can very easily be recorded.
The attached sketch is based on my Mk2i Pv Router code. The ADC operates in fixed timer mode with one voltage sample being taken every 1000uS. That's 20 samples per mains cycle, or a thousand per second. Or 15000 per 15-seconds, which is what the sketch records.
Along with a timestamp, this number is sent to the Serial monitor at fixed intervals. Comparable data from National Grid is updated every 15s so the output period at Line 180 has been set to this period (750 mains cycles). The timestamp is updated independently ever minute.
Data is dispatched piecemeal to avoid any disturbance to the sampling process. If the ADC's operation is ever compromised, a '$' character is sent to the Serial output. No such characters have been seen during my first 24 hours of recording.
Having got some data, this can be conveniently displayed in a spreadsheet. Copy and paste it into a .txt file and then import this data into Excel or similar. Unfortunately, I've yet to get Excel to interpret the second column's data as "Time"; I therefore create an extra column (including seconds) for this purpose. Another extra column displays the 'Y' values data in a normalised and inverted form. This format can then be compared directly with published National data.
Frequency data for the last 60 mins can be screen-grabbed from http://www.nationalgrid.com/uk/Electricity/Data/Realtime/Frequency/Freq6... Equivalent local data can be displayed by adjusting the min and max limits of the graph's X-axis. Time is treated as the decimal part of each 24h day, so 6am is 0.25.
This sketch is not intended to provide an absolute measurement of mains frequency, but it does seem to track variations pretty well. It will be interesting to see whether results from a basic Arduino are any different than for an emonTx or alternative hardware platforms.
Warning: Allowing the laptop to hibernate is not good for one's data!
Re: How to measure Variations in Mains Frequency
Great stuff Robin thanks for sharing. Tried your MainsFreqChecker sketch and it works great. Hint for other novices like me you need to use "Both NL &CR" choice in Arduino output COM screen (bottom right corner beside baud rate) to interact with sketch).
I would really like to measure Irish Grid Frequency and publish to a web site. I can usually manage to merge scripts ok e.g. adding temperature sketch to standard emontx sketch etc. However I tried merging this one with emontx and it's not as straight forward. Anyone try this with rf (emonlib) ot emontx.
My aim is similar web page as Dynamic Demand. I also tried the following code at http://jeelabs.org/2009/05/28/measuring-the-ac-line-frequency/ - only picture so I typed out compiles ok but does nothing ( could have missed something).
Cheers
Peter
volatile uint8_t count;
uint8_t first =1;
long lastTime;
ISR(ANALOG_COMP_vect) {
++count;
}
void setup() {
Serial.begin (9600);
Serial.println("\n[hertz]");
ACSR = _BV(ACBG) | _BV(ACI) | _BV(ACIE);
ADCSRA &= ~ bit(ADEN);
ADCSRB |= bit(ACME);
ADMUX =0;
}
void loop() {
cli();
if (count >= 100) {
long now = micros();
count -= 100;
sei();
if (lastTime !=0){
long millihz =long(50e9 / (now -lastTime));
Serial.print(millihz/1000);
Serial.print('.');
Serial.print((millihz/100) % 10, DEC);
Serial.print((millihz/10) % 10, DEC);
Serial.print((millihz) % 10, DEC);
Serial.print(" Hz ");
if (millihz >= 50000)
Serial.print('+');
Serial.print ((millihz - 50000) * 0.002);
Serial.println(" %");
}
lastTime = now;
}else
sei();
}
Re: How to measure Variations in Mains Frequency
My phase-locked loop sketch will do that for you. You just need to add the variable "frequency" to the TX payload as Brian D has done.
Re: How to measure Variations in Mains Frequency
Thanks Martin, have your sketch running and looks good. Will try send to Pi.
Cheers
Peter
Re: How to measure Variations in Mains Frequency
I'd forgotten all about this one!
Re: How to measure Variations in Mains Frequency
See my post about EmonLibPro http://openenergymonitor.org/emon/node/2406
It does what you want and more.


I dig spinning wheels. But mostly I dig the meditative and creative nature of spinning.
You use fiber that is soft and delights the sense of touch.
You spin it on a wheel in a soothing repetitive motion (assuming your fiber is working with you).
(Be careful to take a break and stretch!)
You can also spin on a spindle (but wheels are so much faster).
This motion can be a form of meditation.
| Yarn Name | Ply | Wraps per inch |
|---|---|---|
| Cobweb | 1 ply | NA |
| Sport | 5 ply | 12 wpi |
| Aran | 10 ply | 8 wpi |
You can find a better table here.
You can learn a lot about fiber twist here. The information is cool, but the site seems too cluttered. I'm not a fan of the floating "like" bar or the sidebars. I understand they are there for add revenue, but I feel there are better ways to lay it out. For example Ravelry has two ads on their home page but it is integrated nicely. And they are pretty pictures so add something to the design of the page rather than all clashing together.
An interesting thing about Ravelry is that they are using all divs and not sections. I assume that this is because it was written before HTML5. I wonder if they are going to update their HTML, so that it would be more accessible.


A game will runs for 40 seconds, during which you can solve as many mangled words as you can manage.


dash.ensembleFilter
Implement common utilities for ensemble-based data assimilation filters
Description
The ensembleFilter class implements utilities that are used by both the Kalman Filter, and the particle filter. The primary purpose of this class is to parse and error check the essential data inputs to these filters. Specifically, the observations, uncertainties, estimates, and prior. The class also includes a utilities for loading specific priors or R covariances, and also for checking that a filter object has the inputs required to run an algorithm
Methods
General
label - Set or return a label for the filter
name - Return a name for use in error messages
finalize - Ensure that a filter object has the required inputs to run an algorithm
Inputs
observations - Parse and process observations for a filter
prior - Parse and process priors for a filter
estimates - Parse and process estimates for a filter
uncertainties - Parse and process uncertainties for a filter
Error Checking
processWhich - Processes whichR and whichPrior inputs
assertValidR - Ensures that observations do not have NaN uncertainties
Query
Rcovariance - Returns an R covariance matrix for queried time steps and sites
loadPrior - Loads a prior from an evolving set
Console Display
dispFilter - Display details about a filter object in the console
Tests
tests - Unit tests for the ensembleFilter class


| 052:029 Khan | : |
Therefore, remind and preach (mankind, O Muhammad SAW of Islamic Monotheism). By the Grace of Allah, you are neither a soothsayer, nor a madman. |
| 052:029 Maulana | : |
So remind for, by the grace of thy Lord thou art no soothsayer, nor madman. |
| 052:029 Pickthal | : |
Therefor warn (men, O Muhammad). By the grace of Allah thou art neither soothsayer nor madman. |
| 052:029 Rashad | : |
You shall remind the people. With your Lord's blessing's upon you, you are neither a soothsayer, nor crazy. |
| 052:029 Sarwar | : |
(Muhammad), remind them, by the Grace of your Lord, that you are neither a soothsayer or an insane person. |
| 052:029 Shakir | : |
Therefore continue to remind, for by the grace of your Lord, you are not a soothsayer, or a madman. |
| 052:029 Sherali | : |
So keep on admonishing. By the grace of thy Lord thou art neither a soothsayer, nor a madman. |
| 052:029 Yusufali | : |
Therefore proclaim thou the praises (of thy Lord): for by the Grace of thy Lord, thou art no (vulgar) soothsayer, nor art thou one possessed. |
Concepts/Themes Covered: أركان الإسلام > (محمد (صلى الله عليه وسلم > أخلاقه وصفاته Pillars of Islam> The Blessed Muhammad(PBUH)> His Manners and Attributes أركان الإسلام > (محمد (صلى الله عليه وسلم > أقوال الكافرين فيه Pillars of Islam> The Blessed Muhammad(PBUH)> The Disbelievers' Tales About Him(PBUH) أركان الإسلام > (محمد (صلى الله عليه وسلم > تأييد رسالته Pillars of Islam> The Blessed Muhammad(PBUH)> Supporting his Message الإيمان > الأنبياء والرسل > أمرهم بالتذكير Faith> The Prophets and the Messengers of Allah> Order them to Praise Allah
This tool uses eight English parallel translations for the Holy Quran imported from Mr. Clay Smith. You can also visit Qurany Concepts for browsing the Quran themes or topics. If you want to search the Holy Quran for keywords, please visit Qurany Keywords.


(a) Electrochemical cell for soft X-ray XAS data collection in fluorescence and total electron yield modes. (b) Experimental O K-edge XAS spectra collected in total fluorescence yield (TFY) and total electron yield (TEY) modes. Reproduced from ref ( 84). Copyright 2014 AAAS.


See almost two hours of Overwatch 2 gameplay, PvP and PvE
by Jody MacgregorOne of several big announcements from BlizzCon 2019 so far is the reveal of Overwatch 2, which we've been told will apparently keep all of the original game's heroes, maps, modes and yes, even your skins, while adding PvE story missions, a new mode called Push, and some more heroes. BlizzCon attendees were told that Overwatch 2 would be playable right there at the show, and here's proof: Almost two hours of gameplay footage courtesy of YouTuber ohnickel.
There's been an engine upgrade, which means you'll see some improvements to character models and larger maps, but it's basically the same Overwatch fans love, expanded.
We'll have more info about Overwatch 2 tomorrow, when we get a closer look at it. Follow all our BlizzCon 2019 coverage here.