sdr_spatialObj_module Module

Module to describe geometrical objects in Seeder.

The sdr_spatialObj_type is used to build up a list of all geometric objects to be considered in the mesh generation. They serve as a pointer to more detailed descriptions of the actual geometrical representation.


Uses

  • module~~sdr_spatialobj_module~~UsesGraph module~sdr_spatialobj_module sdr_spatialObj_module module~env_module env_module module~sdr_spatialobj_module->module~env_module

Used by

  • module~~sdr_spatialobj_module~~UsedByGraph module~sdr_spatialobj_module sdr_spatialObj_module module~sdr_sphere_module sdr_sphere_module module~sdr_sphere_module->module~sdr_spatialobj_module module~sdr_prototree_module sdr_protoTree_module module~sdr_prototree_module->module~sdr_spatialobj_module module~sdr_geometry_module sdr_geometry_module module~sdr_prototree_module->module~sdr_geometry_module module~sdr_node_module sdr_node_module module~sdr_prototree_module->module~sdr_node_module module~sdr_config_module sdr_config_module module~sdr_prototree_module->module~sdr_config_module module~sdr_triangle_module sdr_triangle_module module~sdr_triangle_module->module~sdr_spatialobj_module module~sdr_refinept_module sdr_refinePT_module module~sdr_refinept_module->module~sdr_spatialobj_module module~sdr_refinept_module->module~sdr_prototree_module module~sdr_refinept_module->module~sdr_geometry_module module~sdr_refinept_module->module~sdr_node_module module~sdr_refinept_module->module~sdr_config_module module~sdr_periodic_module sdr_periodic_module module~sdr_periodic_module->module~sdr_spatialobj_module module~sdr_geometry_module->module~sdr_spatialobj_module module~sdr_geometry_module->module~sdr_sphere_module module~sdr_geometry_module->module~sdr_triangle_module module~sdr_geometry_module->module~sdr_periodic_module module~sdr_ellipsoid_module sdr_ellipsoid_module module~sdr_geometry_module->module~sdr_ellipsoid_module module~sdr_cylinder_module sdr_cylinder_module module~sdr_geometry_module->module~sdr_cylinder_module module~sdr_spacer_module sdr_spacer_module module~sdr_geometry_module->module~sdr_spacer_module module~sdr_stl_module sdr_stl_module module~sdr_geometry_module->module~sdr_stl_module module~sdr_canonicalnd_module sdr_canonicalND_module module~sdr_geometry_module->module~sdr_canonicalnd_module module~sdr_ellipsoid_module->module~sdr_spatialobj_module module~sdr_boundary_module sdr_boundary_module module~sdr_boundary_module->module~sdr_spatialobj_module module~sdr_boundary_module->module~sdr_prototree_module module~sdr_boundary_module->module~sdr_periodic_module module~sdr_boundary_module->module~sdr_geometry_module module~sdr_boundary_module->module~sdr_node_module module~sdr_cylinder_module->module~sdr_spatialobj_module module~sdr_spacer_module->module~sdr_spatialobj_module module~sdr_spacer_module->module~sdr_cylinder_module module~sdr_stl_module->module~sdr_spatialobj_module module~sdr_canonicalnd_module->module~sdr_spatialobj_module module~sdr_proto2treelm_module sdr_proto2treelm_module module~sdr_proto2treelm_module->module~sdr_prototree_module module~sdr_proto2treelm_module->module~sdr_periodic_module module~sdr_proto2treelm_module->module~sdr_geometry_module module~sdr_proto2treelm_module->module~sdr_boundary_module module~sdr_proto2treelm_module->module~sdr_node_module module~sdr_proto2treelm_module->module~sdr_config_module program~seeder seeder program~seeder->module~sdr_prototree_module program~seeder->module~sdr_refinept_module program~seeder->module~sdr_geometry_module program~seeder->module~sdr_proto2treelm_module module~sdr_flooding_module sdr_flooding_module program~seeder->module~sdr_flooding_module program~seeder->module~sdr_config_module module~sdr_node_module->module~sdr_geometry_module module~sdr_flooding_module->module~sdr_prototree_module module~sdr_flooding_module->module~sdr_geometry_module module~sdr_flooding_module->module~sdr_boundary_module module~sdr_flooding_module->module~sdr_node_module module~sdr_flooding_module->module~sdr_config_module module~sdr_config_module->module~sdr_geometry_module

