抵抗について

Last-modified: 2022-10-23 (日) 09:22:58

抗力について

0.Drag/抵抗力

ビークルにカーソルをあわせてVキーを押すことで表示される詳細のうち、Physics informationにかかれている項目。
window.png
Velocity : 現在の速度。速度が早いほどかかる抗力も大きくなる。

Drag(right) : 横方向にかかる抗力。右向きが正、左向きが負。風や波から受けている力。

Drag(down) : 縦方向にかかる抗力。下向きが正、上向きが負。重力や浮力は除外されている。

Drag(back) : 前後方向にかかる抗力。後ろ向きが正、前向きが負。前進速度に大きく関わる。推力とほぼ等しくなる。

Cross Section : 断面係数。ビークルを真正面から見た時の抗力係数。少なければ少ないほどよい。WaterとAirの2つがある。

Length Friction : 長さ係数。ビークルの側面積から出される抗力係数。少ないほどよい。同じくWaterとAirの2つがある。

Angular Drag : 角度係数。角度変化に対する抗力係数と抗力。Roll, Pitch,Yawの説明はウィキペディア へ。

0-1.抵抗の小さい船体って何よ?

ものすごい大雑把には、コーナーブロックを貼り付けたビークルのことです。

 

ftd_t001.jpg
こういうビークルがあったとします。
赤く塗った部分が、特に抵抗を受ける部分です。

 

ftd_t002.jpg
特に抵抗を受ける部分にコーナーブロックをつけました。
これが、「最初のスクショよりも抵抗の小さいビークル」という事になります。この処置だけで、15m/sだった速度を17m/s強まで改善することができました。

1.なぜ抵抗を減らす必要があるのか?

速度を上げるためである。
抵抗を半分に減らすことができれば、推力が2倍になったのと同じ効果を得られる。
では速度を上げる利点は何だろうか?

1-1.マップ上の移動速度

キャンペーンで拠点を守るときや拠点を攻めるときに、
一定の速度があれば戦闘に間に合って参加できることがある。
機動力があるビークルが多ければ、防衛や攻撃のために保有する量を削減できる可能性があるのだ。

1-2.ミサイル/魚雷の回避

極端な話、飛行艦の速度がミサイルの速度を上回っていればほとんどミサイルは命中しない。
また、潜水艦の速度が魚雷の速度を上回っていればほとんど魚雷は当たらない。
レーザーによる防御ができない場合は、速度による回避は有効な手段となる。

1-3.索敵誤差を増やす

索敵センサーは相手がそのままの速度でまっすぐ移動すると仮定して位置を予想するので、
単純に速度を上げても相手の索敵誤差が増えるわけではない。
しかし、速度が大きければ方向転換などで相手の狙いを大きく逸らせ、回避率を上げることができる。
search.jpg

1-4.速度を稼がなくてもよい場合

逆に言うと、防御がしっかりしていれば速度はそこまで必要がない。
スモークは自ビークルの速度が低いほうがよくはたらくし、
相手ビークルに対する照準も自ビークルの速度が遅いほうが安定する。

2.抵抗の計算方法

FtD公式wiki - 推力と抵抗によると、

抗力=速度^2×(Cross Section + Length Friction)

となっている。


以降の説明では、抗力係数=Cross Section + Length Frictionとする。

抗力=速度^2×抗力係数

となる。

2-1.抵抗と推力・最高速度の関係

ビークルが最高速度のとき、抗力=推力の関係が成り立つので

推力=最高速度^2×抗力係数

が成り立つ。

最高速度=√(推力/抗力係数)

と変形することもできる。


推力を2倍に上げても、最高速度は約1.4倍にしかならないことがわかる。
また、抗力係数を半分に下げれば、推力を2倍に上げたのと同じ効果があることもわかる。

抵抗と推力・最高速度の関係
最高速度は推力の平方根に比例し、抗力係数の平方根に反比例する。

2-2.空気中と水中での抵抗の違い

空気中の抵抗倍率を100%とすると、水中での抵抗倍率は2000%となる。

例1)
空気中の抵抗倍率は水中の1/20になるので、空中での速度は√20≒4.47倍。
水中速度が 30 m/sのヘリブレード潜水艦が空中に飛び出すと
およそ 30 m/s×4.47≒134 m/sで飛ぶことになる。


ビークルの一部が水中に漬かっている場合は水中に漬かっている部分のみの抵抗を20倍して合計する。

例2)
空中で抵抗 4.0 の船の6割が水面下に入ると、抵抗はおよそ 4.0×0.4+4.0×0.6×20=49.6 となる。
空中で抵抗 4.0 の船の5割が水面下であれば、抵抗はおよそ 4.0×0.5+4.0×0.5×20=42 となる。
一部の推力を船体を浮かせる力に回せば、大きく速度を稼ぐことができる。
しかし水面下の割合が多いほうが被弾率は下がるので、一長一短ではある。

2-3.大気の濃度の変化

