回答編集履歴
2
追記2
answer
CHANGED
@@ -41,4 +41,10 @@
|
|
41
41
|
# print(*res)
|
42
42
|
```
|
43
43
|
|
44
|
-
今回の場合、 `pip3` を用いて `numpy` をインストールしておくと色々と楽です。
|
44
|
+
今回の場合、 `pip3` を用いて `numpy` をインストールしておくと色々と楽です。
|
45
|
+
|
46
|
+
---
|
47
|
+
|
48
|
+
`numpy.array` ならforで回す必要なかったですね()
|
49
|
+
|
50
|
+
[kokorin様の書き方](https://teratail.com/questions/212484#reply-312896) がベストだと思います
|
1
追記
answer
CHANGED
@@ -15,4 +15,30 @@
|
|
15
15
|
# またはリスト内包表記で新しいリストを作成
|
16
16
|
res = [micro*Pmax*((1-(y_c)**2))**(0.5) for y_c in y_c_arr]
|
17
17
|
print(*res)
|
18
|
-
```
|
18
|
+
```
|
19
|
+
|
20
|
+
---
|
21
|
+
|
22
|
+
`y` の値については、 `y_c` と `c` の値から逆算できます。とりあえず `c` が入力された値によって判明しているものとするとこう書けばよろしいのではないでしょうか?
|
23
|
+
|
24
|
+
```python
|
25
|
+
import numpy as np
|
26
|
+
|
27
|
+
micro = 1
|
28
|
+
Pmax = 2
|
29
|
+
c = 10 # 入力から求める
|
30
|
+
|
31
|
+
# y_c_arr = [-1.0,-0.9,-0.8,0.1,0.0,0.1,0.8,0.9,1.0]
|
32
|
+
y_c_arr = np.arange(-1.0, 1.0, 0.1)
|
33
|
+
|
34
|
+
for y_c in y_c_arr:
|
35
|
+
q = micro*Pmax*((1-(y_c)**2))**(0.5)
|
36
|
+
print("(y/c)={:.1f}のとき, q={:.1f}, y={:.1f}".format(y_c, q, y_c*c))
|
37
|
+
|
38
|
+
# またはリスト内包表記で新しいリストを作成
|
39
|
+
# res = [micro*Pmax*((1-(y_c)**2))**(0.5) for y_c in y_c_arr]
|
40
|
+
res = np.array([micro*Pmax*((1-(y_c)**2))**(0.5) for y_c in y_c_arr])
|
41
|
+
# print(*res)
|
42
|
+
```
|
43
|
+
|
44
|
+
今回の場合、 `pip3` を用いて `numpy` をインストールしておくと色々と楽です。
|