Line data Source code
1 : //* This file is part of the MOOSE framework 2 : //* https://mooseframework.inl.gov 3 : //* 4 : //* All rights reserved, see COPYRIGHT for full restrictions 5 : //* https://github.com/idaholab/moose/blob/master/COPYRIGHT 6 : //* 7 : //* Licensed under LGPL 2.1, please see LICENSE for details 8 : //* https://www.gnu.org/licenses/lgpl-2.1.html 9 : 10 : #pragma once 11 : 12 : // Moose includes 13 : #include "LinearAssemblySegregatedSolve.h" 14 : 15 : /** 16 : * Implementation of Semi-Implicit Method for Pressure-Linked Equations (SIMPLE) 17 : * with MOOSE-based applications. It is a slightly restricted version of 18 : * the PIMPLE algorithm: (i) no PISO iterations are allowed, (ii) no time 19 : * kernels are allowed. 20 : */ 21 0 : class SIMPLESolve : public LinearAssemblySegregatedSolve 22 : { 23 : public: 24 : SIMPLESolve(Executioner & ex); 25 : 26 : static InputParameters validParams(); 27 : 28 : /// Check if the user defined time kernels, if yes error out 29 : virtual void checkIntegrity() override; 30 : 31 : protected: 32 : /// Check if the system contains time kernels 33 : virtual void checkTimeKernels(LinearSystem & system); 34 : };