ゼミの風景

おそらくお気楽はしのすけゼミの諸風景

Top | ゼミ2024卒 | ゼミ2023卒 | ゼミ2022卒 | ゼミ2021卒 | ゼミ2020卒 | ゼミ2019卒 |
ゼミ2018卒 | ゼミ2017卒 | ゼミ2016卒 | ゼミ2015卒 | ゼミ2014卒 | イベント | About

戦争の数理,シュートの数理(4年ゼミ)

f:id:okiraku894:20151216123629j:plain
一人目,戦争の数理.
ようやくここにきてちょとずつ形になりつつある.
同じランチェスター則を満たしても元の微分方程式が違う場合が幾つもある.
だから保存則とは別に解を観察する必要がある.
たとえば途中で援軍が来たとき,モデルの違いが効果の違いになるのか,など.
そういったもう一歩突っ込んだ議論ができてくればほぼ完成として良いだろう.

f:id:okiraku894:20151216155153j:plain
f:id:okiraku894:20151216170150j:plain
二人目,シュートの数理.
実はもっとも行き場を失っている話になった.計算すれどもすれども結果が出ないのだ.
もうそろそろこちらも慣れてきて何かいいコト思いつくだろうと高をくくっていたが,
これまでやること全て空振り.キツイのう.
こうなったらシミュレーションして先に状況を掴んでから
アタックする他無い.ってことでBASICで作ったよ.
f:id:okiraku894:20151217195544p:plain

REM
REM [Optimal Catch Point]
REM ver. 2015/12/16
REM

SET WINDOW -1,1,0,2
INPUT  PROMPT "R=":R
DRAW circle WITH SCALE(R)*SHIFT(-R,0)
LET gx=0
LET gy=1
LET cy=1
SET POINT STYLE 7
LET mRatio=100
LET mcy=0
LET mcx=1
DO
   mouse poll mx,my,left,right
   SET DRAW mode hidden
   IF left=1 THEN
      LET gx=mx
      LET gy=my
      LET mRatio=100
   END IF
   IF right=1 THEN
      LET cy=MAX(MIN(my,R),.01)
   END IF
   LET cx=SQR(R^2-cy^2)-R
   LET th=ANGLE(gx+R,gy)
   LET ph=ANGLE(cx+r,cy)
   LET L=SQR((gx+R)^2+gy^2)
   LET D=SQR((cx-gx)^2+(cy-gy)^2)
   LET ratio=D/(R*ph)
   IF mRatio>ratio THEN
      LET mRatio=ratio
      LET mcy=cy
      LET mcx=cx
   END IF
   CLEAR
   SET POINT COLOR 4
   PLOT POINTS: gx,gy
   PLOT TEXT ,AT gx,gy: "G"
   SET POINT COLOR 3
   PLOT POINTs: cx,cy
   PLOT TEXT ,AT cx,cy: "C"
   PLOT TEXT ,AT 0,0: "S"
   SET POINT COLOR 7
   PLOT POINTS: mcx,mcy
   PLOT TEXT ,AT mcx,mcy: "min"
   SET LINE COLOR 2
   PLOT LINES: gx,gy; cx,cy
   SET LINE COLOR 5
   PLOT LINES: -R,0; gx,gy
   PLOT LINES: 0,0; gx,gy
   SET LINE COLOR 8
   DRAW circle WITH SCALE(R)*SHIFT(-R,0)
   PLOT TEXT ,AT 0.5,1.9 ,using"GC/SC:#.#######": ratio
   PLOT TEXT ,AT 0.5,1.85 ,USING"min:#.#######": mRatio
   SET DRAW mode explicit
LOOP UNTIL left*right=1
END