include(AddExample) include_directories(SYSTEM ${Sopt_INCLUDE_DIRS}) include_directories("${PROJECT_SOURCE_DIR}/cpp") add_example(gridding LIBRARIES libpurify NOTEST) add_example(image_wproj_chirp LIBRARIES libpurify NOTEST) add_example(compare_wprojection LIBRARIES libpurify NOTEST) add_example(generate_vis_data LIBRARIES libpurify NOTEST) add_example(plot_wkernel LIBRARIES libpurify NOTEST) add_example(wavelet_decomposition LIBRARIES libpurify NOTEST) add_example(histogram_equalisation LIBRARIES libpurify NOTEST) add_example(show_image LIBRARIES libpurify NOTEST) add_example(sdmm_m31_simulation LIBRARIES libpurify NOTEST) add_example(padmm_simulation LIBRARIES libpurify NOTEST) add_example(padmm_reweighted_simulation LIBRARIES libpurify NOTEST) add_example(sara_padmm_random_coverage LIBRARIES libpurify NOTEST) add_example(padmm_real_data LIBRARIES libpurify NOTEST ) add_example(padmm_random_coverage LIBRARIES libpurify NOTEST ) if(PURIFY_ARRAYFIRE) add_example(padmm_random_coverage_gpu padmm_random_coverage.cc LIBRARIES libpurify NOTEST ) target_compile_definitions(example_padmm_random_coverage_gpu PRIVATE PURIFY_GPU) endif() if(PURIFY_MPI) add_example(global_epsilon_replicated_grids_mpi padmm_mpi_random_coverage.cc NOTEST LIBRARIES libpurify ${Boost_FILESYSTEM_LIBRARY} ${Boost_SYSTEM_LIBRARY}) target_compile_definitions(example_global_epsilon_replicated_grids_mpi PRIVATE PURIFY_PADMM_ALGORITHM=2) add_example(local_epsilon_replicated_grids_mpi padmm_mpi_random_coverage.cc NOTEST LIBRARIES libpurify ${Boost_FILESYSTEM_LIBRARY} ${Boost_SYSTEM_LIBRARY}) target_compile_definitions(example_local_epsilon_replicated_grids_mpi PRIVATE PURIFY_PADMM_ALGORITHM=3) add_example(local_epsilon_distributed_grids_mpi padmm_mpi_random_coverage.cc NOTEST LIBRARIES libpurify ${Boost_FILESYSTEM_LIBRARY} ${Boost_SYSTEM_LIBRARY}) target_compile_definitions(example_local_epsilon_distributed_grids_mpi PRIVATE PURIFY_PADMM_ALGORITHM=1) add_example(global_epsilon_replicated_grids_real_data_mpi padmm_mpi_real_data.cc NOTEST LIBRARIES libpurify ${Boost_FILESYSTEM_LIBRARY} ${Boost_SYSTEM_LIBRARY}) target_compile_definitions(example_global_epsilon_replicated_grids_real_data_mpi PRIVATE PURIFY_PADMM_ALGORITHM=2) add_example(local_epsilon_replicated_grids_real_data_mpi padmm_mpi_real_data.cc NOTEST LIBRARIES libpurify ${Boost_FILESYSTEM_LIBRARY} ${Boost_SYSTEM_LIBRARY}) target_compile_definitions(example_local_epsilon_replicated_grids_real_data_mpi PRIVATE PURIFY_PADMM_ALGORITHM=3) add_example(local_epsilon_distributed_grids_real_data_mpi padmm_mpi_real_data.cc NOTEST LIBRARIES libpurify ${Boost_FILESYSTEM_LIBRARY} ${Boost_SYSTEM_LIBRARY}) target_compile_definitions(example_local_epsilon_distributed_grids_real_data_mpi PRIVATE PURIFY_PADMM_ALGORITHM=1) add_example(time_w_algos LIBRARIES libpurify NOTEST) add_example(mem_w_algos LIBRARIES libpurify NOTEST) endif() if(PURIFY_MPI AND PURIFY_ARRAYFIRE) add_example(global_epsilon_replicated_grids_gpu padmm_mpi_random_coverage.cc NOTEST LIBRARIES libpurify ${Boost_FILESYSTEM_LIBRARY} ${Boost_SYSTEM_LIBRARY}) target_compile_definitions(example_global_epsilon_replicated_grids_gpu PRIVATE PURIFY_PADMM_ALGORITHM=2 PURIFY_GPU) add_example(local_epsilon_replicated_grids_gpu padmm_mpi_random_coverage.cc NOTEST LIBRARIES libpurify ${Boost_FILESYSTEM_LIBRARY} ${Boost_SYSTEM_LIBRARY}) target_compile_definitions(example_local_epsilon_replicated_grids_gpu PRIVATE PURIFY_PADMM_ALGORITHM=3 PURIFY_GPU) add_example(local_epsilon_distributed_grids_gpu padmm_mpi_random_coverage.cc NOTEST LIBRARIES libpurify ${Boost_FILESYSTEM_LIBRARY} ${Boost_SYSTEM_LIBRARY}) target_compile_definitions(example_local_epsilon_distributed_grids_gpu PRIVATE PURIFY_PADMM_ALGORITHM=1 PURIFY_GPU) if(TARGET casacore::ms) add_example(global_epsilon_replicated_grids_real_data_gpu padmm_mpi_real_data.cc NOTEST LIBRARIES libpurify ${Boost_FILESYSTEM_LIBRARY} ${Boost_SYSTEM_LIBRARY}) target_compile_definitions(example_global_epsilon_replicated_grids_real_data_gpu PRIVATE PURIFY_PADMM_ALGORITHM=2 PURIFY_GPU) add_example(local_epsilon_replicated_grids_real_data_gpu padmm_mpi_real_data.cc NOTEST LIBRARIES libpurify ${Boost_FILESYSTEM_LIBRARY} ${Boost_SYSTEM_LIBRARY}) target_compile_definitions(example_local_epsilon_replicated_grids_real_data_gpu PRIVATE PURIFY_PADMM_ALGORITHM=3 PURIFY_GPU) add_example(local_epsilon_distributed_grids_real_data_gpu padmm_mpi_real_data.cc NOTEST LIBRARIES libpurify ${Boost_FILESYSTEM_LIBRARY} ${Boost_SYSTEM_LIBRARY}) target_compile_definitions(example_local_epsilon_distributed_grids_real_data_gpu PRIVATE PURIFY_PADMM_ALGORITHM=1 PURIFY_GPU) endif() endif() if(data AND TARGET casacore::ms) add_example(casa LIBRARIES libpurify) endif()