Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
a[1, i][1] *= -1
return a
np.random.seed(0)
a = np.empty([2, N, 2], dtype=float)
a[0, :] = -0.5 + np.random.random((N, 2)) # positions
a[1, :] = -0.5 + np.random.random((N, 2)) # velocities
a[0, :] *= (4 - 2*size)
dt = 1. / 30
step_numba = jit('f8[:,:,:](f8, f8, f8[:,:,:])')(step)
gr.setwindow(-2, 2, -2, 2)
gr.setviewport(0, 1, 0, 1)
gr.setmarkertype(gr.MARKERTYPE_SOLID_CIRCLE)
gr.setmarkersize(1.0)
start = time.time()
t0 = start
n = 0
t = 0
worker = 'CPython'
while t < 6:
if t > 3:
if worker == 'CPython':
t0 = now
n = 0
a = step_numba(dt, size, a)
"""
from numpy.random import uniform, seed
import numpy as np
import gr
seed(0)
xd = uniform(-2, 2, 100)
yd = uniform(-2, 2, 100)
zd = xd * np.exp(-xd**2 - yd**2)
gr.setviewport(0.1, 0.95, 0.1, 0.95)
gr.setwindow(-2, 2, -2, 2)
gr.setspace(-0.5, 0.5, 0, 90)
gr.setmarkersize(1)
gr.setmarkertype(gr.MARKERTYPE_SOLID_CIRCLE)
gr.setcharheight(0.024)
gr.settextalign(2, 0)
gr.settextfontprec(3, 0)
x, y, z = gr.gridit(xd, yd, zd, 200, 200)
h = np.linspace(-0.5, 0.5, 20)
gr.surface(x, y, z, 5)
gr.contour(x, y, h, z, 0)
gr.polymarker(xd, yd)
gr.axes(0.25, 0.25, -2, -2, 2, 2, 0.01)
gr.updatews()
logXinDomain = plot.logXinDomain()
logYinDomain = plot.logYinDomain()
if logXinDomain != self._logXinDomain:
self._logXinDomain = logXinDomain
self.logXinDomain.emit(self._logXinDomain)
if logYinDomain != self._logYinDomain:
self._logYinDomain = logYinDomain
self.logYinDomain.emit(self._logYinDomain)
if self._pickEvent:
event = self._pickEvent
gr.setviewport(*event.viewportscaled)
wcPoint = event.getWC(event.viewport)
window = gr.inqwindow()
gr.setwindow(*event.getWindow())
gr.setmarkertype(gr.MARKERTYPE_PLUS)
gr.polymarker([wcPoint.x], [wcPoint.y])
gr.setwindow(*window)
def pendulum(t, theta, omega, acceleration):
gr.clearws()
gr.setviewport(0, 1, 0, 1)
x = [0.5, 0.5 + sin(theta) * 0.4]
y = [0.8, 0.8 - cos(theta) * 0.4]
gr.fillarea(4, # draw pivot point
[0.46, 0.54, 0.54, 0.46], [0.79, 0.79, 0.81, 0.81])
gr.setlinecolorind(1)
gr.setlinewidth(2)
gr.polyline(2, x, y) # draw rod
gr.setmarkersize(5)
gr.setmarkertype(gr.MARKERTYPE_SOLID_CIRCLE)
gr.setmarkercolorind(86)
gr.polymarker(1, [x[1]], [y[1]]) # draw bob
gr.setlinecolorind(4)
V = 0.05 * omega # show angular velocity
gr.drawarrow(x[1], y[1], x[1] + V*cos(theta), y[1] + V*sin(theta))
gr.setlinecolorind(2)
A = 0.05 * acceleration # show angular acceleration
gr.drawarrow(x[1], y[1], x[1] + A*sin(theta), y[1] + A*cos(theta))
gr.settextfontprec(2, gr.TEXT_PRECISION_STRING)
gr.setcharheight(0.032)
gr.settextcolorind(1)
gr.textext(0.05, 0.95, 'Damped Pendulum')
gr.setcharheight(0.040)
gr.mathtex(0.4, 0.22, '\\omega=\\dot{\\theta}')
gr.mathtex(0.4, 0.1, '\\dot{\\omega}=-\\gamma\\omega-\\frac{g}{l}sin(\\theta)')
def pendulum(theta, length, mass):
l = length[0] + length[1]
gr.clearws()
gr.setviewport(0, 1, 0, 1)
gr.setwindow(-l, l, -l, l)
gr.setmarkertype(gr.MARKERTYPE_SOLID_CIRCLE)
gr.setmarkercolorind(86)
pivot = [0, 0.775] # draw pivot point
gr.fillarea(4, [-0.2, 0.2, 0.2, -0.2], [0.75, 0.75, 0.8, 0.8])
for i in range(2):
x = [pivot[0], pivot[0] + sin(theta[i]) * length[i]]
y = [pivot[1], pivot[1] - cos(theta[i]) * length[i]]
gr.polyline(2, x, y) # draw rod
gr.setmarkersize(3 * mass[i])
gr.polymarker(1, [x[1]], [y[1]]) # draw bob
pivot = [x[1], y[1]]
gr.updatews()
return
"""
import gr
from math import sin, cos, pi
import time
hor_align = {'Left':1, 'Center':2, 'Right':3}
vert_align = {'Top':1, 'Cap':2, 'Half':3, 'Base':4, 'Bottom':5}
gr.selntran(0)
gr.setcharheight(0.024)
for angle in range(361):
gr.setcharup(sin(-angle * pi/180), cos(-angle * pi/180))
gr.setmarkertype(2)
gr.clearws()
for halign in hor_align:
for valign in vert_align:
gr.settextalign(hor_align[halign], vert_align[valign])
x = -0.1 + hor_align[halign] * 0.3;
y = 1.1 - vert_align[valign] * 0.2;
s = halign + '\n' + valign + '\n' + 'third line'
gr.polymarker([x], [y])
gr.text(x, y, s)
tbx, tby = gr.inqtext(x, y, s)
gr.fillarea(tbx, tby)
gr.updatews()
time.sleep(0.02)
# preserve old values
ltype = gr.inqlinetype()
mtype = gr.inqmarkertype()
lcolor = gr.inqlinecolorind()
mcolor = gr.inqmarkercolorind()
lwidth = gr.inqlinewidth()
if self.linetype is not None and len(self.x) > 1:
gr.setlinecolorind(self.linecolor)
gr.setmarkercolorind(self.markercolor)
gr.setlinetype(self.linetype)
gr.setlinewidth(self.linewidth)
gr.polyline(self.x, self.y)
if (self.markertype != gr.MARKERTYPE_DOT and
self.markertype is not None):
gr.setmarkertype(self.markertype)
gr.polymarker(self.x, self.y)
elif self.markertype is not None:
gr.setmarkercolorind(self.markercolor)
gr.setmarkertype(self.markertype)
gr.polymarker(self.x, self.y)
if self.errorBar1:
self.errorBar1.drawGR()
if self.errorBar2:
self.errorBar2.drawGR()
# restore old values
gr.setlinecolorind(lcolor)
gr.setmarkercolorind(mcolor)
gr.setlinetype(ltype)
gr.setmarkertype(mtype)
gr.setlinewidth(lwidth)
# propagate update (calls setter)
self.viewport = vp
redraw = True
break
gr.setmarkertype(curve.markertype)
gr.setmarkercolorind(curve.markercolor)
ys = y * self.sizey # scaled y value
if curve.linetype is not None:
gr.setlinecolorind(curve.linecolor)
gr.setmarkercolorind(curve.markercolor)
gr.setlinetype(curve.linetype)
gr.setlinewidth(curve.linewidth)
gr.polyline([x, x + lineWidth], [ys, ys])
if (curve.markertype != gr.MARKERTYPE_DOT
and curve.markertype is not None):
gr.setmarkertype(curve.markertype)
gr.polymarker([x + lineWidth / 2.], [ys])
elif curve.markertype is not None:
gr.setmarkertype(curve.markertype)
gr.polymarker([x + lineWidth / 2.], [ys])
ybase = (y - charHeightUnscaled / 2) * self.sizey
ytop = (y + charHeightUnscaled / 2) * self.sizey
roi = RegionOfInterest(Point(x, ybase),
Point(x, ytop),
reference=curve,
regionType=RegionOfInterest.LEGEND)
x += lineWidth + .01
if curve.visible:
gr.settextcolorind(1)
else:
gr.settextcolorind(83)