www.mooseframework.org
PetscContactLineSearch.h
Go to the documentation of this file.
1 //* This file is part of the MOOSE framework
2 //* https://www.mooseframework.org
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 #include "libmesh/libmesh_common.h"
13 #include "libmesh/petsc_macro.h"
14 
15 #ifdef LIBMESH_HAVE_PETSC
16 #if PETSC_VERSION_LESS_THAN(3, 3, 0)
17 #else
18 
19 #include "ContactLineSearchBase.h"
20 
21 using namespace libMesh;
22 
24 namespace libMesh
25 {
26 template <typename>
28 }
29 
30 template <>
31 InputParameters validParams<PetscContactLineSearch>();
32 
37 {
38 public:
39  PetscContactLineSearch(const InputParameters & parameters);
40 
41  virtual void lineSearch() override;
42 
43 protected:
45 };
46 
47 #endif // PETSC_VERSION_LESS_THAN(3, 3, 0)
48 #endif // LIBMESH_HAVE_PETSC
libMesh::PetscNonlinearSolver
Definition: PetscContactLineSearch.h:27
libMesh
Definition: RANFSNormalMechanicalContact.h:24
ContactLineSearchBase
This class implements a custom line search for use with mechanical contact.
Definition: ContactLineSearchBase.h:38
PetscContactLineSearch::_solver
PetscNonlinearSolver< Real > * _solver
Definition: PetscContactLineSearch.h:44
PetscContactLineSearch
Petsc implementation of the contact line search (based on the Petsc LineSearchShell)
Definition: PetscContactLineSearch.h:36
validParams< PetscContactLineSearch >
InputParameters validParams< PetscContactLineSearch >()
Definition: PetscContactLineSearch.C:24
ContactLineSearchBase.h