From 52b677059b803e959f9079ced6d9d45a41b1e095 Mon Sep 17 00:00:00 2001 From: RomLmbrt Date: Fri, 24 Apr 2026 10:40:22 +0200 Subject: [PATCH 1/4] Delete AWETrim in pyproject.toml because it is private --- pyproject.toml | 1 - 1 file changed, 1 deletion(-) diff --git a/pyproject.toml b/pyproject.toml index 4daa3e0..32412c0 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -51,7 +51,6 @@ dependencies = [ "numba", "screeninfo", "odfpy", - "AWETrim @ git+https://github.com/ocayon/AWETrim.git@main", ] [project.optional-dependencies] dev = [ From 6fffa698db693dbfa35db6b3b3be2723215aff48 Mon Sep 17 00:00:00 2001 From: RomLmbrt Date: Fri, 24 Apr 2026 10:49:47 +0200 Subject: [PATCH 2/4] Fit bridle_lines index to the SurfPlanAdapter export --- src/VSM/core/BodyAerodynamics.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/VSM/core/BodyAerodynamics.py b/src/VSM/core/BodyAerodynamics.py index 9f5376c..20b1e3c 100644 --- a/src/VSM/core/BodyAerodynamics.py +++ b/src/VSM/core/BodyAerodynamics.py @@ -1655,7 +1655,7 @@ def compute_line_aerodynamic_force( # TODO: test this function p1 = line[0] p2 = line[1] - d = line[2] + d = line[4] if p1[2] > p2[2]: p1, p2 = p2, p1 From 97232146348b5ca43bdff499fc8c6fa9edf17d3b Mon Sep 17 00:00:00 2001 From: RomLmbrt Date: Fri, 24 Apr 2026 10:58:23 +0200 Subject: [PATCH 3/4] Change in bridle_lines usage to fit the SurfPlanAdapter export --- src/VSM/plot_geometry_plotly.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/VSM/plot_geometry_plotly.py b/src/VSM/plot_geometry_plotly.py index c378e21..236b62b 100644 --- a/src/VSM/plot_geometry_plotly.py +++ b/src/VSM/plot_geometry_plotly.py @@ -411,7 +411,7 @@ def add_bridle_system(fig: go.Figure, wing_aero: object, is_first: bool = True) elif hasattr(wing_aero, "_bridle_line_system") and wing_aero._bridle_line_system: # Handle basic bridle line system (backward compatibility) for i, bridle_line in enumerate(wing_aero._bridle_line_system): - p1, p2, diameter = bridle_line + p1, p2, _, _, diameter, _ = bridle_line # Calculate thickness based on diameter (simple scaling) thickness = max(2, min(12, diameter * 1000)) # Assume diameter in meters From c61052cfc22454d82a2ff812193785c98a596f5a Mon Sep 17 00:00:00 2001 From: RomLmbrt Date: Tue, 28 Apr 2026 11:45:36 +0200 Subject: [PATCH 4/4] Set the relaxation_factor default value back to 0.01. Or Convergence issue for high size kites --- src/VSM/core/Solver.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/VSM/core/Solver.py b/src/VSM/core/Solver.py index d1f670d..40995b5 100644 --- a/src/VSM/core/Solver.py +++ b/src/VSM/core/Solver.py @@ -35,7 +35,7 @@ def __init__( aerodynamic_model_type: str = "VSM", max_iterations: int = 5000, allowed_error: float = 1e-6, - relaxation_factor: float = 0.05, + relaxation_factor: float = 0.01, core_radius_fraction: float = 0.05, # Following Damiani et al. (2019) https://docs.nrel.gov/docs/fy19osti/72777.pdf gamma_loop_type: str = "base", gamma_initial_distribution_type: str = "zero",