アプリ版:「スタンプのみでお礼する」機能のリリースについて

エクセルを用いて
X=0 Y=0の位置から45度の角度で投げ上げ(初速度が等しいということ)
X=10.168 のときY=0となるようなシミュレーションのグラフを書きたいのですが、書き方の概略を教えていただきたいです。

時間は0.001秒刻みで、初速度をソルバーか何かを用いて求めるのだと思うのですが、どこから求めたものかわかりません。
一応、投げあげる角度を問わない状態での放物線であれば作成できたのですが。

よろしくお願いします。

A 回答 (2件)

2次の曲線ですから、3点を指定すればグラフが描けます。


内1点は射出点(0,0)、また1点は到達点(10.168,0)ですから、もう一点どこかテキトーな通過点を計算してグラフにします。


>シミュレーションのグラフを書きたい

添付図:
B1に初速を生数字で記入する事にします(暫定的に100とでも記入しておきます)
B2は投射角を生数字で記入することにします(とりあえず45と記入)
B3に重力加速度を生数字で記入することにします


5行目にそれぞれ時刻、横速度(右を+)、縦速度(上が+)、Xの位置、Yの位置とします
A6は生数字で時刻ゼロと記入します
B6には
=B1*COS(RADIANS(B2))
C6は
=B1*SIN(RADIANS(B2))
D6、E6は初期位置としてそれぞれゼロを記入しておきます


A7は暫定的に
=A8/2
と入れておきます
A8は、今回は簡易に(到達点がY=0すなわちVyt=-Vy0であることから)
=2*C6/B3
としておきます


B7に
=$B$6
と記入、B8にコピー
C7に
=$C$6-$B$3*A7
として、C8にコピー

D7に
=$D$6+$B$6*A7
としてD8にコピー

E7に
=$E$6+$C$6*A7-$B$3*A7*A7/2
としてE8にコピー

以上でようやく「シミュレーション」の準備が整いましたので

手順:
D8を選択
ご利用のエクセルのバージョンに応じた方法で「ゴールシーク」を開始
 数式入力セル D8
 目標値 10.168
 変化させるセル B1
としてOKをクリック、条件に合致する初速度をエクセルに探させます。



グラフの描き方:
D5:E8の3点から「散布図(マーカのみ)」を描画
プロットを右クリックして「近似曲線の追加」を開始
多項式近似にマーク、次数を2としてOKすると、なめらかな放物線を記入してくれます。
「エクセルでのシミュレーショングラフ」の回答画像2
    • good
    • 1
この回答へのお礼

すごく丁寧に手順を並べて下さり、大変わかりやすかったです。
なめらかな放物線を記入する小技(?)まで添えて下さり、今後の参考にさせていただきます。

自分では何度やっても納得いく結果にならないどころか、
最初に作った(間違ってたけど)放物線より悪化した結果ばかりで。
正直嫌気がさしていたのですが、やっとすっきりしました。

お礼日時:2013/07/29 09:53

力技での方法です。



初速度v(ベクトル)、時間t、重力加速度g=9.80065 とします。
x方向の速度=y方向の速度=v/√2。

t秒後のx、yは、それぞれ、
v/√2*t
v/√2*t-g/2*t^2
となり、「x=10.168 のときy=0」という条件を当てはめると、

v/√2*t=10.168 ・・・ (1)
v/√2*t-g/2*t^2=0 ・・・ (2)

(1)を(2)に代入すると、
10.168=g/2*t^2 → t^2=20.336/g=2.075
よって、
t=1.44047

これを(1)に代入すると、
v=10.168/t*√2=10.168/1.44047*1.414214=9.98266

【エクセルの表の一例】
A1=(g=)9.80065、 A2=(v=)9.98266、 A3=sqrt(2)、 A4=A2/A3
B列はt(0.001秒刻み)
C2に、=$A$4*B2 、 D2に =C2-$A$1/2*B2^2 (C列=x、D列=y)

B、C、D列を1442行まで作成。

D列のデータを基に、グラフを作成。
「エクセルでのシミュレーショングラフ」の回答画像1
    • good
    • 0
この回答へのお礼

スクリーンショットまでつけていただいてありがとうございます。
力技、と書かれてらっしゃる通り、ラベルやデータの整理にやや手間取りましたが、納得のいく結果が出せました。

お礼日時:2013/07/29 09:49

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!