Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

WIP: 1次精度ラプラシアンを実装(粘性項のみ) #41

Draft
wants to merge 8 commits into
base: master
Choose a base branch
from

Conversation

LWisteria
Copy link
Contributor

#30 を考えていたら、HLよりこっちの方が精度が良いのではと言う気がしてきたので

@LWisteria LWisteria self-assigned this Dec 3, 2019
@LWisteria
Copy link
Contributor Author

中心重力や水中崩壊のベンチマークを実行中です。

@LWisteria
Copy link
Contributor Author

中心重力問題をやりました。#53 の問題があるのでSPPを外しています。あと半径を20にしました。

結果は全然駄目でした

_ 0500

1LじゃなくてHLの結果と比べると、

  • 途中で圧力が消えたり高くなったりします
  • そもそも圧力値高すぎ
  • 表面もあんまり落ち着きません

単体テストは通っているんですけどね・・・。実装バグがありそうなので見直します。

@LWisteria
Copy link
Contributor Author

調べてみたら単体試験通ってませんでした。

SPP ラプラシアン 単体試験結果 備考
あり HL 合格 今のmaster
あり 1L 合格 このPR最新
なし 1L 不合格 上記計算 #41 (comment) の設定
なし HL 合格

不合格なのはNeighborDensityTestですね

[----------] 2 tests from NeighborDensityTest
[ RUN      ] NeighborDensityTest.ValueTestLinear
test_ComputerNeighborDensityVariation.cpp(159): error: The difference between std::abs((dndt - dndt_analy) / dndt_analy) and 0.0 is 0.75877817465439223, which exceeds testAccuracy, where
std::abs((dndt - dndt_analy) / dndt_analy) evaluates to 0.75877817465439223,
0.0 evaluates to 0, and
testAccuracy evaluates to 0.10000000000000001.
[  FAILED  ] NeighborDensityTest.ValueTestLinear (195 ms)
[ RUN      ] NeighborDensityTest.ValueTestPolynomial
test_ComputerNeighborDensityVariation.cpp(211): error: The difference between std::abs((dndt - dndt_analy) / dndt_analy) and 0.0 is 0.77584798548503164, which exceeds testAccuracy, where
std::abs((dndt - dndt_analy) / dndt_analy) evaluates to 0.77584798548503164,
0.0 evaluates to 0, and
testAccuracy evaluates to 0.10000000000000001.
[  FAILED  ] NeighborDensityTest.ValueTestPolynomial (196 ms)
[----------] 2 tests from NeighborDensityTest (394 ms total)

@LWisteria
Copy link
Contributor Author

単体試験が落ちるやつ、SPPを導入していないとそもそもmasterでも落ちますね・・・(↑の「このPR最新」にはNeighborDensityVariationの試験は入ってなかった)。別問題っぽい。

2次元(D=2)でしか試験していなかったので発覚しなかったが、数式上は間違っている
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant