0

こんにちは、私は以下のコードを持っています:

import numpy as np
from scipy import pi,sin,cos
import matplotlib.pyplot as plt
import math as m

image = np.zeros(shape=(201,201))

a=4
b=3
pa = 45

def dE(i,j,a,b,PA,x0,y0):
    the = -PA+90.0
    x=i - x0
    y=j - y0
    cos_a,sin_a=cos(the*pi/180.0),sin(the*pi/180.0)
    Xs = (x*cos_a - y*sin_a)**2.0 
    Ys = (x*sin_a + y*cos_a)**2.0 
    r = np.sqrt((Xs/a**2) + (Ys/b**2)) 
    return r

for i in range(0,len(image)):
    for j in range(0,len(image)):
        image[j,i] = dE(i,j,a,b,pa,100.0,100.0)

plt.imshow(image)
plt.show()

下部にある 2 つの for ループを並列化するにはどうすればよいですか? 前もって感謝します!

上記の完全なコードを追加しました。乾杯クリス

4

1 に答える 1

0

わかりました。本当に役立つご意見をありがとうございます。

import numpy as np
from scipy import pi,sin,cos
import matplotlib.pyplot as plt
import math as m

image = np.zeros(shape=(201,201))

a=4
b=3
pa = 240

def dEllipse(x,y,a,b,PA):
    the = -PA+90.0
    cos_a,sin_a=cos(the*pi/180.0),sin(the*pi/180.0)
    Xs = (x*cos_a - y*sin_a)**2.0 
    Ys = (x*sin_a + y*cos_a)**2.0 
    r = np.sqrt((Xs/a**2) + (Ys/b**2)) 
    return r

x = np.arange(0-100.0, 201-100.0)
y = np.arange(0-100.0, 201-100.0)
xx, yy = np.meshgrid(x, y)

new_image= dEllipse(xx,yy,a,b,pa)

plt.imshow(new_image)
plt.show()
于 2013-03-16T20:08:40.097 に答える