回答編集履歴
4
説明を修正
answer
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
描きたいのはこんなグラフでしょうか?
|
2
2
|
補足: 場合分けの大小が逆になっていたのに加え、片方は`* x`が式から抜けていた。また、Pythonでは累乗の演算子は`**`だが、片方の式では間違って`^`を使っていた。
|
3
|
-
補足の補足: 式が違っていることが判明。累乗は2乗ではなく3乗で、`x`や`(L - x)`を掛ける対象のカッコの範囲も間違っていた。
|
4
3
|
|
4
|
+
|
5
5
|
```Python
|
6
6
|
import matplotlib.pyplot as plt
|
7
7
|
|
3
式をさらに修正し、グラフを差し替え
answer
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
描きたいのはこんなグラフでしょうか?
|
2
2
|
補足: 場合分けの大小が逆になっていたのに加え、片方は`* x`が式から抜けていた。また、Pythonでは累乗の演算子は`**`だが、片方の式では間違って`^`を使っていた。
|
3
|
+
補足の補足: 式が違っていることが判明。累乗は2乗ではなく3乗で、`x`や`(L - x)`を掛ける対象のカッコの範囲も間違っていた。
|
3
4
|
|
4
5
|
```Python
|
5
6
|
import matplotlib.pyplot as plt
|
@@ -13,8 +14,8 @@
|
|
13
14
|
|
14
15
|
|
15
16
|
x = list(range(L))
|
16
|
-
y = [(b * P) * (-x_i**
|
17
|
+
y = [(b * P) * (-x_i**3 + a * (a + 2 * b) * x_i) / (6 * E * I * L)
|
17
|
-
if x_i < a else (a * P) / (6 * E * I * L) * (-(L - x_i)**
|
18
|
+
if x_i < a else (a * P) / (6 * E * I * L) * (-(L - x_i)**3 + b * (2 * a + b) * (L - x_i)) for x_i in x]
|
18
19
|
|
19
20
|
plt.grid(which="major", color="gray", linestyle="-")
|
20
21
|
plt.xlim(0, L)
|
@@ -23,6 +24,7 @@
|
|
23
24
|
|
24
25
|
plt.plot(x, y)
|
25
26
|
plt.show()
|
27
|
+
|
26
28
|
```
|
27
29
|
|
28
|
-

|
2
式を修正し、グラフを差し替えた
answer
CHANGED
@@ -1,4 +1,5 @@
|
|
1
1
|
描きたいのはこんなグラフでしょうか?
|
2
|
+
補足: 場合分けの大小が逆になっていたのに加え、片方は`* x`が式から抜けていた。また、Pythonでは累乗の演算子は`**`だが、片方の式では間違って`^`を使っていた。
|
2
3
|
|
3
4
|
```Python
|
4
5
|
import matplotlib.pyplot as plt
|
@@ -10,10 +11,11 @@
|
|
10
11
|
I = 17280000
|
11
12
|
P = 3000
|
12
13
|
|
13
|
-
x = list(range(3000))
|
14
|
-
y = [(a * P) / (6 * E * I * L) * (L - x_i) * (-((L - x_i) ** 2) - b * (L + a))
|
15
|
-
if x_i < 1200 else (b * P) * (-x_i**2 + a * (L + b)) / (6 * E * I * L) for x_i in x]
|
16
14
|
|
15
|
+
x = list(range(L))
|
16
|
+
y = [(b * P) * (-x_i**2 + a * (L + b)) * x_i / (6 * E * I * L)
|
17
|
+
if x_i < a else (a * P) / (6 * E * I * L) * (-(L - x_i)**2 - b * (L + a)) * (L - x_i) for x_i in x]
|
18
|
+
|
17
19
|
plt.grid(which="major", color="gray", linestyle="-")
|
18
20
|
plt.xlim(0, L)
|
19
21
|
plt.ylim(min(y) - 1, max(y) + 1)
|
@@ -23,4 +25,4 @@
|
|
23
25
|
plt.show()
|
24
26
|
```
|
25
27
|
|
26
|
-

|
1
式を修正してグラフを差し替え
answer
CHANGED
@@ -11,7 +11,7 @@
|
|
11
11
|
P = 3000
|
12
12
|
|
13
13
|
x = list(range(3000))
|
14
|
-
y = [(a * P) / (6 * E * I * L) * (L - x_i) * (-((L - x_i)
|
14
|
+
y = [(a * P) / (6 * E * I * L) * (L - x_i) * (-((L - x_i) ** 2) - b * (L + a))
|
15
15
|
if x_i < 1200 else (b * P) * (-x_i**2 + a * (L + b)) / (6 * E * I * L) for x_i in x]
|
16
16
|
|
17
17
|
plt.grid(which="major", color="gray", linestyle="-")
|
@@ -23,4 +23,4 @@
|
|
23
23
|
plt.show()
|
24
24
|
```
|
25
25
|
|
26
|
-

|