Skip to content

Commit

Permalink
Merge pull request #715 from Pressio/714-remove-epetra
Browse files Browse the repository at this point in the history
#714: remove epetra from pressio
  • Loading branch information
fnrizzi authored Dec 16, 2024
2 parents 67f0099 + 8012736 commit b88d750
Show file tree
Hide file tree
Showing 17 changed files with 98 additions and 1,007 deletions.
4 changes: 0 additions & 4 deletions .github/workflows/ci-trilinos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -37,9 +37,6 @@ jobs:
build_type:
- Release
- Debug
epetra_toggle:
- ON
- OFF

runs-on: ubuntu-latest
container: ghcr.io/pressio/${{ matrix.image }}:${{ matrix.tag }}
Expand Down Expand Up @@ -86,7 +83,6 @@ jobs:
-D PRESSIO_ENABLE_TPL_EIGEN:BOOL=ON \
-D PRESSIO_ENABLE_TPL_MPI:BOOL=ON \
-D PRESSIO_ENABLE_TPL_TRILINOS:BOOL=ON \
-D PRESSIO_ENABLE_EPETRA:BOOL=${{ matrix.epetra_toggle }} \
-D PRESSIO_ENABLE_TPL_KOKKOS:BOOL=ON \
-D PRESSIO_ENABLE_TPL_BLAS:BOOL=ON \
-D PRESSIO_ENABLE_TPL_LAPACK:BOOL=ON \
Expand Down
4 changes: 2 additions & 2 deletions docs/source/components/rom_trial_column_subspace.rst
Original file line number Diff line number Diff line change
Expand Up @@ -42,10 +42,10 @@ then all of the following must hold:

- ``basis_matrix_type`` is a rank-2 matrix data type already supported
in pressio, i.e. an Eigen Matrix, a Kokkos rank-2 View, a Trilinos Tpetra multivector,
Tpetra block multivector, or Epetra multivector
or a Tpetra block multivector

- ``full_state_type`` is an Eigen vector, a Kokkos rank-1 View, a Trilinos Tpetra vector,
Tpetra block vector, or Epetra vector
or a Tpetra block vector