Air density(大気の濃度)はジェットやヘリブレードの推力倍率であり、
高度0m~300mでは100%、300mを超えると徐々に減少していき500mで0%になる。
500m以上ではジェットやヘリブレードははたらかない。
イオンスラスタやセイル(帆)は問題なくはたらく。


抵抗の倍率はこれとは少し違い、
高度0m~300mでは100%、300mを超えると徐々に減少していき500mで最低値の10%になる。
宇宙空間でも抵抗は少し残るバランスになっている。

例)
空気抵抗が1/10になると速度は√10≒3.16倍になるので、
低空での速度が 80 m/sのイオンスラスタ航空機ならば、
高度500m以上では 80 m/s×3.16≒ 253 m/sで飛行できる。

高度による抵抗の違い
高度抵抗の倍率
500m以上10%
0m~300m100%
0m未満(水中)2000%

3.Cross SectionとLength Friction

Cross SectionとLength Frictionは、ビークルの形状によってのみ決まる。
先端はどのような形状がいいのか、
ビークルはどの程度細長くするといいのか、その解にせまってみよう。


※)この章では抵抗の倍率が100%のときの数値を用いることにする。

3-1.Length Frictionの計算方法

計算が易しいので先にLength Frictionから。
Length Frictionは、そのビークルを真上から見た時の面積と、真横から見た時の面積が広いほど大きくなる。
1m^2あたりの値は0.002と、Cross Sectionよりもずっと少なくなっている。

Length Friction=0.002×(真上から見た面積+真横から見た面積)

例)
length.jpg


Length Frictionは、水中での抵抗値が空気中のちょうど20倍にならないことがある。
なぜか空気中と水中で面積のとらえ方が違うため、20倍よりも少なくなることが多い。

3-2.Cross Sectionの計算方法

Cross Sectionはビークルを前から見た時の各ブロックの抵抗値の合計になる。
ほとんどのブロックの抵抗値は0.1でこれが最も大きく、
最も抵抗の小さい 4m wedgeブロックの抵抗値は0.005である。


3-2-1.ブロックの形状と抵抗
構造材ブロック(Wood,Metalなど)は長さと形状によって抵抗が決まっている。

長さ\形状Down slopeSquare cornerTriangle cornerInverted triangle cornerwedge
1m0.040.030.030.040.02
2m0.020.0150.0150.020.01
3m0.0130.010.010.0130.007
4m0.010.0080.0080.010.005

※1)インベントリ欄の数値ではなく、実際に設置した時の空気中の値。

※2)中には複数の方向の抵抗値をもつブロックもあるが、最も抵抗値の少ない方向のみ記している。


3-2-2.ブロックの配置制限
構造材ブロックの置き方によっては、抵抗減少効果が得られないことがある。
開けておくべき箇所がブロックでふさがれていると、抵抗値が0.1で計算されてしまう。


4mブロックの各形状について、開けておくべき箇所を赤で示した。
両方の箇所が空いている必要がある。
corner.png


3-2-3.判定を通すブロックと通さないブロック
構造材ブロック以外にも、抵抗が少ないブロックはある。

ブロック名抵抗値
Light Block
Spin Block/Turret
Spin Block/Turret上に置かれたブロック全て
0
Wing/Aileron/Tail Plane
Jet Engine(小さい方のみ)
Hydrofoil/Helicopter blade
0.01
Rudder
(実際は0.02×2=0.04の抵抗値を持つ)
0.02
Exhaust
(Fuel Engineの排気管)
0.025
Camera 90,Camera 360
IR Camera 360,Sonar 360,Radar,360
0.05

ただし、これらのブロックは抵抗値の判定を後ろに通す。
後ろ側により大きな抵抗値を持つブロックがあれば、そのブロックの抵抗値が優先される。
構造材ブロックは判定を後ろに通すことはない。
drag2.jpg


drag3.jpg
前から順に抵抗値を見ていき、構造材ブロックに当たると判定が終わる。
その列で最も高い抵抗値のブロックが採用される。


判定を通すブロックは、構造材の抵抗減少効果を妨げない。
前項で示した赤ブロックの箇所にも問題なく置くことができる。


3-2-4.配置例
抵抗にペナルティを受けない置き方の例をいくつか示した。
基本は構造材ブロックの斜めの面がつながるように配置するとよい。
参考にして君もオリジナルの機首/艦首をつくってほしい。
head1.jpg
head2.jpg


3-2-5.抵抗によるモーメントの発生
Cross SectionはLength Frictionと違い、ブロックごとに抵抗が計算される。
重心の上下(もしくは左右)で抵抗が違っていると、ビークルを回転させる力が発生してしまうのだ。
moment.jpg

3-3.抵抗と体積の最適化

抵抗を減らすためには細長い形がいいと言われている。
しかしあまりに長くしてしまうとLength Frictionが大きくなってしまうし、
必要なものを載せられなくなってしまう。
前から見た時の面積と長さのバランスについて考えてみよう。


