The following are code examples for showing how to use . They are extracted from open source Python projects. You can vote up the examples you like or vote down the exmaples you don’t like. You can also save this page to your account.
Example 1
def get_polar_t(self): mag = self.get_magnitude() sizeimg = np.real(self.imgfft).shape pol = np.zeros(sizeimg) for x in range(sizeimg[0]): for y in range(sizeimg[1]): my = y - sizeimg[1] / 2 mx = x - sizeimg[0] / 2 if mx != 0: phi = np.arctan(my / float(mx)) else: phi = 0 r = np.sqrt(mx**2 + my **2) ix = map_range(phi, -np.pi, np.pi, sizeimg[0], 0) iy = map_range(r, 0, sizeimg[0], 0, sizeimg[1]) if ix >= 0 and ix < sizeimg[0] and iy >= 0 and iy < sizeimg[1]: pol[x][y] = mag.data[int(ix)][int(iy)] pol = MyImage(pol) pol.limit(1) return pol
Example 2
def calc_IndCurrent_cos_range(self,f,t): """Induced current over a range of times""" Bpx = self.Bpx Bpz = self.Bpz a2 = self.a2 azm = np.pi*self.azm/180. R = self.R L = self.L w = 2*np.pi*f Ax = np.pi*a2**2*np.sin(azm) Az = np.pi*a2**2*np.cos(azm) Phi = (Ax*Bpx + Az*Bpz) phi = np.arctan(R/(w*L))-np.pi # This is the phase and not phase lag Is = -(w*Phi/(R*np.sin(phi) + w*L*np.cos(phi)))*np.cos(w*t + phi) Ire = -(w*Phi/(R*np.sin(phi) + w*L*np.cos(phi)))*np.cos(w*t)*np.cos(phi) Iim = (w*Phi/(R*np.sin(phi) + w*L*np.cos(phi)))*np.sin(w*t)*np.sin(phi) return Ire,Iim,Is,phi
Example 3
def test_branch_cuts_complex64(self): # check branch cuts and continuity on them yield _check_branch_cut, np.log, -0.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.log2, -0.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.log10, -0.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.log1p, -1.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.sqrt, -0.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.arcsin, [ -2, 2], [1j, 1j], 1, -1, True, np.complex64 yield _check_branch_cut, np.arccos, [ -2, 2], [1j, 1j], 1, -1, True, np.complex64 yield _check_branch_cut, np.arctan, [0-2j, 2j], [1, 1], -1, 1, True, np.complex64 yield _check_branch_cut, np.arcsinh, [0-2j, 2j], [1, 1], -1, 1, True, np.complex64 yield _check_branch_cut, np.arccosh, [ -1, 0.5], [1j, 1j], 1, -1, True, np.complex64 yield _check_branch_cut, np.arctanh, [ -2, 2], [1j, 1j], 1, -1, True, np.complex64 # check against bogus branch cuts: assert continuity between quadrants yield _check_branch_cut, np.arcsin, [0-2j, 2j], [ 1, 1], 1, 1, False, np.complex64 yield _check_branch_cut, np.arccos, [0-2j, 2j], [ 1, 1], 1, 1, False, np.complex64 yield _check_branch_cut, np.arctan, [ -2, 2], [1j, 1j], 1, 1, False, np.complex64 yield _check_branch_cut, np.arcsinh, [ -2, 2, 0], [1j, 1j, 1], 1, 1, False, np.complex64 yield _check_branch_cut, np.arccosh, [0-2j, 2j, 2], [1, 1, 1j], 1, 1, False, np.complex64 yield _check_branch_cut, np.arctanh, [0-2j, 2j, 0], [1, 1, 1j], 1, 1, False, np.complex64
Example 4
def test_against_cmath(self): import cmath points = [-1-1j, -1+1j, +1-1j, +1+1j] name_map = {'arcsin': 'asin', 'arccos': 'acos', 'arctan': 'atan', 'arcsinh': 'asinh', 'arccosh': 'acosh', 'arctanh': 'atanh'} atol = 4*np.finfo(np.complex).eps for func in self.funcs: fname = func.__name__.split('.')[-1] cname = name_map.get(fname, fname) try: cfunc = getattr(cmath, cname) except AttributeError: continue for p in points: a = complex(func(np.complex_(p))) b = cfunc(p) assert_(abs(a - b) < atol, "%s %s: %s; cmath: %s" % (fname, p, a, b))
Example 5
def effect(self, point): res = [] # print(self.centers) for center in self.centers: center_x, center_y = center src_x, src_y = point.pos # Check angle angle = np.arctan((center_x - src_x) / (center_y - src_y)) if np.abs(angle) > self.angle / 2: continue angle = np.deg2rad(90) + angle u_len = np.sqrt((center_x - src_x) ** 2 + (center_y - src_y) ** 2) reverse_v = (self.r_index - 1) / self.radius - self.r_index / u_len v_len = 1 / reverse_v if v_len > 0: p_type = 'real' else: p_type = 'fake' target = line_end(point.pos, angle, u_len + v_len) p = Point(target, p_type, 1) # point.passed.append(self) res.append(p) return tuple(res)
Example 6
def _radian_direction(dy,dx): ''' function: - based on given dy and dx it calculates direction in radian. - used in feature_eng_pt3 input: dy = change in y dx = change in x output: returns radian value (0 to 6.28) ''' if dy < 0.0 and dx > 0.0: return (2*np.pi + np.arctan(dy/dx)) elif dy >=0.0 and dx > 0.0: return (np.arctan(dy/dx)) else: return np.pi + np.arctan(dy/dx)
Example 7
def flow(self, Kc, Ks, Kz, Ka, numexpr): zeros = np.zeros where = np.where min = np.minimum max = np.maximum abs = np.absolute arctan = np.arctan sin = np.sin center = (slice( 1, -1,None),slice( 1, -1,None)) rock = self.center ds = self.scour[center] rcc = rock[center] rock[center] = rcc - ds * Kz # there isn't really a bottom to the rock but negative values look ugly rock[center] = where(rcc<0,0,rcc)
Example 8
def fixOffset(self, offset, img): size = img.shape finalImg = np.ndarray(size) indices = np.indices((self.videoSize[0],self.videoSize[1])).swapaxes(0,2).swapaxes(0,1) indices = np.around(indices, decimals=1) indices.shape = (self.videoSize[1] * self.videoSize[0], 2) phi = 2 * np.arctan(np.exp(indices[:, 1] / self.videoSize[1])) - 1/2 * np.pi - offset[0] lamb = indices[:, 0] - offset[1] x = lamb y = np.log(np.tan(np.pi / 4 + 1/2 * phi)) * self.videoSize[1] finalIdx = np.ndarray((self.videoSize[1] * self.videoSize[0], 2)) finalIdx = np.around(finalIdx, decimals=1).astype(int) finalIdx[:, 1] = y % self.videoSize[1] finalIdx[:, 0] = x % self.videoSize[0] finalImg[indices[:,1], indices[:,0]] = img[finalIdx[:,1], finalIdx[:,0]] return finalImg
Example 9
def _dip_slip_y(self, y1, y2, ang_dip, q): """ Based on Okada's paper (1985) y = down-dip direction """ sn = numpy.sin(ang_dip) cs = numpy.cos(ang_dip) d_bar = y2*sn - q*cs; r = numpy.sqrt(y1**2 + y2**2 + q**2) xx = numpy.sqrt(y1**2 + q**2) y_bar = y2*cs + q*sn a5 = 4.*poisson/cs*numpy.arctan((y2*(xx+q*cs)+xx*(r+xx)*sn)/y1/(r+xx)/cs) a1 = 2.0*poisson*(-y1/(cs*(r+d_bar))) - sn/cs * a5 f = -(y_bar*q/r/(r+y1) + cs*numpy.arctan(y1*y2/q/r) - a1*sn*cs)/(2.0*3.14159) return f
Example 10
def _dip_slip_x(self, y1, y2, ang_dip, q): """ Based on Okada's paper (1985) Added by Xiaoming Wang """ sn = numpy.sin(ang_dip) cs = numpy.cos(ang_dip) d_bar = y2*sn - q*cs; r = numpy.sqrt(y1**2 + y2**2 + q**2) xx = numpy.sqrt(y1**2 + q**2) #a5 = 4.*poisson/cs*numpy.arctan((y2*(xx+q*cs)+xx*(r+xx)*sn)/y1/(r+xx)/cs) a4 = 2.0*poisson/cs*(numpy.log(r+d_bar) - sn*numpy.log(r+y2)) ytilde = y2*cs + q*sn a3 = 2.0*poisson*(ytilde/(cs*(r+d_bar)) - numpy.log(r+y2)) + a4*sn/cs f = -(q/r - a3*sn*cs)/(2.0*3.14159) return f
Example 11
def _dip_slip_x(self, y1, y2, ang_dip, q): """ Based on Okada's paper (1985) Added by Xiaoming Wang """ sn = numpy.sin(ang_dip) cs = numpy.cos(ang_dip) d_bar = y2*sn - q*cs; r = numpy.sqrt(y1**2 + y2**2 + q**2) xx = numpy.sqrt(y1**2 + q**2) #a5 = 4.*poisson/cs*numpy.arctan((y2*(xx+q*cs)+xx*(r+xx)*sn)/y1/(r+xx)/cs) a4 = 2.0*poisson/cs*(numpy.log(r+d_bar) - sn*numpy.log(r+y2)) ytilde = y2*cs + q*sn a3 = 2.0*poisson*(ytilde/(cs*(r+d_bar)) - numpy.log(r+y2)) + a4*sn/cs f = -(q/r - a3*sn*cs)/(2.0*3.14159) return f
Example 12
def get_q_per_pixel(self): '''Gets the delta-q associated with a single pixel. This is computed in the small-angle limit, so it should only be considered approximate. For instance, wide-angle detectors will have different delta-q across the detector face.''' if self.q_per_pixel is not None: return self.q_per_pixel c = (self.pixel_size_um/1e6)/self.distance_m twotheta = np.arctan(c) # radians self.q_per_pixel = 2.0*self.get_k()*np.sin(twotheta/2.0) return self.q_per_pixel # Maps ########################################
Example 13
def reset_model(self): self._min_strike_dist = np.inf self._striked = False self._strike_pos = None qpos = self.init_qpos self.ball = np.array([0.5, -0.175]) while True: self.goal = np.concatenate([ self.np_random.uniform(low=0.15, high=0.7, size=1), self.np_random.uniform(low=0.1, high=1.0, size=1)]) if np.linalg.norm(self.ball - self.goal) > 0.17: break qpos[-9:-7] = [self.ball[1], self.ball[0]] qpos[-7:-5] = self.goal diff = self.ball - self.goal angle = -np.arctan(diff[0] / (diff[1] + 1e-8)) qpos[-1] = angle / 3.14 qvel = self.init_qvel + self.np_random.uniform(low=-.1, high=.1, size=self.model.nv) qvel[7:] = 0 self.set_state(qpos, qvel) return self._get_obs()
Example 14
def test_branch_cuts_complex64(self): # check branch cuts and continuity on them yield _check_branch_cut, np.log, -0.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.log2, -0.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.log10, -0.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.log1p, -1.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.sqrt, -0.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.arcsin, [ -2, 2], [1j, 1j], 1, -1, True, np.complex64 yield _check_branch_cut, np.arccos, [ -2, 2], [1j, 1j], 1, -1, True, np.complex64 yield _check_branch_cut, np.arctan, [0-2j, 2j], [1, 1], -1, 1, True, np.complex64 yield _check_branch_cut, np.arcsinh, [0-2j, 2j], [1, 1], -1, 1, True, np.complex64 yield _check_branch_cut, np.arccosh, [ -1, 0.5], [1j, 1j], 1, -1, True, np.complex64 yield _check_branch_cut, np.arctanh, [ -2, 2], [1j, 1j], 1, -1, True, np.complex64 # check against bogus branch cuts: assert continuity between quadrants yield _check_branch_cut, np.arcsin, [0-2j, 2j], [ 1, 1], 1, 1, False, np.complex64 yield _check_branch_cut, np.arccos, [0-2j, 2j], [ 1, 1], 1, 1, False, np.complex64 yield _check_branch_cut, np.arctan, [ -2, 2], [1j, 1j], 1, 1, False, np.complex64 yield _check_branch_cut, np.arcsinh, [ -2, 2, 0], [1j, 1j, 1], 1, 1, False, np.complex64 yield _check_branch_cut, np.arccosh, [0-2j, 2j, 2], [1, 1, 1j], 1, 1, False, np.complex64 yield _check_branch_cut, np.arctanh, [0-2j, 2j, 0], [1, 1, 1j], 1, 1, False, np.complex64
Example 15
def test_against_cmath(self): import cmath points = [-1-1j, -1+1j, +1-1j, +1+1j] name_map = {'arcsin': 'asin', 'arccos': 'acos', 'arctan': 'atan', 'arcsinh': 'asinh', 'arccosh': 'acosh', 'arctanh': 'atanh'} atol = 4*np.finfo(np.complex).eps for func in self.funcs: fname = func.__name__.split('.')[-1] cname = name_map.get(fname, fname) try: cfunc = getattr(cmath, cname) except AttributeError: continue for p in points: a = complex(func(np.complex_(p))) b = cfunc(p) assert_(abs(a - b) < atol, "%s %s: %s; cmath: %s" % (fname, p, a, b))
Example 16
def angularpixelarea(self): # get the first instrument element instruments = self.tree.xpath("//instruments/*[1]") if len(instruments) != 1: raise ValueError("No instruments in ski file") instrument = instruments[0] # get the distance in m d = self.units().convert(instrument.get("distance"), to_unit='m', quantity='distance') # get the field of view in m fovx = self.units().convert(instrument.get("fieldOfViewX"), to_unit='m', quantity='length') fovy = self.units().convert(instrument.get("fieldOfViewY"), to_unit='m', quantity='length') # get the number of pixels nx = int(instrument.get("pixelsX")) ny = int(instrument.get("pixelsY")) # calculate the angular pixel area sx = 2 * arctan(fovx / nx / d / 2) sy = 2 * arctan(fovy / ny / d / 2) return sx * sy ## This function returns a list of instrument names, in order of occurrence in the ski file.
Example 17
def orientation_angle(self): """ This function ... :return: """ diag_a = self.pixel_scale_matrix[0,1] diag_b = self.pixel_scale_matrix[1,0] if not np.isclose(diag_a, diag_b, rtol=0.05): warnings.warn("The diagonal elements of the pixel scale matrix are not equal: " + repr(diag_a) + " and " + repr(diag_b)) first = self.pixel_scale_matrix[0,0] radians = np.arctan(diag_a / first) degrees = radians / math.pi * 180. return Angle(degrees, "deg") # -----------------------------------------------------------------
Example 18
def angularpixelarea(self): # get the first instrument element instruments = self.tree.xpath("//instruments/*[1]") if len(instruments) != 1: raise ValueError("No instruments in ski file") instrument = instruments[0] # get the distance in m d = self.units().convert(instrument.get("distance"), to_unit='m', quantity='distance') # get the field of view in m fovx = self.units().convert(instrument.get("fieldOfViewX"), to_unit='m', quantity='length') fovy = self.units().convert(instrument.get("fieldOfViewY"), to_unit='m', quantity='length') # get the number of pixels nx = int(instrument.get("pixelsX")) ny = int(instrument.get("pixelsY")) # calculate the angular pixel area sx = 2 * arctan(fovx / nx / d / 2) sy = 2 * arctan(fovy / ny / d / 2) return sx * sy ## This function returns a list of instrument names, in order of occurrence in the ski file.
Example 19
def orientation_angle(self): """ This function ... :return: """ diag_a = self.pixel_scale_matrix[0,1] diag_b = self.pixel_scale_matrix[1,0] if not np.isclose(diag_a, diag_b, rtol=0.05): warnings.warn("The diagonal elements of the pixel scale matrix are not equal: " + repr(diag_a) + " and " + repr(diag_b)) first = self.pixel_scale_matrix[0,0] radians = np.arctan(diag_a / first) degrees = radians / math.pi * 180. return Angle(degrees, "deg") # -----------------------------------------------------------------
Example 20
def conferenceWakeOverlap(X, Y, R): n = np.size(X) # theta = np.zeros((n, n), dtype=np.float) # angle of wake from fulcrum f_theta = np.zeros((n, n), dtype=np.float) # smoothing values for smoothing for i in range(0, n): for j in range(0, n): if X[i] < X[j]: z = R/np.tan(0.34906585) # print z theta = np.arctan((Y[j] - Y[i]) / (X[j] - X[i] + z)) # print 'theta =', theta if -0.34906585 < theta < 0.34906585: f_theta[i][j] = (1 + np.cos(9*theta))/2 # print f_theta # print z # print f_theta return f_theta
Example 21
def conferenceWakeOverlap_tune(X, Y, R, boundAngle): n = np.size(X) boundAngle = boundAngle*np.pi/180.0 # theta = np.zeros((n, n), dtype=np.float) # angle of wake from fulcrum f_theta = np.zeros((n, n), dtype=np.float) # smoothing values for smoothing q = np.pi/boundAngle # factor inside the cos term of the smooth Jensen (see Jensen1983 eq.(3)) # print 'boundAngle = %s' %boundAngle, 'q = %s' %q for i in range(0, n): for j in range(0, n): if X[i] < X[j]: # z = R/tan(0.34906585) z = R/np.tan(boundAngle) # distance from fulcrum to wake producing turbine # print z theta = np.arctan((Y[j] - Y[i]) / (X[j] - X[i] + z)) # print 'theta =', theta if -boundAngle < theta < boundAngle: f_theta[i][j] = (1. + np.cos(q*theta))/2. # print f_theta # print z # print f_theta return f_theta
Example 22
def get_cosine_factor_original(X, Y, R0, bound_angle=20.0): n = np.size(X) bound_angle = bound_angle*np.pi/180.0 # theta = np.zeros((n, n), dtype=np.float) # angle of wake from fulcrum f_theta = np.zeros((n, n), dtype=np.float) # smoothing values for smoothing q = np.pi/bound_angle # factor inside the cos term of the smooth Jensen (see Jensen1983 eq.(3)) for i in range(0, n): for j in range(0, n): if X[i] < X[j]: z = R0/np.tan(bound_angle) # distance from fulcrum to wake producing turbine theta = np.arctan((Y[j] - Y[i]) / (X[j] - X[i] + z)) if -bound_angle < theta < bound_angle: f_theta[i][j] = (1. + np.cos(q*theta))/2. return f_theta
Example 23
def rotate(self,rotation_method='RTZ'): #################################################################################### #rotate------------------------------------------------------------------------- for i in range(0,len(self.rf_st)): self.rf_st[i].stats.back_azimuth = self.tr_e.stats.sac['baz'] self.rf_st.rotate(method='NE->RT') if rotation_method == 'LQT': r_amp = np.amax(np.amax(self.rf_st[1].data)) z_amp = np.amax(np.amax(self.rf_st[2].data)) incidence_angle = np.arctan(r_amp/z_amp) * (180.0/np.pi) for i in range(0,len(self.rf_st)): self.rf_st[i].stats.inclination = incidence_angle self.rf_st.rotate(method='RT->NE') self.rf_st.rotate(method='ZNE->LQT') ####################################################################################
Example 24
def test_branch_cuts(self): # check branch cuts and continuity on them yield _check_branch_cut, np.log, -0.5, 1j, 1, -1, True yield _check_branch_cut, np.log2, -0.5, 1j, 1, -1, True yield _check_branch_cut, np.log10, -0.5, 1j, 1, -1, True yield _check_branch_cut, np.log1p, -1.5, 1j, 1, -1, True yield _check_branch_cut, np.sqrt, -0.5, 1j, 1, -1, True yield _check_branch_cut, np.arcsin, [ -2, 2], [1j, 1j], 1, -1, True yield _check_branch_cut, np.arccos, [ -2, 2], [1j, 1j], 1, -1, True yield _check_branch_cut, np.arctan, [0-2j, 2j], [1, 1], -1, 1, True yield _check_branch_cut, np.arcsinh, [0-2j, 2j], [1, 1], -1, 1, True yield _check_branch_cut, np.arccosh, [ -1, 0.5], [1j, 1j], 1, -1, True yield _check_branch_cut, np.arctanh, [ -2, 2], [1j, 1j], 1, -1, True # check against bogus branch cuts: assert continuity between quadrants yield _check_branch_cut, np.arcsin, [0-2j, 2j], [ 1, 1], 1, 1 yield _check_branch_cut, np.arccos, [0-2j, 2j], [ 1, 1], 1, 1 yield _check_branch_cut, np.arctan, [ -2, 2], [1j, 1j], 1, 1 yield _check_branch_cut, np.arcsinh, [ -2, 2, 0], [1j, 1j, 1], 1, 1 yield _check_branch_cut, np.arccosh, [0-2j, 2j, 2], [1, 1, 1j], 1, 1 yield _check_branch_cut, np.arctanh, [0-2j, 2j, 0], [1, 1, 1j], 1, 1
Example 25
def test_branch_cuts_complex64(self): # check branch cuts and continuity on them yield _check_branch_cut, np.log, -0.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.log2, -0.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.log10, -0.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.log1p, -1.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.sqrt, -0.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.arcsin, [ -2, 2], [1j, 1j], 1, -1, True, np.complex64 yield _check_branch_cut, np.arccos, [ -2, 2], [1j, 1j], 1, -1, True, np.complex64 yield _check_branch_cut, np.arctan, [0-2j, 2j], [1, 1], -1, 1, True, np.complex64 yield _check_branch_cut, np.arcsinh, [0-2j, 2j], [1, 1], -1, 1, True, np.complex64 yield _check_branch_cut, np.arccosh, [ -1, 0.5], [1j, 1j], 1, -1, True, np.complex64 yield _check_branch_cut, np.arctanh, [ -2, 2], [1j, 1j], 1, -1, True, np.complex64 # check against bogus branch cuts: assert continuity between quadrants yield _check_branch_cut, np.arcsin, [0-2j, 2j], [ 1, 1], 1, 1, False, np.complex64 yield _check_branch_cut, np.arccos, [0-2j, 2j], [ 1, 1], 1, 1, False, np.complex64 yield _check_branch_cut, np.arctan, [ -2, 2], [1j, 1j], 1, 1, False, np.complex64 yield _check_branch_cut, np.arcsinh, [ -2, 2, 0], [1j, 1j, 1], 1, 1, False, np.complex64 yield _check_branch_cut, np.arccosh, [0-2j, 2j, 2], [1, 1, 1j], 1, 1, False, np.complex64 yield _check_branch_cut, np.arctanh, [0-2j, 2j, 0], [1, 1, 1j], 1, 1, False, np.complex64
Example 26
def test_against_cmath(self): import cmath points = [-1-1j, -1+1j, +1-1j, +1+1j] name_map = {'arcsin': 'asin', 'arccos': 'acos', 'arctan': 'atan', 'arcsinh': 'asinh', 'arccosh': 'acosh', 'arctanh': 'atanh'} atol = 4*np.finfo(np.complex).eps for func in self.funcs: fname = func.__name__.split('.')[-1] cname = name_map.get(fname, fname) try: cfunc = getattr(cmath, cname) except AttributeError: continue for p in points: a = complex(func(np.complex_(p))) b = cfunc(p) assert_(abs(a - b) < atol, "%s %s: %s; cmath: %s" % (fname, p, a, b))
Example 27
def test_branch_cuts_complex64(self): # check branch cuts and continuity on them yield _check_branch_cut, np.log, -0.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.log2, -0.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.log10, -0.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.log1p, -1.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.sqrt, -0.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.arcsin, [ -2, 2], [1j, 1j], 1, -1, True, np.complex64 yield _check_branch_cut, np.arccos, [ -2, 2], [1j, 1j], 1, -1, True, np.complex64 yield _check_branch_cut, np.arctan, [0-2j, 2j], [1, 1], -1, 1, True, np.complex64 yield _check_branch_cut, np.arcsinh, [0-2j, 2j], [1, 1], -1, 1, True, np.complex64 yield _check_branch_cut, np.arccosh, [ -1, 0.5], [1j, 1j], 1, -1, True, np.complex64 yield _check_branch_cut, np.arctanh, [ -2, 2], [1j, 1j], 1, -1, True, np.complex64 # check against bogus branch cuts: assert continuity between quadrants yield _check_branch_cut, np.arcsin, [0-2j, 2j], [ 1, 1], 1, 1, False, np.complex64 yield _check_branch_cut, np.arccos, [0-2j, 2j], [ 1, 1], 1, 1, False, np.complex64 yield _check_branch_cut, np.arctan, [ -2, 2], [1j, 1j], 1, 1, False, np.complex64 yield _check_branch_cut, np.arcsinh, [ -2, 2, 0], [1j, 1j, 1], 1, 1, False, np.complex64 yield _check_branch_cut, np.arccosh, [0-2j, 2j, 2], [1, 1, 1j], 1, 1, False, np.complex64 yield _check_branch_cut, np.arctanh, [0-2j, 2j, 0], [1, 1, 1j], 1, 1, False, np.complex64
Example 28
def test_against_cmath(self): import cmath points = [-1-1j, -1+1j, +1-1j, +1+1j] name_map = {'arcsin': 'asin', 'arccos': 'acos', 'arctan': 'atan', 'arcsinh': 'asinh', 'arccosh': 'acosh', 'arctanh': 'atanh'} atol = 4*np.finfo(np.complex).eps for func in self.funcs: fname = func.__name__.split('.')[-1] cname = name_map.get(fname, fname) try: cfunc = getattr(cmath, cname) except AttributeError: continue for p in points: a = complex(func(np.complex_(p))) b = cfunc(p) assert_(abs(a - b) < atol, "%s %s: %s; cmath: %s" % (fname, p, a, b))
Example 29
def arrow(img,p1,p2): cv2.line(s1,p1,p2,(100,255,100),thickness=2) cv2.line(s2,p1,p2,(100,255,100),thickness=2) dy,dx= np.array(p2)-np.array(p1) theta= np.arctan(dy/dx) + (0 if dx>0 else np.pi) if dx!=0 else (1 if dy>0 else -1) * np.pi/2 phy1=theta+ np.pi*7/6 phy2=theta+ np.pi*5/6 R=0.4*np.linalg.norm([dx,dy]) dx1,dx2= (R*np.cos([phy1,phy2])).astype(np.int) dy1,dy2= (R*np.sin([phy1,phy2])).astype(np.int) if R<=2:return Y1,X1=p1 Y2,X2=p2 cv2.line(s1,(dy1+Y2,dx1+X2),p2,(100,255,100),thickness=1) cv2.line(s1,(dy2+Y2,dx2+X2),p2,(100,255,100),thickness=1) cv2.line(s2,(dy1+Y2,dx1+X2),p2,(100,255,100),thickness=1) cv2.line(s2,(dy2+Y2,dx2+X2),p2,(100,255,100),thickness=1) #????????????????
Example 30
def convertToOpenGLCameraMatrix(K, framebufferSize, near, far): """ Convert a camera calibration matrix into OpenGL format. """ width, height = framebufferSize # print 'framebufferSize:', framebufferSize fx = K[0,0] fy = K[1,1] fovy = 2*np.arctan(0.5*height/fy)#*180/np.pi aspect = (width*fy)/(height*fx) # define the near and far clipping planes # near = 0.1 # far = 100.0 # fx = 10.0 # fy = 10.0 # fovy = 90*(np.pi/180.0) # aspect = (width*fy)/(height*fx) proj = openGLPerspectiveMatrix(fovy,aspect,near,far) return proj
Example 31
def test_auto_size_bits_list(): pytest.skip() a = [0.5, 1.2, 3.2] b = Sfix.auto_size(a, 18) for x, y in zip(a, b): np.isclose(y.val, x) assert y.left == 2 assert y.right == -15 a = [np.arctan(2 ** -i) for i in range(8)] b = Sfix.auto_size(a, 18) for x, y in zip(a, b): np.isclose(y.val, x) assert y.left == 0 assert y.right == -17 a = [np.arctan(2 ** -i) for i in range(8, 12)] b = Sfix.auto_size(a, 18) for x, y in zip(a, b): np.isclose(y.val, x) assert y.left == -8 assert y.right == -25
Example 32
def load(self, ips): if ips.imgtype in ('8-bit', 'rgb'): self.para = {'bright':0, 'contrast':45} self.view = [('slide', (-100,100), 'Brightness', 'bright', ''), ('slide', (1,89), 'Contrast', 'contrast', '')] if 'not_slice' in self.note: self.note.remove('not_slice') else : self.arange = minv, maxv = ips.img.min(), ips.img.max() self.para = {'bright':np.mean(ips.range) - np.mean(self.arange), 'contrast':round(np.arctan((maxv-minv)/(ips.range[1]-ips.range[0]))/np.pi*180)} self.view = [('slide', (-(maxv-minv)/2, (maxv-minv)/2), 'Brightness', 'bright', ''), ('slide', (1,89), 'Contrast', 'contrast', '')] if not 'not_slice' in self.note: self.note.append('not_slice') return True
Example 33
def reset_model(self): self._min_strike_dist = np.inf self._striked = False self._strike_pos = None qpos = self.init_qpos self.ball = np.array([0.5, -0.175]) while True: self.goal = np.concatenate([ self.np_random.uniform(low=0.15, high=0.7, size=1), self.np_random.uniform(low=0.1, high=1.0, size=1)]) if np.linalg.norm(self.ball - self.goal) > 0.17: break qpos[-9:-7] = [self.ball[1], self.ball[0]] qpos[-7:-5] = self.goal diff = self.ball - self.goal angle = -np.arctan(diff[0] / (diff[1] + 1e-8)) qpos[-1] = angle / 3.14 qvel = self.init_qvel + self.np_random.uniform(low=-.1, high=.1, size=self.model.nv) qvel[7:] = 0 self.set_state(qpos, qvel) return self._get_obs()
Example 34
def FitPCA(self, hPCA_Proj): ''' Determine the timing of the inflation event. Uses the first component of the pca projection and fits A * arctan( (t - t0) / c ) + B to the first pca projection. @param hPCA_Proj: The sklearn PCA projection @return [t0, c] ''' fitfunc = lambda p,t: p[0]*np.arctan((t-p[1])/p[2])+p[3] errfunc = lambda p,x,y: fitfunc(p,x) - y dLen = len(hPCA_Proj[:,0]) pA, success = optimize.leastsq(errfunc,[1.,dLen/2.,1.,0.],args=(np.arange(dLen),hPCA_Proj[:,0])) ct = pA[1:3] return ct, pA[0]
Example 35
def FitPCA(self, hPCA_Proj): ''' Determine the timing of the inflation event from the first component of the pca projection fits A * arctan( (t - t0) / c ) + B to the first pca projection, in order to estimate source amplitude parameters @param hPCA_Proj: The sklearn PCA @return ct: the t0, c, and B parameters from the fit @return pA[0]: the fitted amplitude parameter ''' fitfunc = lambda p,t: p[0]*np.arctan((t-p[1])/p[2])+p[3] errfunc = lambda p,x,y: fitfunc(p,x) - y dLen = len(hPCA_Proj[:,0]) pA, success = optimize.leastsq(errfunc,[1.,dLen/2.,1.,0.],args=(np.arange(dLen),hPCA_Proj[:,0])) ct = pA[1:3] return ct, pA[0]
Example 36
def test_branch_cuts_complex64(self): # check branch cuts and continuity on them yield _check_branch_cut, np.log, -0.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.log2, -0.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.log10, -0.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.log1p, -1.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.sqrt, -0.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.arcsin, [ -2, 2], [1j, 1j], 1, -1, True, np.complex64 yield _check_branch_cut, np.arccos, [ -2, 2], [1j, 1j], 1, -1, True, np.complex64 yield _check_branch_cut, np.arctan, [0-2j, 2j], [1, 1], -1, 1, True, np.complex64 yield _check_branch_cut, np.arcsinh, [0-2j, 2j], [1, 1], -1, 1, True, np.complex64 yield _check_branch_cut, np.arccosh, [ -1, 0.5], [1j, 1j], 1, -1, True, np.complex64 yield _check_branch_cut, np.arctanh, [ -2, 2], [1j, 1j], 1, -1, True, np.complex64 # check against bogus branch cuts: assert continuity between quadrants yield _check_branch_cut, np.arcsin, [0-2j, 2j], [ 1, 1], 1, 1, False, np.complex64 yield _check_branch_cut, np.arccos, [0-2j, 2j], [ 1, 1], 1, 1, False, np.complex64 yield _check_branch_cut, np.arctan, [ -2, 2], [1j, 1j], 1, 1, False, np.complex64 yield _check_branch_cut, np.arcsinh, [ -2, 2, 0], [1j, 1j, 1], 1, 1, False, np.complex64 yield _check_branch_cut, np.arccosh, [0-2j, 2j, 2], [1, 1, 1j], 1, 1, False, np.complex64 yield _check_branch_cut, np.arctanh, [0-2j, 2j, 0], [1, 1, 1j], 1, 1, False, np.complex64
Example 37
def test_against_cmath(self): import cmath points = [-1-1j, -1+1j, +1-1j, +1+1j] name_map = {'arcsin': 'asin', 'arccos': 'acos', 'arctan': 'atan', 'arcsinh': 'asinh', 'arccosh': 'acosh', 'arctanh': 'atanh'} atol = 4*np.finfo(np.complex).eps for func in self.funcs: fname = func.__name__.split('.')[-1] cname = name_map.get(fname, fname) try: cfunc = getattr(cmath, cname) except AttributeError: continue for p in points: a = complex(func(np.complex_(p))) b = cfunc(p) assert_(abs(a - b) < atol, "%s %s: %s; cmath: %s" % (fname, p, a, b))
Example 38
def compute_pd_control(self): if self.received_data: # given the computed wall slope, compute theta, avoid divide by zero error if np.abs(self.m) < EPSILON: theta = np.pi / 2.0 x_intercept = 0 else: theta = np.arctan(1.0/self.m) # solve for y=0 in y=mx+c x_intercept = self.c / self.m # x axis is perp. to robot but not perpindicular to wall # cosine term solves for minimum distance to wall wall_dist = np.abs(np.cos(theta)*x_intercept) # control proportional to angular error and distance from wall distance_term = self.direction_muliplier * KP * (wall_dist - TARGET_DISTANCE) angle_term = KD * theta control = angle_term + distance_term # avoid turning too sharply self.control = (np.clip(control, -0.3, 0.3), SPEED)
Example 39
def rotate_image(img_src, angle,scale ,crop=True): img_src,size_dest= pad_image(img_src,scale) size = tuple(np.array([img_src.shape[1], img_src.shape[0]])) org_h=size[1] org_w=size[0] src_r = np.sqrt((size[0]/2.0)**2+(size[1]/2.0)**2) org_angle =np.arctan(float(org_h)/org_w) dest_h = size_dest[0] dest_w = size_dest[1] center = tuple(np.array([img_src.shape[1] * 0.5, img_src.shape[0] * 0.5])) dsize= (dest_w,dest_h) rotation_matrix = cv2.getRotationMatrix2D(center, angle, scale) img_rot = cv2.warpAffine(img_src, rotation_matrix, size, flags=cv2.INTER_CUBIC) if crop: x,y,w,h = cv2.boundingRect(img_rot[:,:,3]) return img_rot[y:y+h, x:x+w,:] else: return img_rot
Example 40
def rotate_image(img_src, angle,scale ): img_src,size_dest= pad_image(img_src,scale) size = tuple(np.array([img_src.shape[1], img_src.shape[0]])) org_h=size[1] org_w=size[0] src_r = np.sqrt((size[0]/2.0)**2+(size[1]/2.0)**2) org_angle =np.arctan(float(org_h)/org_w) dest_h = size_dest[0] dest_w = size_dest[1] center = tuple(np.array([img_src.shape[1] * 0.5, img_src.shape[0] * 0.5])) dsize= (dest_w,dest_h) rotation_matrix = cv2.getRotationMatrix2D(center, angle, scale) img_rot = cv2.warpAffine(img_src, rotation_matrix, size, flags=cv2.INTER_CUBIC) x,y,w,h = cv2.boundingRect(img_rot[:,:,3]) return img_rot[y:y+h, x:x+w,:]
Example 41
def test_branch_cuts_complex64(self): # check branch cuts and continuity on them yield _check_branch_cut, np.log, -0.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.log2, -0.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.log10, -0.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.log1p, -1.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.sqrt, -0.5, 1j, 1, -1, True, np.complex64 yield _check_branch_cut, np.arcsin, [ -2, 2], [1j, 1j], 1, -1, True, np.complex64 yield _check_branch_cut, np.arccos, [ -2, 2], [1j, 1j], 1, -1, True, np.complex64 yield _check_branch_cut, np.arctan, [0-2j, 2j], [1, 1], -1, 1, True, np.complex64 yield _check_branch_cut, np.arcsinh, [0-2j, 2j], [1, 1], -1, 1, True, np.complex64 yield _check_branch_cut, np.arccosh, [ -1, 0.5], [1j, 1j], 1, -1, True, np.complex64 yield _check_branch_cut, np.arctanh, [ -2, 2], [1j, 1j], 1, -1, True, np.complex64 # check against bogus branch cuts: assert continuity between quadrants yield _check_branch_cut, np.arcsin, [0-2j, 2j], [ 1, 1], 1, 1, False, np.complex64 yield _check_branch_cut, np.arccos, [0-2j, 2j], [ 1, 1], 1, 1, False, np.complex64 yield _check_branch_cut, np.arctan, [ -2, 2], [1j, 1j], 1, 1, False, np.complex64 yield _check_branch_cut, np.arcsinh, [ -2, 2, 0], [1j, 1j, 1], 1, 1, False, np.complex64 yield _check_branch_cut, np.arccosh, [0-2j, 2j, 2], [1, 1, 1j], 1, 1, False, np.complex64 yield _check_branch_cut, np.arctanh, [0-2j, 2j, 0], [1, 1, 1j], 1, 1, False, np.complex64
Example 42
def test_against_cmath(self): import cmath points = [-1-1j, -1+1j, +1-1j, +1+1j] name_map = {'arcsin': 'asin', 'arccos': 'acos', 'arctan': 'atan', 'arcsinh': 'asinh', 'arccosh': 'acosh', 'arctanh': 'atanh'} atol = 4*np.finfo(np.complex).eps for func in self.funcs: fname = func.__name__.split('.')[-1] cname = name_map.get(fname, fname) try: cfunc = getattr(cmath, cname) except AttributeError: continue for p in points: a = complex(func(np.complex_(p))) b = cfunc(p) assert_(abs(a - b) < atol, "%s %s: %s; cmath: %s" % (fname, p, a, b))
Example 43
def arctan_func(xvals, a, b, c): ''' -------------------------------------------------------------------- This function generates predicted ability levels given data (xvals) and parameters a, b, and c, from the following arctan function: y = (-a / pi) * arctan(b * x + c) + (a / 2) -------------------------------------------------------------------- INPUTS: xvals = (N,) vector, data inputs to arctan function a = scalar, scale parameter for arctan function b = scalar, curvature parameter for arctan function c = scalar, shift parameter for arctan function OTHER FUNCTIONS AND FILES CALLED BY THIS FUNCTION: None OBJECTS CREATED WITHIN FUNCTION: yvals = (N,) vector, predicted values (output) of arctan function RETURNS: yvals -------------------------------------------------------------------- ''' yvals = (-a / np.pi) * np.arctan(b * xvals + c) + (a / 2) return yvals
Example 44
def arctan_func(xvals, a, b, c): ''' -------------------------------------------------------------------- This function generates predicted ability levels given data (xvals) and parameters a, b, and c, from the following arctan function: y = (-a / pi) * arctan(b * x + c) + (a / 2) -------------------------------------------------------------------- INPUTS: xvals = (N,) vector, data inputs to arctan function a = scalar, scale parameter for arctan function b = scalar, curvature parameter for arctan function c = scalar, shift parameter for arctan function OTHER FUNCTIONS AND FILES CALLED BY THIS FUNCTION: None OBJECTS CREATED WITHIN FUNCTION: yvals = (N,) vector, predicted values (output) of arctan function RETURNS: yvals -------------------------------------------------------------------- ''' yvals = (-a / np.pi) * np.arctan(b * xvals + c) + (a / 2) return yvals
Example 45
def fov(self): """ Returns the field of view for each axis """ return np.float32([np.arctan(self.shape[1] * 0.5 / self.fx), np.arctan(self.shape[0] * 0.5 / self.fy)]) * 2.0
Example 46
def dynamics(q, u, p): """ Returns state derivative qdot. Takes current state q, motor input torque u, and disturbance torque p. See <http://renaissance.ucsd.edu/courses/mae143c/MIPdynamics.pdf> (rederived with incline). """ # Angle of pendulum in incline frame ang = q[2] - incline # Mass matrix M = np.array([ [(mass_wheel + mass_pend)*radius**2 + inertia_wheel, mass_pend*radius*cw_to_cm[1]*np.cos(ang)], [mass_pend*radius*cw_to_cm[1]*np.cos(ang), inertia_pend + mass_pend*cw_to_cm[1]**2] ]) # Gravity effect g = np.array([ -mass_pend*radius*cw_to_cm[1]*q[3]**2*np.sin(ang) + mass_wheel*radius*gravity[1]*np.sin(incline), mass_pend*gravity[1]*cw_to_cm[1]*np.sin(q[2]) ]) # Friction force d = np.array([ -friction_wheel * (q[1] + np.arctan(q[1])), friction_pend * q[3] ]) # Dynamics accel_wheel_neg, accel_pend = npl.inv(M).dot(np.array([-u, p+u]) - g - d) return np.array([q[1], -accel_wheel_neg*radius, q[3], accel_pend]) ################################################# SIMULATION # Define time domain
Example 47
def cart2sph(x, y, z): """ Convert cartesian to spherical coordinates. Attributes ---------- x : float x-coordinate y : float y-coordinate z : float z-coordinate Returns ------- float radius float aziumth float elevation """ r = np.sqrt(x**2 + y**2 + z**2) if x > 0 and y > 0: az = np.arctan(y / x) elif x > 0 and y < 0: az = 2*np.pi - np.arctan(-y / x) elif x < 0 and y > 0: az = np.pi - np.arctan(-y / x) elif x < 0 and y < 0: az = np.pi + np.arctan(y / x) elif x == 0 and y > 0: az = np.pi / 2 elif x == 0 and y < 0: az = 3 * np.pi / 2 elif y == 0 and x > 0: az = 0 elif y == 0 and x < 0: az = np.pi elev = np.arccos(z / r) return r, az, elev
Example 48
def ellipse_angle_of_rotation( a ): b,c,d,f,g,a = a[1]/2, a[2], a[3]/2, a[4]/2, a[5], a[0] return 0.5*NP.arctan(2*b/(a-c))
Example 49
def ellipse_angle_of_rotation2( a ): b,c,d,f,g,a = a[1]/2, a[2], a[3]/2, a[4]/2, a[5], a[0] if b == 0: if a > c: return 0 else: return NP.pi/2 else: if a > c: return NP.arctan(2*b/(a-c))/2 else: return NP.pi/2 + NP.arctan(2*b/(a-c))/2
Example 50
def radial_filter(order, freq, array_configuration, amp_maxdB=40): """Generate modal radial filter of specified order and frequency Parameters ---------- order : array_like order of filter freq : array_like Frequency of modal filter array_configuration : ArrayConfiguration List/Tuple/ArrayConfiguration, see io.ArrayConfiguration amp_maxdB : int, optional Maximum modal amplification limit in dB [Default: 40] Returns ------- dn : array_like Vector of modal frequency domain filter of shape [nOrders x nFreq] """ array_configuration = ArrayConfiguration(*array_configuration) extrapolation_coeffs = array_extrapolation(order, freq, array_configuration) extrapolation_coeffs[extrapolation_coeffs == 0] = 1e-12 a_max = 10 ** (amp_maxdB / 20) limiting_factor = 2 * a_max / _np.pi * _np.abs(extrapolation_coeffs) * _np.arctan(_np.pi / (2 * a_max * _np.abs(extrapolation_coeffs))) return limiting_factor / extrapolation_coeffs