..
- :cpp:`std::is_class<BasisMatrixType>::value == true &&
Expand Down
59 changes: 0 additions & 59 deletions include/pressio/rom/rom_lspg_unsteady_hypred_updater_trilinos.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -55,65 +55,6 @@ namespace pressio{ namespace rom{ namespace lspg{

struct HypRedUpdaterTrilinos
{
#ifdef PRESSIO_ENABLE_EPETRA
// -----------------
// EPETRA
// -----------------
void updateSampleMeshOperandWithStencilMeshOne
(Epetra_Vector & sample_operand, const double alpha,
const Epetra_Vector & stencil_operand, const double beta) const
{

const auto sample_map = sample_operand.Map();
std::vector<int> sample_gIDs(sample_operand.MyLength() );
sample_map.MyGlobalElements( sample_gIDs.data() );

const auto stencil_map = stencil_operand.Map();
std::vector<int> stencil_gIDs(stencil_operand.MyLength() );
stencil_map.MyGlobalElements( stencil_gIDs.data() );

//loop over LOCAL elements of the sample_operand
for (int i=0; i<sample_operand.MyLength(); i++){
// we only need to combine things if the global id of the
// sample operand is found in the stencil so we ask
// the stencil map what is the local index that corresponds
// to the global id we are handling
const auto lid = stencil_map.LID(sample_gIDs[i]);

sample_operand[i] = alpha*sample_operand[i]
+ beta*stencil_operand[lid];
}
}

void updateSampleMeshOperandWithStencilMeshOne
(Epetra_MultiVector & sample_operand, const double alpha,
const Epetra_MultiVector & stencil_operand, const double beta) const
{
const auto sample_map = sample_operand.Map();
std::vector<int> sample_gIDs(sample_operand.MyLength() );
sample_map.MyGlobalElements( sample_gIDs.data() );

const auto stencil_map = stencil_operand.Map();
std::vector<int> stencil_gIDs(stencil_operand.MyLength() );
stencil_map.MyGlobalElements( stencil_gIDs.data() );


for (int j=0; j<sample_operand.NumVectors(); j++){
//loop over LOCAL elements of the sample_operand
for (int i=0; i<sample_operand.MyLength(); i++){
// we only need to combine things if the global id of the
// sample operand is found in the stencil so we ask
// the stencil map what is the local index that corresponds
// to the global id we are handling
const auto lid = stencil_map.LID(sample_gIDs[i]);

sample_operand[j][i] = alpha*sample_operand[j][i]
+ beta*stencil_operand[j][lid];
}
}
}
#endif // PRESSIO_ENABLE_EPETRA

// -----------------
// TPETRA
// -----------------
Expand Down
5 changes: 0 additions & 5 deletions include/pressio/solvers_nonlinear/impl/qr.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -60,11 +60,6 @@

#ifdef PRESSIO_ENABLE_TPL_TRILINOS
#include "qr/qr_tpetra_impl.hpp"
#ifdef PRESSIO_ENABLE_EPETRA
#include "qr/qr_epetra_multi_vector_tsqr_impl.hpp"
#include "qr/qr_epetra_mv_householder_using_eigen_impl.hpp"
#include "qr/qr_epetra_multi_vector_modified_gram_schmidt_impl.hpp"
#endif // PRESSIO_ENABLE_EPETRA
#endif // PRESSIO_ENABLE_TPL_TRILINOS

#endif // PRESSIO_SOLVERS_NONLINEAR_IMPL_QR_HPP_
31 changes: 0 additions & 31 deletions include/pressio/solvers_nonlinear/impl/qr/qr_base_classes.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -69,42 +69,11 @@ struct is_legitimate_vector_type_for_qr_project<T, Q_t,
#ifdef PRESSIO_ENABLE_TPL_TRILINOS
or (::pressio::is_vector_tpetra<T>::value and ::pressio::is_multi_vector_tpetra<Q_t>::value)
or (::pressio::is_vector_tpetra_block<T>::value and ::pressio::is_multi_vector_tpetra_block<Q_t>::value)
#ifdef PRESSIO_ENABLE_EPETRA
or (::pressio::is_vector_epetra<T>::value and ::pressio::is_multi_vector_epetra<Q_t>::value)
#endif // PRESSIO_ENABLE_EPETRA
#endif
)
>
> : std::true_type{};

// #if defined PRESSIO_ENABLE_TPL_TRILINOS
// #ifdef PRESSIO_ENABLE_EPETRA
// template <typename algo_t, typename enable = void>
// struct is_legitimate_algo_for_epetra_mv : std::false_type {};

// template <typename algo_t>
// struct is_legitimate_algo_for_epetra_mv<algo_t,
// std::enable_if_t<
// std::is_same<algo_t, ::pressio::qr::Householder>::value
// or std::is_same<algo_t, ::pressio::qr::TSQR>::value
// >
// > : std::true_type{};
// #endif

// #if defined PRESSIO_ENABLE_TPL_TRILINOS
// template <typename algo_t, typename enable = void>
// struct is_legitimate_algo_for_tpetra_mv : std::false_type {};

// template <typename algo_t>
// struct is_legitimate_algo_for_tpetra_mv<algo_t,
// std::enable_if_t<
// std::is_same<algo_t, ::pressio::qr::Householder>::value
// or std::is_same<algo_t, ::pressio::qr::TSQR>::value
// >
// > : std::true_type{};
// #endif // PRESSIO_ENABLE_EPETRA
// #endif // PRESSIO_ENABLE_TPL_TRILINOS

template<typename DerivedType, typename MatrixType>
class QRInPlaceBase
{
Expand Down

This file was deleted.

Loading

0 comments on commit b88d750

Please sign in to comment.