外部荷重処理のリファクタリング

概要 外部荷重処理を行うfstr_ass_load.f90モジュールのリファクタリングを行い、荷重種類ごとに処理を分割して可読性と保守性を向上させました。

変更内容

外部荷重処理を荷重タイプごとに専用サブルーチンに分割

  • 集中節点力処理(process_concentrated_loads)
  • 分布荷重処理(process_distributed_loads)
  • ユーザー定義荷重処理(process_user_loads)
  • 右辺ベクトル更新(update_rhs_vector)
  • 熱荷重処理(process_thermal_loads)
  • 熱荷重計算関数のcoords引数のINTENT宣言を修正(IN→INOUT)

共通処理をヘルパー関数として抽出

  • 節点座標取得関数(get_original_coordinates、get_deformed_coordinates)
  • 要素荷重ベクトル計算(calculate_element_load_vector)

熱荷重計算(calculate_thermal_load)

  • 適切なコメント追加によるコード理解の容易化

改善効果

  • 単一責任の原則に基づいた関数分割による保守性の向上
  • 共通処理の抽出によるコード重複の削減
  • 詳細なコメントによるコード可読性の向上
  • 将来的な機能追加や変更がしやすい構造の実現

バグ修正

  • 熱荷重計算関数(TLOAD_C3など)に渡すcoords引数のINTENT宣言不一致を修正