nLayersOfOverlapForParallel = mesh.nLayersOfOverlapForParallel restrictFineSolutionToAllMeshes = mesh.restrictFineSolutionToAllMeshes triangleOptions = mesh.triangleOptions elementQuadrature = ct.elementQuadrature elementBoundaryQuadrature = ct.elementBoundaryQuadrature femSpaces = {0: ct.basis} massLumping = False numericalFluxType = NumericalFlux.DoNothing conservativeFlux = None subgridError = RDLS.SubgridError(coefficients=physics.coefficients, nd=ct.domain.nd) shockCapturing = RDLS.ShockCapturing( coefficients=physics.coefficients, nd=ct.domain.nd, shockCapturingFactor=ct.rd_shockCapturingFactor, lag=ct.rd_lag_shockCapturing) fullNewtonFlag = True multilevelNonlinearSolver = NonlinearSolvers.Newton levelNonlinearSolver = NonlinearSolvers.Newton nonlinearSmoother = NonlinearSolvers.NLGaussSeidel linearSmoother = None matrix = LinearAlgebraTools.SparseMatrix if ct.useOldPETSc: multilevelLinearSolver = LinearSolvers.PETSc levelLinearSolver = LinearSolvers.PETSc
useEisenstatWalker = False #True maxNonlinearIts = 1 maxLineSearches = 0 nonlinearSolverConvergenceTest = 'rits' levelNonlinearSolverConvergenceTest = 'rits' linearSolverConvergenceTest = 'r-true' femSpaces = {0: pbasis} massLumping = False numericalFluxType = DoNothing conservativeFlux = None subgridError = RDLS.SubgridError(coefficients, nd) shockCapturing = RDLS.ShockCapturing( coefficients, nd, shockCapturingFactor=rd_shockCapturingFactor, lag=rd_lag_shockCapturing) fullNewtonFlag = True multilevelNonlinearSolver = Newton levelNonlinearSolver = TwoStageNewton nonlinearSmoother = NLGaussSeidel linearSmoother = None matrix = SparseMatrix if useOldPETSc: multilevelLinearSolver = PETSc levelLinearSolver = PETSc