group Derived Type

type, public :: group


Contents


Type-Bound Procedures

procedure, public :: get_info

  • private subroutine get_info(G)

    Arguments

    Type IntentOptional AttributesName
    class(group), intent(in) :: G

generic, public :: get_name => get_name_grp

  • private function get_name_grp(G) result(my_name)

    Arguments

    Type IntentOptional AttributesName
    class(group), intent(in) :: G

    Return Value character(len=max_char_length)

generic, public :: set_name => set_name_grp

  • private subroutine set_name_grp(G, my_name)

    Arguments

    Type IntentOptional AttributesName
    class(group), intent(inout) :: G
    character(len=*), intent(in) :: my_name

generic, public :: draw => draw_grp

  • private subroutine draw_grp(G, filename, tnname, label_bond, fixed, check_tag)

    Arguments

    Type IntentOptional AttributesName
    class(group), intent(in) :: G
    character(len=*), intent(in) :: filename
    character(len=*), intent(in) :: tnname
    logical, intent(in), optional :: label_bond
    logical, intent(in), optional :: fixed
    logical, intent(in), optional :: check_tag

generic, public :: empty => empty_grp

  • private subroutine empty_grp(G)

    Arguments

    Type IntentOptional AttributesName
    class(group), intent(inout) :: G

procedure, public :: check_can_take

  • private subroutine check_can_take(G, G2)

    Arguments

    Type IntentOptional AttributesName
    class(group), intent(in) :: G
    class(group), intent(in) :: G2

generic, public :: take => take_pos, take_name, take_group

  • private subroutine take_pos(G, pos)

    Arguments

    Type IntentOptional AttributesName
    class(group), intent(inout) :: G
    integer, intent(in) :: pos(2)
  • private subroutine take_name(G, name)

    Arguments

    Type IntentOptional AttributesName
    class(group), intent(inout) :: G
    character(len=*), intent(in) :: name
  • private subroutine take_group(G, G2)

    Arguments

    Type IntentOptional AttributesName
    class(group), intent(inout) :: G
    class(group), intent(in) :: G2

generic, public :: check_contain => check_contain_grp_pos, check_contain_grp_name

  • private function check_contain_grp_pos(G, pos) result(ct)

    Arguments

    Type IntentOptional AttributesName
    class(group), intent(in) :: G
    integer, intent(in) :: pos(2)

    Return Value logical

  • private function check_contain_grp_name(G, name) result(ct)

    Arguments

    Type IntentOptional AttributesName
    class(group), intent(in) :: G
    character(len=*), intent(in) :: name

    Return Value logical

generic, public :: belong => belong_group

  • private subroutine belong_group(G, L)

    Arguments

    Type IntentOptional AttributesName
    class(group), intent(inout) :: G
    class(lattice), intent(in), target:: L

generic, public :: assignment(=) => copy_grp

  • private subroutine copy_grp(G1, G2)

    Arguments

    Type IntentOptional AttributesName
    class(group), intent(inout) :: G1
    type(group), intent(in) :: G2

procedure, public :: get_names

  • private function get_names(G) result(names)

    Arguments

    Type IntentOptional AttributesName
    class(group), intent(in) :: G

    Return Value character(len=max_char_length), allocatable, (:)

generic, public :: get_num => get_num_group

  • private function get_num_group(G) result(num)

    Arguments

    Type IntentOptional AttributesName
    class(group), intent(in) :: G

    Return Value integer

procedure, public :: point_lat

  • private subroutine point_lat(G, L)

    Arguments

    Type IntentOptional AttributesName
    class(group), intent(in), target:: G
    type(lattice), intent(inout), pointer:: L

generic, public :: invert_bond => invert_bond_grp

  • private subroutine invert_bond_grp(G, T)

    Arguments

    Type IntentOptional AttributesName
    class(group), intent(in) :: G
    class(tensor), intent(inout) :: T

procedure, public :: get_dangle_inds

  • private function get_dangle_inds(G, pos) result(inds)

    Arguments

    Type IntentOptional AttributesName
    class(group), intent(in) :: G
    integer, intent(in) :: pos(2)

    Return Value character(len=max_char_length), allocatable, (:)

generic, public :: get_lattice_link => get_lattice_link_grp

  • private subroutine get_lattice_link_grp(G, L)

    Arguments

    Type IntentOptional AttributesName
    class(group), intent(in), target:: G
    type(lattice), intent(inout), pointer:: L