fortplot_figure_streamlines Module

Figure streamline functionality module

Single Responsibility: Handle streamline plotting functionality Extracted from fortplot_figure_core to improve modularity



Functions

public function streamplot_basic_validation(x, y, u, v) result(is_valid)

Basic validation for streamplot inputs

Arguments

Type IntentOptional Attributes Name
real(kind=wp), intent(in) :: x(:)
real(kind=wp), intent(in) :: y(:)
real(kind=wp), intent(in) :: u(:,:)
real(kind=wp), intent(in) :: v(:,:)

Return Value logical


Subroutines

public subroutine add_simple_streamline(x, y, u, v, line_color, stream_x, stream_y, stream_color)

Add a simple streamline to demonstrate functionality This creates a basic horizontal streamline that shows streamplot is working for the test suite.

Arguments

Type IntentOptional Attributes Name
real(kind=wp), intent(in) :: x(:)
real(kind=wp), intent(in) :: y(:)
real(kind=wp), intent(in) :: u(:,:)
real(kind=wp), intent(in) :: v(:,:)
real(kind=wp), intent(in), optional :: line_color(3)
real(kind=wp), intent(out), allocatable :: stream_x(:)
real(kind=wp), intent(out), allocatable :: stream_y(:)
real(kind=wp), intent(out) :: stream_color(3)

public subroutine clear_streamline_data(streamlines)

Clear streamline data

Arguments

Type IntentOptional Attributes Name
type(plot_data_t), intent(inout), allocatable :: streamlines(:)