Contents


Variables

TypeVisibilityAttributesNameInitial
integer, public, parameter:: point =1
integer, public, parameter:: line =2
integer, public, parameter:: triangle =3
integer, public, parameter:: box =4
integer, public, parameter:: periodicPlane =5
integer, public, parameter:: sphere =6
integer, public, parameter:: cylinder =7
integer, public, parameter:: spacerInterwoven =8
integer, public, parameter:: ellipsoid =9

Interfaces

public interface init

initialize the dynamic array

public interface truncate

truncate the array, meaning cut off the trailing empty entries

public interface empty

empty the entries without changing arrays

public interface destroy

destroy the dynamic array

public interface placeat

insert an element at a given position

public interface append

append a value to the dynamic array and return its position.

private interface expand

increase the size of the container for the array.

  • private subroutine expand_ga_spatialobj(me, pos, length)

    Arguments

    TypeIntentOptionalAttributesName
    type(grw_spatialobjarray_type) :: me
    integer, intent(in), optional :: pos
    integer, intent(in), optional :: length

    optional length to expand the array


Derived Types

type, public :: sdr_spatialObj_type

This data type describes a geometric object generically.

Read more…

Components

TypeVisibilityAttributesNameInitial
integer, private :: attribute_position

Position of the attribute in the list of attributes, this object should be attached to.

integer, private :: geometry_primitive

What kind of geometric primitive is this object?

Read more…
integer, private :: primitive_position

Position in the list of correspoding primitive.

type, public :: grw_spatialobjarray_type

growing array type for type(sdr_spatialobj_type)

Components

TypeVisibilityAttributesNameInitial
integer, private :: nvals =0
integer, private :: containersize =0
type(sdr_spatialObj_type), private, allocatable:: val(:)

Subroutines

private subroutine init_ga_spatialobj(me, length)

Arguments

TypeIntentOptionalAttributesName
type(grw_spatialobjarray_type), intent(out) :: me
integer, intent(in), optional :: length

private subroutine destroy_ga_spatialobj(me)

Arguments

TypeIntentOptionalAttributesName
type(grw_spatialobjarray_type), intent(inout) :: me

private subroutine truncate_ga_spatialobj(me)

Arguments

TypeIntentOptionalAttributesName
type(grw_spatialobjarray_type) :: me

private subroutine empty_ga_spatialobj(me)

Arguments

TypeIntentOptionalAttributesName
type(grw_spatialobjarray_type) :: me

private subroutine placeat_ga_spatialobj(me, val, pos, length)

adds the value to a given position inside the growing array.

Read more…

Arguments

TypeIntentOptionalAttributesName
type(grw_spatialobjarray_type) :: me
type(sdr_spatialObj_type), intent(in) :: val
integer, intent(in) :: pos
integer, intent(in), optional :: length

optional length to expand the array

private subroutine placeat_ga_spatialobj_vec(me, val, pos, length)

adds the values starting from a given position inside the growing array.

Read more…

Arguments

TypeIntentOptionalAttributesName
type(grw_spatialobjarray_type) :: me
type(sdr_spatialObj_type), intent(in) :: val(:)
integer, intent(in) :: pos
integer, intent(in), optional :: length

optional length to expand the array

private subroutine append_ga_spatialobj(me, val, length)

Arguments

TypeIntentOptionalAttributesName
type(grw_spatialobjarray_type) :: me
type(sdr_spatialObj_type), intent(in) :: val
integer, intent(in), optional :: length

optional length to expand the array

private subroutine append_ga_spatialobj_vec(me, val, length)

Arguments

TypeIntentOptionalAttributesName
type(grw_spatialobjarray_type) :: me
type(sdr_spatialObj_type), intent(in) :: val(:)
integer, intent(in), optional :: length

optional length to expand the array

private subroutine expand_ga_spatialobj(me, pos, length)

Arguments

TypeIntentOptionalAttributesName
type(grw_spatialobjarray_type) :: me
integer, intent(in), optional :: pos
integer, intent(in), optional :: length

optional length to expand the array