# mesh options nLevels = ct.nLevels parallelPartitioningType = mesh.parallelPartitioningType 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
psitc['startRatio'] = 1.0 rtol_res[0] = 0.0 atol_res[0] = rd_nl_atol_res 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