仮にCross SectionとLength Frictionの1m^2あたり抵抗値が同じだったとしよう。
全体の抵抗は表面積に比例する。
同じ体積で表面積が一番小さくなるのは立方体であるから、
幅と高さと長さが等しいときに抵抗は最も小さくなる。
このとき、全ての方向の抵抗は等しくなっている。


では実例として、前項のくさび形の機首で考えることにしよう。
くさび形機首の1m^2あたり抵抗値は0.01、
Length Frictionの1m^2あたり抵抗値は0.002である。
cross.jpg
Cross SectionはLength Frictionの5倍の抵抗があるので、
ビークルを長さ方向に5倍に引き伸ばしてやれば全ての方向の抵抗は等しくなる。
つまり、長さ:幅:高さ=5:1:1となる。
このとき抵抗が最も小さい状態になる。


一般には次のことが言える。
幅と高さが等しく、
長さと幅がCross SectionとLength Frictionの1m^2あたりの抵抗値の逆比になったとき、
同じ体積で抵抗が最も小さい状態といえる。

最適な断面積と長さのバランス
抵抗が最も小さい状態にするには、
幅と高さが等しく、長さをそれより長くする必要がある。
Length FrictionがCross Sectionの値の2倍になったとき、
全ての方向の抵抗は等しくなり、抵抗が最小値となる。
数式に免疫がある人向け

ラグランジュの未定乗数法を用いた説明


ビークルの長さをl,幅をw,高さをhとおくと、
抗力係数はD(l,w,h)=0.01hw+0.002(lw+hl)
体積はV(l,w,h)=lwh
となるから、


一定の体積において抗力/体積が最大値になるとき、
(δD/δl)/(δV/δl)=(δD/δw)/(δV/δw)=(δD/δh)/(δV/δh)
が成り立つ。


DとVはw,hについて対称な式なので、(中辺)=(右辺)よりw=hは自明。
(左辺)=(中辺)より
0.002(w+h)/wh=(0.01h+0.002l)/hl
w=hを代入して整理すると
l:h=0.01:0.002=5:1
l:w:h=5:1:1のとき、抗力/体積が最小になるとわかる。

コメント

  • 突っ込んだ話だとVキーで現在の抵抗状況を見たりビルドモードで見たり、あとスロープの形状次第で浮いたり沈んだり・・・何気にこれはこうしてこうじゃ!と説明し難くて困る。 -- 管理人/びんせんとー? 2016-07-26 (火) 23:14:11
  • 簡単に言うと進行方向に尖らせればOKってことですね(雑 -- GenbuST? 2016-07-27 (水) 12:42:00
  • 姿勢制御用の推進装置を取り付ける場合、角ならL字型のくぼみを側面なら凹型の窪みを作って中に設置するように心掛けると抵抗を受けにくい。 -- 2016-07-27 (水) 15:09:26
  • 今のverだと、抵抗というより、抗力に近いよね。例えば、画像の船だと左右から船を押さえつけるような抗力が発生する気がする。誰か研究してくれないかなぁ、、チラチラ -- hane? 2016-08-05 (金) 03:14:45
    • 抗力というか旧Xf04が抵抗変動アップデートでマトモに飛べずひっくりかえるような挙動になったのを見るとちょっとした揚力的な力も・・・なんだが時間が足りNEEEEEEE -- 管理人/びんせんとー? 2016-08-05 (金) 03:40:42
    • 抵抗と抗力の違いとは …うごごごg これに関してはリアルを求めるとフレームレートが1fpd とかなるからあんまり求めすぎちゃだめよ -- 2017-01-04 (水) 23:01:45
      • (;´・ω・`)ひぇえ・・・ -- 管理人/びんせんとー? 2017-01-04 (水) 23:26:59
  • 加筆しました。間違いなどあれば指摘おねがいします。 -- sosu2357? 2017-03-12 (日) 22:27:14
    • たまたまきたら、新しくなってて大変判りやすくてありがたい限りです。 -- 2017-03-13 (月) 19:37:36
    • そんな気はしてたがsosuアニキのでしたか∠(;`・ω・´) -- 管理人/びんせんとー? 2017-03-14 (火) 00:02:37
  • このwikiのどこかで、「これが構造材ブロックの全形状です」的な画像を見たのですが、どこで見たのか忘れてしまいました…もし、知っている方が居りましたら、どうか教えて欲しいです -- 2020-10-01 (木) 03:28:20
    • すいません。ちょっと心当たりがないですね。 -- araki? 2020-10-06 (火) 17:23:55
    • おそらく旧初心者用ページだと思います。残してあるのでメニューからいけますよ -- 2020-10-06 (火) 17:59:36
      • イカダを延長しよう→エンジンを装着、その前にの項にて、探していた画像を見付ける事が出来ました。 ありがとうございます! -- 2020-10-06 (火) 23:44:10
  • 砲身自体に抵抗はありますか?また、砲身の待機角度を変えてやって船体に格納するようにしたら抵抗は減りますか? -- 2020-11-29 (日) 16:25:39