FrontISTR  5.7.0
Large-scale structural analysis program with finit element method
hecmw_couple_f.f90
Go to the documentation of this file.
1 !-------------------------------------------------------------------------------
2 ! Copyright (c) 2019 FrontISTR Commons
3 ! This software is released under the MIT License, see LICENSE.txt
4 !-------------------------------------------------------------------------------
6 
8 
9  use hecmw_util
13 
14  implicit none
15  private
16  public :: hecmw_couple
17 
18 contains
19 
20 subroutine hecmw_couple(boundary_id, couple_value)
21 
22  character(len=HECMW_NAME_LEN), intent(in) :: boundary_id
23  type(hecmw_couple_value), intent(inout) :: couple_value
24  integer(kind=kint) :: ierr
25 
26  call hecmw_couple_exec_init_if(ierr)
27  if(ierr /= 0) call hecmw_abort(hecmw_comm_get_comm())
28 
29  call hecmw_couple_copy_f2c(couple_value, ierr)
30  if(ierr /= 0) call hecmw_abort(hecmw_comm_get_comm())
31 
32  call hecmw_couple_if(boundary_id, ierr)
33  if(ierr /= 0) call hecmw_abort(hecmw_comm_get_comm())
34 
35  call hecmw_couple_copy_c2f(couple_value, ierr)
36  if(ierr /= 0) call hecmw_abort(hecmw_comm_get_comm())
37 
39  if(ierr /= 0) call hecmw_abort(hecmw_comm_get_comm())
40 
41 end subroutine hecmw_couple
42 
43 end module hecmw_couple_f
hecmw_couple_f::hecmw_couple
subroutine, public hecmw_couple(boundary_id, couple_value)
Definition: hecmw_couple_f.f90:21
hecmw_couple_copy_f2c_f
Coupling Interface.
Definition: hecmw_couple_copy_f2c_f.f90:7
hecmw_util::hecmw_abort
subroutine hecmw_abort(comm)
Definition: hecmw_util_f.F90:534
hecmw_couple_copy_c2f_f::hecmw_couple_copy_c2f
subroutine, public hecmw_couple_copy_c2f(couple_value, ierr)
Definition: hecmw_couple_copy_c2f_f.f90:20
hecmw_couple_exec_init_if
void hecmw_couple_exec_init_if(int *err)
Definition: hecmw_couple_if.c:21
hecmw_couple_if
void hecmw_couple_if(char *boundary_id, int *err, int len)
Definition: hecmw_couple_if.c:44
hecmw_couple_exec_finalize_if
void hecmw_couple_exec_finalize_if(int *err)
Definition: hecmw_couple_if.c:71
hecmw_util
I/O and Utility.
Definition: hecmw_util_f.F90:7
hecmw_couple_f
Coupling Interface.
Definition: hecmw_couple_f.f90:7
hecmw_couple_copy_f2c_f::hecmw_couple_copy_f2c
subroutine, public hecmw_couple_copy_f2c(couple_value, ierr)
Definition: hecmw_couple_copy_f2c_f.f90:19
hecmw_couple_struct_f
Coupling Interface.
Definition: hecmw_couple_struct_f.f90:7
hecmw_couple_value
Definition: hecmw_couple_startup.h:9
hecmw_util::hecmw_comm_get_comm
integer(kind=kint) function hecmw_comm_get_comm()
Definition: hecmw_util_f.F90:571
hecmw_couple_copy_c2f_f
Coupling Interface.
Definition: hecmw_couple_copy_c2f_f.f90:7