外部荷重処理のリファクタリング
概要 外部荷重処理を行う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宣言不一致を修正