層応答分布グラフの表示
結果タブ「時刻歴」には、時刻歴波形(節点変位・ベースシア・層間変形角の時間 履歴)に加え、「層応答分布」の表示モードがあります。縦軸に階、横軸に応答量を 取り、地震応答が高さ方向にどう分布したかを一目で確認できます。
時刻歴応答解析の詳細記録(層応答の集計。 層応答の集計)の実行が 前提です。詳細記録がない場合(結果ファイルが本機能の追加前に生成されたものである 場合など)は、再実行を促す案内のみを表示します。
実装参照:sepika_app::time_history_view::story_response_panel(crates/sepika-app/src/time_history_view.rs)が層応答分布グラフを表示し、詳細記録がない場合は再実行を案内します。
方向・表示項目の選択
グラフ上部で次を選択します。
- 方向: X/Y。地震動の加振方向に関わらず、記録済みの X・Y いずれの方向の 層応答も選べます(加振していない方向の連成応答も確認できます)。
- 表示項目:
- 層せん断力 [kN](層量)
- 層せん断力係数 Ci [-](層量)
- 階加速度 [gal](階量、絶対加速度)
- 階速度 [m/s](階量、相対速度)
- 階変位 [mm](階量、相対変位)
層せん断力・階加速度・階速度・階変位は、解析の全ステップを通じた絶対値の 最大値をグラフに表示します。層せん断力係数 Ci は元々全ステップを通じた 定義(最大層せん断力/地震用重量)のため、そのまま表示します。
実装参照:sepika_app::time_history_view::story_response_panel(crates/sepika-app/src/time_history_view.rs)が方向・項目の選択 UI を表示し、値は sepika_solver::dynamic::timehistory::StoryResponse の peak_story_shear・peak_shear_coeff・peak_floor_accel・peak_floor_vel・peak_floor_disp(crates/sepika-solver/src/dynamic/timehistory/result.rs)を使います。
層量と階量の描き方の違い
応答量には、層(階と階の間の区間)に属する量と、階(床)に属する量の 2 種類が あり、描き方を使い分けます。
- 層量(層せん断力・層せん断力係数): 層 \( i \) の値を、その層の下端から 上端までの区間で一定の水平線(階段状)として描きます。層区分そのものが 持つ量であることを表しています。
- 階量(階加速度・階速度・階変位): 階 \( i \) の値を、その階の床の高さに 点として置き、隣接する点を折れ線で結びます。
縦軸の目盛りには、地盤面(GL)と各階の名称(model.stories の階名)を
ラベルとして表示します。
実装参照:階段状・折れ線の点列と GL・階名の目盛りラベルは sepika_app::story_response(crates/sepika-app/src/story_response.rs)が作り、sepika_app::time_history_view::story_response_panel(crates/sepika-app/src/time_history_view.rs)が描きます。
ホバー表示
グラフ上にポインタを重ねると、最も近い層(または階)の名称と値を、選択中の 表示項目に応じた単位で下に表示します。
実装参照:sepika_app::story_response::hover_story_index(crates/sepika-app/src/story_response.rs)がポインタ位置から層・階を求め、sepika_app::time_history_view::story_response_panel が名称と値・単位を表示します。
レポートとの関係
層応答分布グラフと同じ層応答最大値(層せん断力・層せん断力係数・階加速度・ 階速度・階変位の全ステップ絶対値最大)は、レポートタブの CSV 出力にも含まれ、 同一の集計ロジックを共有します。
実装参照:sepika_app::summary::push_story_response_table(crates/sepika-app/src/summary.rs)が同じ StoryResponse の peak_story_shear・peak_shear_coeff・peak_floor_accel・peak_floor_vel・peak_floor_disp を表示単位へ換算して CSV に追記し、集計ロジックを共有します。