三角形頂点と前計算幾何量、要素電荷を保持する境界要素メッシュ型。
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| integer(kind=i32), | public | :: | nelem | = | 0 | ||
| real(kind=dp), | public, | allocatable | :: | v0(:,:) | |||
| real(kind=dp), | public, | allocatable | :: | v1(:,:) | |||
| real(kind=dp), | public, | allocatable | :: | v2(:,:) | |||
| real(kind=dp), | public, | allocatable | :: | centers(:,:) | |||
| real(kind=dp), | public, | allocatable | :: | center_x(:) | |||
| real(kind=dp), | public, | allocatable | :: | center_y(:) | |||
| real(kind=dp), | public, | allocatable | :: | center_z(:) | |||
| real(kind=dp), | public, | allocatable | :: | normals(:,:) | |||
| real(kind=dp), | public, | allocatable | :: | bb_min(:,:) | |||
| real(kind=dp), | public, | allocatable | :: | bb_max(:,:) | |||
| real(kind=dp), | public, | allocatable | :: | h_elem(:) | |||
| real(kind=dp), | public, | allocatable | :: | q_elem(:) | |||
| integer(kind=i32), | public, | allocatable | :: | elem_mesh_id(:) | |||
| real(kind=dp), | public | :: | grid_bb_min(3) | = | 0.0d0 | ||
| real(kind=dp), | public | :: | grid_bb_max(3) | = | 0.0d0 | ||
| integer(kind=i32), | public | :: | grid_ncell(3) | = | 1_i32 | ||
| real(kind=dp), | public | :: | grid_inv_cell(3) | = | 1.0d0 | ||
| integer(kind=i32), | public, | allocatable | :: | grid_cell_start(:) | |||
| integer(kind=i32), | public, | allocatable | :: | grid_cell_elem(:) | |||
| logical, | public | :: | use_collision_grid | = | .false. | ||
| logical, | public | :: | periodic2_collision_ready | = | .false. |
type :: mesh_type integer(i32) :: nelem = 0 real(dp), allocatable :: v0(:, :) real(dp), allocatable :: v1(:, :) real(dp), allocatable :: v2(:, :) real(dp), allocatable :: centers(:, :) real(dp), allocatable :: center_x(:) real(dp), allocatable :: center_y(:) real(dp), allocatable :: center_z(:) real(dp), allocatable :: normals(:, :) real(dp), allocatable :: bb_min(:, :) real(dp), allocatable :: bb_max(:, :) real(dp), allocatable :: h_elem(:) real(dp), allocatable :: q_elem(:) integer(i32), allocatable :: elem_mesh_id(:) real(dp) :: grid_bb_min(3) = 0.0d0 real(dp) :: grid_bb_max(3) = 0.0d0 integer(i32) :: grid_ncell(3) = 1_i32 real(dp) :: grid_inv_cell(3) = 1.0d0 integer(i32), allocatable :: grid_cell_start(:) integer(i32), allocatable :: grid_cell_elem(:) logical :: use_collision_grid = .false. logical :: periodic2_collision_ready = .false. end type mesh_type