Revision b4a29c73dff3b670b84ea20314bdf2bba5951253 authored by Karsten Rink on 09 December 2020, 10:40:53 UTC, committed by Karsten Rink on 09 December 2020, 10:40:53 UTC
Another test for the  element quality using the AmmerGWN mesh.

See merge request ogs/ogs!3301
2 parent s 1dba0f3 + 8f5a3b4
Raw File
ChemicalSolverInterface.h
/**
 * \file
 * \copyright
 * Copyright (c) 2012-2020, OpenGeoSys Community (http://www.opengeosys.org)
 *            Distributed under a Modified BSD License.
 *              See accompanying file LICENSE.txt or
 *              http://www.opengeosys.org/project/license
 *
 */

#pragma once

#include "MathLib/LinAlg/GlobalMatrixVectorTypes.h"

namespace ChemistryLib
{
class ChemicalSolverInterface
{
public:
    virtual void initialize() {}

    virtual void executeInitialCalculation(
        std::vector<GlobalVector> const& interpolated_process_solutions) = 0;

    virtual void doWaterChemistryCalculation(
        std::vector<GlobalVector> const& interpolated_process_solutions,
        double const dt) = 0;

    virtual std::vector<GlobalVector*> getIntPtProcessSolutions() const = 0;

    virtual std::vector<std::string> const getComponentList() const
    {
        return {};
    }

    virtual ~ChemicalSolverInterface() = default;

public:
    std::vector<std::vector<GlobalIndexType>> chemical_system_index_map;
};
}  // namespace ChemistryLib
back to top