Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,13 @@ endif(C_WRAPPER)
if(FORTRAN_WRAPPER)
message("-- MUI Fortran wrapper: Selected")

find_package(MPI REQUIRED)
if(MPI_FOUND)
include_directories(SYSTEM ${MPI_INCLUDE_PATH})
elseif(NOT MPI_FOUND)
message(SEND_ERROR "MPI not found")
endif(MPI_FOUND)

check_language(Fortran)
if(CMAKE_Fortran_COMPILER)
enable_language(Fortran)
Expand Down
4 changes: 1 addition & 3 deletions src/mui.h
Original file line number Diff line number Diff line change
Expand Up @@ -63,9 +63,9 @@
//Include temporal samplers
#include "samplers/temporal/temporal_sampler_exact.h"
#include "samplers/temporal/temporal_sampler_gauss.h"
#include "samplers/temporal/temporal_sampler_gauss_adaptive.h"
#include "samplers/temporal/temporal_sampler_mean.h"
#include "samplers/temporal/temporal_sampler_sum.h"
#include "samplers/temporal/temporal_sampler_linear.h"

//Include coupling algorithms
#include "samplers/algorithm/algo_fixed_relaxation.h"
Expand Down Expand Up @@ -120,7 +120,6 @@ namespace mui {
DECLARE_SAMPLER_0ARG(temporal_sampler_gauss,SUFFIX,config_##SUFFIX);\
DECLARE_SAMPLER_0ARG(temporal_sampler_sum,SUFFIX,config_##SUFFIX);\
DECLARE_SAMPLER_0ARG(temporal_sampler_mean,SUFFIX,config_##SUFFIX);\
DECLARE_SAMPLER_0ARG(temporal_sampler_linear,SUFFIX,config_##SUFFIX);\
DECLARE_SAMPLER_0ARG(algo_fixed_relaxation,SUFFIX,config_##SUFFIX);\
DECLARE_SAMPLER_0ARG(algo_aitken,SUFFIX,config_##SUFFIX);\
namespace geometry {\
Expand Down Expand Up @@ -162,7 +161,6 @@ SPECIALIZE(3fx,float,int64_t,3);
DECLARE_SAMPLER_0ARG(temporal_sampler_gauss,SUFFIX,CONFIG);\
DECLARE_SAMPLER_0ARG(temporal_sampler_sum,SUFFIX,CONFIG);\
DECLARE_SAMPLER_0ARG(temporal_sampler_mean,SUFFIX,CONFIG);\
DECLARE_SAMPLER_0ARG(temporal_sampler_linear,SUFFIX,CONFIG);\
DECLARE_SAMPLER_0ARG(algo_fixed_relaxation,SUFFIX,CONFIG);\
DECLARE_SAMPLER_0ARG(algo_aitken,SUFFIX,CONFIG);\
}
Expand Down
100 changes: 50 additions & 50 deletions wrappers/Fortran/mui_f_wrapper_1d.f90
Original file line number Diff line number Diff line change
Expand Up @@ -13865,62 +13865,62 @@ end subroutine mui_announce_recv_disable_1t_f
subroutine mui_barrier_1f_f(uniface,t) bind(C)
import :: c_ptr,c_float
type(c_ptr), intent(in), value :: uniface
real(kind=c_float), intent(in), value :: t
real(kind=c_float), intent(in) :: t
end subroutine mui_barrier_1f_f

subroutine mui_barrier_1fx_f(uniface,t) bind(C)
import :: c_ptr,c_float
type(c_ptr), intent(in), value :: uniface
real(kind=c_float), intent(in), value :: t
real(kind=c_float), intent(in) :: t
end subroutine mui_barrier_1fx_f

subroutine mui_barrier_1d_f(uniface,t) bind(C)
import :: c_ptr,c_double
type(c_ptr), intent(in), value :: uniface
real(kind=c_double), intent(in), value :: t
real(kind=c_double), intent(in) :: t
end subroutine mui_barrier_1d_f

subroutine mui_barrier_1dx_f(uniface,t) bind(C)
import :: c_ptr,c_double
type(c_ptr), intent(in), value :: uniface
real(kind=c_double), intent(in), value :: t
real(kind=c_double), intent(in) :: t
end subroutine mui_barrier_1dx_f

subroutine mui_barrier_1t_f(uniface,t) bind(C)
import :: c_ptr,c_double
type(c_ptr), intent(in), value :: uniface
real(kind=c_double), intent(in), value :: t
real(kind=c_double), intent(in) :: t
end subroutine mui_barrier_1t_f

!Barrier at two time values
subroutine mui_barrier_1f_pair_f(uniface,t,it) bind(C)
import :: c_ptr,c_float
type(c_ptr), intent(in), value :: uniface
real(kind=c_float), intent(in), value :: t,it
real(kind=c_float), intent(in) :: t,it
end subroutine mui_barrier_1f_pair_f

subroutine mui_barrier_1fx_pair_f(uniface,t,it) bind(C)
import :: c_ptr,c_float
type(c_ptr), intent(in), value :: uniface
real(kind=c_float), intent(in), value :: t,it
real(kind=c_float), intent(in) :: t,it
end subroutine mui_barrier_1fx_pair_f

subroutine mui_barrier_1d_pair_f(uniface,t,it) bind(C)
import :: c_ptr,c_double
type(c_ptr), intent(in), value :: uniface
real(kind=c_double), intent(in), value :: t,it
real(kind=c_double), intent(in) :: t,it
end subroutine mui_barrier_1d_pair_f

subroutine mui_barrier_1dx_pair_f(uniface,t,it) bind(C)
import :: c_ptr,c_double
type(c_ptr), intent(in), value :: uniface
real(kind=c_double), intent(in), value :: t,it
real(kind=c_double), intent(in) :: t,it
end subroutine mui_barrier_1dx_pair_f

subroutine mui_barrier_1t_pair_f(uniface,t,it) bind(C)
import :: c_ptr,c_double
type(c_ptr), intent(in), value :: uniface
real(kind=c_double), intent(in), value :: t,it
real(kind=c_double), intent(in) :: t,it
end subroutine mui_barrier_1t_pair_f

!******************************************
Expand All @@ -13931,144 +13931,144 @@ end subroutine mui_barrier_1t_pair_f
subroutine mui_forget_upper_1f_f(uniface,upper,reset_log) bind(C)
import :: c_ptr,c_int,c_float
type(c_ptr), intent(in), value :: uniface
real(kind=c_float), intent(in), value :: upper
integer(kind=c_int), intent(in), value :: reset_log
real(kind=c_float), intent(in) :: upper
integer(kind=c_int), intent(in) :: reset_log
end subroutine mui_forget_upper_1f_f

subroutine mui_forget_upper_1fx_f(uniface,upper,reset_log) bind(C)
import :: c_ptr,c_int,c_float
type(c_ptr), intent(in), value :: uniface
real(kind=c_float), intent(in), value :: upper
integer(kind=c_int), intent(in), value :: reset_log
real(kind=c_float), intent(in) :: upper
integer(kind=c_int), intent(in) :: reset_log
end subroutine mui_forget_upper_1fx_f

subroutine mui_forget_upper_1d_f(uniface,upper,reset_log) bind(C)
import :: c_ptr,c_int,c_double
type(c_ptr), intent(in), value :: uniface
real(kind=c_double), intent(in), value :: upper
integer(kind=c_int), intent(in), value :: reset_log
real(kind=c_double), intent(in) :: upper
integer(kind=c_int), intent(in) :: reset_log
end subroutine mui_forget_upper_1d_f

subroutine mui_forget_upper_1dx_f(uniface,upper,reset_log) bind(C)
import :: c_ptr,c_int,c_double
type(c_ptr), intent(in), value :: uniface
real(kind=c_double), intent(in), value :: upper
integer(kind=c_int), intent(in), value :: reset_log
real(kind=c_double), intent(in) :: upper
integer(kind=c_int), intent(in) :: reset_log
end subroutine mui_forget_upper_1dx_f

subroutine mui_forget_upper_1t_f(uniface,upper,reset_log) bind(C)
import :: c_ptr,c_int,c_double
type(c_ptr), intent(in), value :: uniface
real(kind=c_double), intent(in), value :: upper
integer(kind=c_int), intent(in), value :: reset_log
real(kind=c_double), intent(in) :: upper
integer(kind=c_int), intent(in) :: reset_log
end subroutine mui_forget_upper_1t_f

!Forget log between [-inf, -inf], [upper_1, upper_2]
subroutine mui_forget_upper_1f_pair_f(uniface,upper_1,upper_2,reset_log) bind(C)
import :: c_ptr,c_int,c_float
type(c_ptr), intent(in), value :: uniface
real(kind=c_float), intent(in), value :: upper_1,upper_2
integer(kind=c_int), intent(in), value :: reset_log
real(kind=c_float), intent(in) :: upper_1,upper_2
integer(kind=c_int), intent(in) :: reset_log
end subroutine mui_forget_upper_1f_pair_f

subroutine mui_forget_upper_1fx_pair_f(uniface,upper_1,upper_2,reset_log) bind(C)
import :: c_ptr,c_int,c_float
type(c_ptr), intent(in), value :: uniface
real(kind=c_float), intent(in), value :: upper_1,upper_2
integer(kind=c_int), intent(in), value :: reset_log
real(kind=c_float), intent(in) :: upper_1,upper_2
integer(kind=c_int), intent(in) :: reset_log
end subroutine mui_forget_upper_1fx_pair_f

subroutine mui_forget_upper_1d_pair_f(uniface,upper_1,upper_2,reset_log) bind(C)
import :: c_ptr,c_int,c_double
type(c_ptr), intent(in), value :: uniface
real(kind=c_double), intent(in), value :: upper_1,upper_2
integer(kind=c_int), intent(in), value :: reset_log
real(kind=c_double), intent(in) :: upper_1,upper_2
integer(kind=c_int), intent(in) :: reset_log
end subroutine mui_forget_upper_1d_pair_f

subroutine mui_forget_upper_1dx_pair_f(uniface,upper_1,upper_2,reset_log) bind(C)
import :: c_ptr,c_int,c_double
type(c_ptr), intent(in), value :: uniface
real(kind=c_double), intent(in), value :: upper_1,upper_2
integer(kind=c_int), intent(in), value :: reset_log
real(kind=c_double), intent(in) :: upper_1,upper_2
integer(kind=c_int), intent(in) :: reset_log
end subroutine mui_forget_upper_1dx_pair_f

subroutine mui_forget_upper_1t_pair_f(uniface,upper_1,upper_2,reset_log) bind(C)
import :: c_ptr,c_int,c_double
type(c_ptr), intent(in), value :: uniface
real(kind=c_double), intent(in), value :: upper_1,upper_2
integer(kind=c_int), intent(in), value :: reset_log
real(kind=c_double), intent(in) :: upper_1,upper_2
integer(kind=c_int), intent(in) :: reset_log
end subroutine mui_forget_upper_1t_pair_f

!Forget log between [lower, upper]
subroutine mui_forget_lower_upper_1f_f(uniface,lower,upper,reset_log) bind(C)
import :: c_ptr,c_int,c_float
type(c_ptr), intent(in), value :: uniface
real(kind=c_float), intent(in), value :: lower,upper
integer(kind=c_int), intent(in), value :: reset_log
real(kind=c_float), intent(in) :: lower,upper
integer(kind=c_int), intent(in) :: reset_log
end subroutine mui_forget_lower_upper_1f_f

subroutine mui_forget_lower_upper_1fx_f(uniface,lower,upper,reset_log) bind(C)
import :: c_ptr,c_int,c_float
type(c_ptr), intent(in), value :: uniface
real(kind=c_float), intent(in), value :: lower,upper
integer(kind=c_int), intent(in), value :: reset_log
real(kind=c_float), intent(in) :: lower,upper
integer(kind=c_int), intent(in) :: reset_log
end subroutine mui_forget_lower_upper_1fx_f

subroutine mui_forget_lower_upper_1d_f(uniface,lower,upper,reset_log) bind(C)
import :: c_ptr,c_int,c_double
type(c_ptr), intent(in), value :: uniface
real(kind=c_double), intent(in), value :: lower,upper
integer(kind=c_int), intent(in), value :: reset_log
real(kind=c_double), intent(in) :: lower,upper
integer(kind=c_int), intent(in) :: reset_log
end subroutine mui_forget_lower_upper_1d_f

subroutine mui_forget_lower_upper_1dx_f(uniface,lower,upper,reset_log) bind(C)
import :: c_ptr,c_int,c_double
type(c_ptr), intent(in), value :: uniface
real(kind=c_double), intent(in), value :: lower,upper
integer(kind=c_int), intent(in), value :: reset_log
real(kind=c_double), intent(in) :: lower,upper
integer(kind=c_int), intent(in) :: reset_log
end subroutine mui_forget_lower_upper_1dx_f

subroutine mui_forget_lower_upper_1t_f(uniface,lower,upper,reset_log) bind(C)
import :: c_ptr,c_int,c_double
type(c_ptr), intent(in), value :: uniface
real(kind=c_double), intent(in), value :: lower,upper
integer(kind=c_int), intent(in), value :: reset_log
real(kind=c_double), intent(in) :: lower,upper
integer(kind=c_int), intent(in) :: reset_log
end subroutine mui_forget_lower_upper_1t_f

!Forget log between [lower_1, lower_2], [upper_1, upper_2]
subroutine mui_forget_lower_upper_1f_pair_f(uniface,lower_1,lower_2,upper_1,upper_2,reset_log) bind(C)
import :: c_ptr,c_int,c_float
type(c_ptr), intent(in), value :: uniface
real(kind=c_float), intent(in), value :: lower_1,lower_2,upper_1,upper_2
integer(kind=c_int), intent(in), value :: reset_log
real(kind=c_float), intent(in) :: lower_1,lower_2,upper_1,upper_2
integer(kind=c_int), intent(in) :: reset_log
end subroutine mui_forget_lower_upper_1f_pair_f

subroutine mui_forget_lower_upper_1fx_pair_f(uniface,lower_1,lower_2,upper_1,upper_2,reset_log) bind(C)
import :: c_ptr,c_int,c_float
type(c_ptr), intent(in), value :: uniface
real(kind=c_float), intent(in), value :: lower_1,lower_2,upper_1,upper_2
integer(kind=c_int), intent(in), value :: reset_log
real(kind=c_float), intent(in) :: lower_1,lower_2,upper_1,upper_2
integer(kind=c_int), intent(in) :: reset_log
end subroutine mui_forget_lower_upper_1fx_pair_f

subroutine mui_forget_lower_upper_1d_pair_f(uniface,lower_1,lower_2,upper_1,upper_2,reset_log) bind(C)
import :: c_ptr,c_int,c_double
type(c_ptr), intent(in), value :: uniface
real(kind=c_double), intent(in), value :: lower_1,lower_2,upper_1,upper_2
integer(kind=c_int), intent(in), value :: reset_log
real(kind=c_double), intent(in) :: lower_1,lower_2,upper_1,upper_2
integer(kind=c_int), intent(in) :: reset_log
end subroutine mui_forget_lower_upper_1d_pair_f

subroutine mui_forget_lower_upper_1dx_pair_f(uniface,lower_1,lower_2,upper_1,upper_2,reset_log) bind(C)
import :: c_ptr,c_int,c_double
type(c_ptr), intent(in), value :: uniface
real(kind=c_double), intent(in), value :: lower_1,lower_2,upper_1,upper_2
integer(kind=c_int), intent(in), value :: reset_log
real(kind=c_double), intent(in) :: lower_1,lower_2,upper_1,upper_2
integer(kind=c_int), intent(in) :: reset_log
end subroutine mui_forget_lower_upper_1dx_pair_f

subroutine mui_forget_lower_upper_1t_pair_f(uniface,lower_1,lower_2,upper_1,upper_2,reset_log) bind(C)
import :: c_ptr,c_int,c_double
type(c_ptr), intent(in), value :: uniface
real(kind=c_double), intent(in), value :: lower_1,lower_2,upper_1,upper_2
integer(kind=c_int), intent(in), value :: reset_log
real(kind=c_double), intent(in) :: lower_1,lower_2,upper_1,upper_2
integer(kind=c_int), intent(in) :: reset_log
end subroutine mui_forget_lower_upper_1t_pair_f

!Set to forget log between [-inf, current-length] automatically
Expand Down
Loading