SemiDiscreteOT 1.0
Semi-Discrete Optimal Transport Library
Loading...
Searching...
No Matches
ComputeSot.cc
Go to the documentation of this file.
2#include <deal.II/base/mpi.h>
3#include <deal.II/base/utilities.h>
4#include <deal.II/base/conditional_ostream.h>
5
6int main(int argc, char* argv[]) {
7 try {
8 dealii::Utilities::MPI::MPI_InitFinalize mpi_initialization(argc, argv);
9 MPI_Comm mpi_communicator = MPI_COMM_WORLD;
10 const unsigned int this_mpi_process = dealii::Utilities::MPI::this_mpi_process(mpi_communicator);
11
12 // Create conditional output stream
13 dealii::ConditionalOStream pcout(std::cout, this_mpi_process == 0);
14
15 SemiDiscreteOT<3> semidiscrete_ot(mpi_communicator);
16
17 // Use command line argument if provided, otherwise use default
18 std::string param_file = (argc > 1) ? argv[1] : "parameters.prm";
19
20 pcout << "Using parameter file: " << param_file << std::endl;
21 dealii::ParameterAcceptor::initialize(param_file);
22
23 semidiscrete_ot.run();
24 }
25 catch(std::exception& exc) {
26 std::cerr << exc.what() << std::endl;
27 return 1;
28 }
29 return 0;
30}
int main(int argc, char *argv[])
Definition ComputeSot.cc:6
Main class for the semi-discrete optimal transport solver.
void run()
Runs the solver with the current configuration.