vector_field_plot_data Derived Type

type, public, extends(plot_data_colored) :: vector_field_plot_data

Defines a two-dimensional vector-field plot data set.


Contents


Type-Bound Procedures

procedure, public :: define_data => vfpd_define_data

  • private subroutine vfpd_define_data(this, x, y, dx, dy, c, err)

    Defines the data set.

    Arguments

    Type IntentOptional Attributes Name
    class(vector_field_plot_data), intent(inout) :: this

    The vector_field_plot_data object.

    real(kind=real64), intent(in), dimension(:,:) :: x

    An M-by-N matrix containing the x-locations of each arrow's origin.

    real(kind=real64), intent(in), dimension(:,:) :: y

    An M-by-N matrix containing the y-locations of each arrow's origin.

    real(kind=real64), intent(in), dimension(:,:) :: dx

    An M-by-N matrix containing the x-direction of each arrow.

    real(kind=real64), intent(in), dimension(:,:) :: dy

    An M-by-N matrix containing the y-direction of each arrow.

    real(kind=real64), intent(in), optional, dimension(:,:) :: c

    An optional M-by-N matrix containing information on how to color the arrows. The colors are determined by the active colormap.

    class(errors), intent(inout), optional, target :: err

    An error handling object.

procedure, public :: get_arrow_size => vfpd_get_arrow_size

  • private pure function vfpd_get_arrow_size(this) result(rst)

    Gets the scaling factor used to determine the arrow size.

    Arguments

    Type IntentOptional Attributes Name
    class(vector_field_plot_data), intent(in) :: this

    The vector_field_plot_data object.

    Return Value real(kind=real64)

    The scaling factor.

procedure, public :: get_color_index => pdc_get_color_index

  • private pure function pdc_get_color_index(this) result(x)

    Gets the color index.

    Arguments

    Type IntentOptional Attributes Name
    class(plot_data_colored), intent(in) :: this

    The plot_data_colored object.

    Return Value integer(kind=int32)

    The index value.

procedure, public :: get_command_string => vfpd_get_cmd

  • private function vfpd_get_cmd(this) result(x)

    Gets the GNUPLOT command string to represent this vector_field_plot_data object.

    Arguments

    Type IntentOptional Attributes Name
    class(vector_field_plot_data), intent(in) :: this

    The vector_field_plot_data object.

    Return Value character(len=:), allocatable

    The command string.

procedure, public :: get_data_string => vfpd_get_data_cmd

  • private function vfpd_get_data_cmd(this) result(x)

    Gets the GNUPLOT command string containing the actual data to plot.

    Arguments

    Type IntentOptional Attributes Name
    class(vector_field_plot_data), intent(in) :: this

    The vector_field_plot_data object.

    Return Value character(len=:), allocatable

    The command string.

procedure, public :: get_fill_arrow => vfpd_get_fill_arrow

  • private pure function vfpd_get_fill_arrow(this) result(rst)

    Gets a value determining if the arrow heads should be filled.

    Arguments

    Type IntentOptional Attributes Name
    class(vector_field_plot_data), intent(in) :: this

    The vector_field_plot_data object.

    Return Value logical

    True if the arrow heads should be filled; else, false.

procedure, public :: get_line_color => pdc_get_line_color

  • private pure function pdc_get_line_color(this) result(x)

    Gets the object color.

    Arguments

    Type IntentOptional Attributes Name
    class(plot_data_colored), intent(in) :: this

    The plot_data_colored object.

    Return Value type(color)

    The color.

procedure, public :: get_name => pd_get_name

  • private pure function pd_get_name(this) result(txt)

    Gets the name to associate with this data set.

    Arguments

    Type IntentOptional Attributes Name
    class(plot_data), intent(in) :: this

    The plot_data object.

    Return Value character(len=:), allocatable

    The name.

procedure, public :: get_use_data_dependent_colors => vfpd_get_use_data_dependent_colors

  • private pure function vfpd_get_use_data_dependent_colors(this) result(rst)

    Gets a value indicating if data-dependent coloring should be used. This is defined by supplying information on how to scale the coloring when calling define_data.

    Arguments

    Type IntentOptional Attributes Name
    class(vector_field_plot_data), intent(in) :: this

    The vector_field_plot_data object.

    Return Value logical

    Returns true if data-dependent coloring is being used; else, false.

procedure, public :: set_arrow_size => vfpd_set_arrow_size

  • private subroutine vfpd_set_arrow_size(this, x)

    Sets the scaling factor used to determine the arrow size.

    Arguments

    Type IntentOptional Attributes Name
    class(vector_field_plot_data), intent(inout) :: this

    The vector_field_plot_data object.

    real(kind=real64), intent(in) :: x

    The scaling factor.

procedure, public :: set_color_index => pdc_set_color_index

  • private subroutine pdc_set_color_index(this, x)

    Sets the color index.

    Arguments

    Type IntentOptional Attributes Name
    class(plot_data_colored), intent(inout) :: this

    The plot_data_colored object.

    integer(kind=int32), intent(in) :: x

    The index value.

procedure, public :: set_fill_arrow => vfpd_set_fill_arrow

  • private subroutine vfpd_set_fill_arrow(this, x)

    Sets a value determining if the arrow heads should be filled.

    Arguments

    Type IntentOptional Attributes Name
    class(vector_field_plot_data), intent(inout) :: this

    The vector_field_plot_data object.

    logical, intent(in) :: x

    True if the arrow heads should be filled; else, false.

procedure, public :: set_line_color => pdc_set_line_color

  • private subroutine pdc_set_line_color(this, x)

    Sets the object color.

    Arguments

    Type IntentOptional Attributes Name
    class(plot_data_colored), intent(inout) :: this

    The plot_data_colored object.

    type(color), intent(in) :: x

    The color.

procedure, public :: set_name => pd_set_name

  • private subroutine pd_set_name(this, txt)

    Sets the name to associate with this data set.

    Arguments

    Type IntentOptional Attributes Name
    class(plot_data), intent(inout) :: this

    The plot_data object.

    character(len=*), intent(in) :: txt

    The name.