Skip to content

fossil_block_object

FOSSIL cartesian block class definition.

Source: src/lib/fossil_block_object.f90

Dependencies

Contents

Derived Types

block_object

Cartesian block class definition.

Components

NameTypeAttributesDescription
bmintype(vector_R8P)Bounding box extents.
bmaxtype(vector_R8P)Bounding box extents.
niinteger(kind=I4P)Grid dimensions where distance is computed exactly.
njinteger(kind=I4P)Grid dimensions where distance is computed exactly.
nkinteger(kind=I4P)Grid dimensions where distance is computed exactly.
giinteger(kind=I4P)Frame around the grid where distance is computed exactly.
gjinteger(kind=I4P)Frame around the grid where distance is computed exactly.
gkinteger(kind=I4P)Frame around the grid where distance is computed exactly.
eiinteger(kind=I4P)Extrapolation of the grid where distance is extraplated.
ejinteger(kind=I4P)Extrapolation of the grid where distance is extraplated.
ekinteger(kind=I4P)Extrapolation of the grid where distance is extraplated.
Dxreal(kind=R8P)Space steps.
Dyreal(kind=R8P)Space steps.
Dzreal(kind=R8P)Space steps.
refinement_levelsinteger(kind=I4P)Total number of refinement levels used.
Naabbinteger(kind=I4P)Number of AABB in each directions, 2**refinement_levels.
aabbtype(aabb_object)allocatableAABB refinement blocks.
nodestype(vector_R8P)allocatableGrid nodes.
centerstype(vector_R8P)allocatableGrid centers.
distancesreal(kind=R8P)allocatableDistance of grid centers to STL surface.

Type-Bound Procedures

NameAttributesDescription
compute_cells_centerspass(self)Compute cells centers from nodes.
compute_distancespass(self)Compute distances of cells centers from Immersed Boundary.
export_aabb_tecplot_asciipass(self)Export AABB boxes geometry into Tecplot ascii file.
export_vtk_filepass(self)Export block data into VTK file format.
export_xall_filespass(self)Export block data into XALL files format.
extrapolate_distancespass(self)Extrapolate the body-close distances in the body-far mesh.
get_closest_cells_indexespass(self)Get the closest cells indexes in the mesh given a point.
initializepass(self)Initialize block.
assignment(=)Overload =.
block_assign_blockpass(lhs)Operator =.

Subroutines

compute_cells_centers

Compute cells centers from nodes.

Attributes: pure

fortran
subroutine compute_cells_centers(self)

Arguments

NameTypeIntentAttributesDescription
selfclass(block_object)inoutBlock.

Call graph

compute_distances

Compute distances of cells centers from Immersed Boundary.

fortran
subroutine compute_distances(self, surface_stl, is_signed, sign_algorithm, invert_sign)

Arguments

NameTypeIntentAttributesDescription
selfclass(block_object)inoutBlock.
surface_stltype(surface_stl_object)inSTL surface.
is_signedlogicalinSigned distance or not.
sign_algorithmcharacter(len=*)inAlgorithm used for "point in polyhedron" test.
invert_signlogicalinoptionalInvert sign of distances.

Call graph

export_aabb_tecplot_ascii

Export AABB boxes geometry into Tecplot ascii file.

fortran
subroutine export_aabb_tecplot_ascii(self, file_name)

Arguments

NameTypeIntentAttributesDescription
selfclass(block_object)inBlock.
file_namecharacter(len=*)inFile name.

Call graph

export_vtk_file

Export block data into VTK file format.

fortran
subroutine export_vtk_file(self, file_name)

Arguments

NameTypeIntentAttributesDescription
selfclass(block_object)inBlock.
file_namecharacter(len=*)inFile name.

Call graph

export_xall_files

Export block data into XALL files format.

fortran
subroutine export_xall_files(self, basename)

Arguments

NameTypeIntentAttributesDescription
selfclass(block_object)inBlock.
basenamecharacter(len=*)inBase files name.

extrapolate_distances

Extrapolate the body-close distances in the body-far mesh.

fortran
subroutine extrapolate_distances(self)

Arguments

NameTypeIntentAttributesDescription
selfclass(block_object)inoutBlock.

Call graph

get_closest_cells_indexes

Get the closest cells indexes in the mesh given a point.

fortran
subroutine get_closest_cells_indexes(self, point, cindexes)

Arguments

NameTypeIntentAttributesDescription
selfclass(block_object)inBlock
pointtype(vector_R8P)inPoint coordinates.
cindexesinteger(kind=I4P)outIndexes (i,j,k) of the Nc closest cells.

Call graph

initialize

Initialize block.

Attributes: pure

fortran
subroutine initialize(self, bmin, bmax, ni, nj, nk, gi, gj, gk, ei, ej, ek, refinement_levels)

Arguments

NameTypeIntentAttributesDescription
selfclass(block_object)inoutBlock
bmintype(vector_R8P)inoptionalBounding box extents.
bmaxtype(vector_R8P)inoptionalBounding box extents.
niinteger(kind=I4P)inoptionalGrid dimensions where distance is computed exactly.
njinteger(kind=I4P)inoptionalGrid dimensions where distance is computed exactly.
nkinteger(kind=I4P)inoptionalGrid dimensions where distance is computed exactly.
giinteger(kind=I4P)inoptionalFrame around the grid where distance is computed exactly.
gjinteger(kind=I4P)inoptionalFrame around the grid where distance is computed exactly.
gkinteger(kind=I4P)inoptionalFrame around the grid where distance is computed exactly.
eiinteger(kind=I4P)inoptionalExtrapolation of the grid where distance is extraplated.
ejinteger(kind=I4P)inoptionalExtrapolation of the grid where distance is extraplated.
ekinteger(kind=I4P)inoptionalExtrapolation of the grid where distance is extraplated.
refinement_levelsinteger(kind=I4P)inoptionalTotal number of refinement levels used.

Call graph

block_assign_block

Operator =.

Attributes: pure

fortran
subroutine block_assign_block(lhs, rhs)

Arguments

NameTypeIntentAttributesDescription
lhsclass(block_object)inoutLeft hand side.
rhstype(block_object)inRight hand side.