回答編集履歴

2

a

2018/10/16 13:30

投稿

tiitoi
tiitoi

スコア21956

test CHANGED
@@ -189,3 +189,45 @@
189
189
  XY = np.dstack(np.mgrid[0:8, 0:8])
190
190
 
191
191
  ```
192
+
193
+
194
+
195
+ ## 追記
196
+
197
+
198
+
199
+ コメント欄の計算をするなら、こうですね。
200
+
201
+ 1,8列と1,8行の端の処理が不明だったので、範囲外の値は0として計算しています。
202
+
203
+
204
+
205
+ ```python
206
+
207
+ a = np.random.uniform(0, 2 * np.pi, (8, 8))
208
+
209
+ x = np.empty_like(a)
210
+
211
+
212
+
213
+ # a を zero-padding
214
+
215
+ a = np.pad(a, (1, 1), 'constant', constant_values=0)
216
+
217
+ print(a.shape) # (10, 10)
218
+
219
+
220
+
221
+ for i, j in np.dstack(np.mgrid[1:9, 1:9]).reshape(-1, 2):
222
+
223
+ x[i - 1, j - 1] = -np.cos(a[i, j] - a[i - 1, j]) \
224
+
225
+ - np.cos(a[i, j] - a[i + 1, j]) \
226
+
227
+ - np.cos(a[i, j] - a[i, j + 1]) \
228
+
229
+ - np.cos(a[i, j] - a[i, j - 1])
230
+
231
+ print(x)
232
+
233
+ ```

1

a

2018/10/16 13:30

投稿

tiitoi
tiitoi

スコア21956

test CHANGED
@@ -2,11 +2,11 @@
2
2
 
3
3
 
4
4
 
5
- [numpy.random.uniform(low=0.0, high=1.0, size=None)](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.uniform.html) で [low, hight) の一様分布に従う乱数を生成できます。
5
+ [numpy.random.uniform(low=0.0, high=1.0, size=None)](https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.uniform.html) で [low, high) の一様分布に従う乱数を生成できます。
6
6
 
7
7
 
8
8
 
9
- 今回の場合、[0, 2pi) の 8x8 行列なので、low=0, hight=1, size=(8, 8) となります。
9
+ 今回の場合、[0, 2pi) の 8x8 行列なので、low=0, high=2 * np.pi, size=(8, 8) となります。
10
10
 
11
11
 
12
12
 
@@ -179,3 +179,13 @@
179
179
  ... 略
180
180
 
181
181
  ```
182
+
183
+
184
+
185
+ 一行でかくなら
186
+
187
+ ```
188
+
189
+ XY = np.dstack(np.mgrid[0:8, 0:8])
190
+
191
+ ```