You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
amg4psblas/mlprec/impl/mld_scprecset.F90

544 lines
19 KiB
Fortran

!
!
! MLD2P4 version 2.1
! MultiLevel Domain Decomposition Parallel Preconditioners Package
! based on PSBLAS (Parallel Sparse BLAS version 3.4)
!
! (C) Copyright 2008, 2010, 2012, 2015, 2017
!
! Salvatore Filippone Cranfield University
! Ambra Abdullahi Hassan University of Rome Tor Vergata
! Alfredo Buttari CNRS-IRIT, Toulouse
! Pasqua D'Ambra ICAR-CNR, Naples
! Daniela di Serafino University of Campania "L. Vanvitelli", Caserta
!
! Redistribution and use in source and binary forms, with or without
! modification, are permitted provided that the following conditions
! are met:
! 1. Redistributions of source code must retain the above copyright
! notice, this list of conditions and the following disclaimer.
! 2. Redistributions in binary form must reproduce the above copyright
! notice, this list of conditions, and the following disclaimer in the
! documentation and/or other materials provided with the distribution.
! 3. The name of the MLD2P4 group or the names of its contributors may
! not be used to endorse or promote products derived from this
! software without specific written permission.
!
! THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
! ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
! TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
! PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE MLD2P4 GROUP OR ITS CONTRIBUTORS
! BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
! CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
! SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
! INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
! CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
! ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
! POSSIBILITY OF SUCH DAMAGE.
!
!
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
! File: mld_sprecset.f90
!
! Subroutine: mld_sprecseti
! Version: real
!
! This routine sets the integer parameters defining the preconditioner. More
! precisely, the integer parameter identified by 'what' is assigned the value
! contained in 'val'.
! For the multilevel preconditioners, the levels are numbered in increasing
! order starting from the finest one, i.e. level 1 is the finest level.
!
! To set character and real parameters, see mld_sprecsetc and mld_sprecsetr,
! respectively.
!
!
! Arguments:
! p - type(mld_sprec_type), input/output.
! The preconditioner data structure.
! what - integer, input.
! The number identifying the parameter to be set.
! A mnemonic constant has been associated to each of these
! numbers, as reported in the MLD2P4 User's and Reference Guide.
! val - integer, input.
! The value of the parameter to be set. The list of allowed
! values is reported in the MLD2P4 User's and Reference Guide.
! info - integer, output.
! Error code.
! ilev - integer, optional, input.
! For the multilevel preconditioner, the level at which the
! preconditioner parameter has to be set.
! If nlev is not present, the parameter identified by 'what'
! is set at all the appropriate levels.
!
! NOTE: currently, the use of the argument ilev is not "safe" and is reserved to
! MLD2P4 developers. Indeed, by using ilev it is possible to set different values
! of the same parameter at different levels 1,...,nlev-1, even in cases where
! the parameter must have the same value at all the levels but the coarsest one.
! For this reason, the interface mld_precset to this routine has been built in
! such a way that ilev is not visible to the user (see mld_prec_mod.f90).
!
subroutine mld_scprecseti(p,what,val,info,ilev,ilmax,pos)
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
use psb_base_mod
use mld_s_prec_mod, mld_protect_name => mld_scprecseti
use mld_s_jac_smoother
use mld_s_as_smoother
use mld_s_diag_solver
use mld_s_ilu_solver
use mld_s_id_solver
mld2p4-2: mlprec/Makefile mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/mld_c_as_smoother_apply_vect.f90 mlprec/impl/smoother/mld_c_jac_smoother_apply_vect.f90 mlprec/impl/smoother/mld_s_as_smoother_apply_vect.f90 mlprec/impl/smoother/mld_s_jac_smoother_apply_vect.f90 mlprec/impl/smoother/mld_z_as_smoother_apply_vect.f90 mlprec/impl/smoother/mld_z_jac_smoother_apply_vect.f90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_gs_solver_apply.f90 mlprec/impl/solver/mld_c_gs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_gs_solver_bld.f90 mlprec/impl/solver/mld_c_gs_solver_clone.f90 mlprec/impl/solver/mld_c_gs_solver_cnv.f90 mlprec/impl/solver/mld_c_gs_solver_dmp.f90 mlprec/impl/solver/mld_d_gs_solver_bld.f90 mlprec/impl/solver/mld_s_gs_solver_apply.f90 mlprec/impl/solver/mld_s_gs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_gs_solver_bld.f90 mlprec/impl/solver/mld_s_gs_solver_clone.f90 mlprec/impl/solver/mld_s_gs_solver_cnv.f90 mlprec/impl/solver/mld_s_gs_solver_dmp.f90 mlprec/impl/solver/mld_z_gs_solver_apply.f90 mlprec/impl/solver/mld_z_gs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_gs_solver_bld.f90 mlprec/impl/solver/mld_z_gs_solver_clone.f90 mlprec/impl/solver/mld_z_gs_solver_cnv.f90 mlprec/impl/solver/mld_z_gs_solver_dmp.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 Templated GS solver.
9 years ago
use mld_s_gs_solver
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
#if defined(HAVE_SLU_)
use mld_s_slu_solver
#endif
#if defined(HAVE_MUMPS_)
use mld_s_mumps_solver
#endif
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
mld2p4-2: docs/src/userinterface.tex mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_seti.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_seti.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_seti.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_seti.f90 mlprec/impl/mld_c_dec_map_bld.f90 mlprec/impl/mld_caggrmap_bld.f90 mlprec/impl/mld_ccoarse_bld.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecinit.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_d_dec_map_bld.f90 mlprec/impl/mld_daggrmap_bld.f90 mlprec/impl/mld_dcoarse_bld.f90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dprecinit.F90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_s_dec_map_bld.f90 mlprec/impl/mld_saggrmap_bld.f90 mlprec/impl/mld_scoarse_bld.f90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecinit.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_z_dec_map_bld.f90 mlprec/impl/mld_zaggrmap_bld.f90 mlprec/impl/mld_zcoarse_bld.f90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecinit.F90 mlprec/impl/mld_zprecset.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_inner_mod.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_inner_mod.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_inner_mod.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_z_inner_mod.f90 mlprec/mld_z_onelev_mod.f90 tests/pdegen/ppde2d.f90 tests/pdegen/ppde3d.f90 tests/pdegen/runs/ppde.inp tests/pdegen/spde2d.f90 tests/pdegen/spde3d.f90 Added option to apply ordering while aggregating.
9 years ago
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
implicit none
! Arguments
class(mld_sprec_type), intent(inout) :: p
character(len=*), intent(in) :: what
integer(psb_ipk_), intent(in) :: val
integer(psb_ipk_), intent(out) :: info
integer(psb_ipk_), optional, intent(in) :: ilev,ilmax
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
character(len=*), optional, intent(in) :: pos
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
! Local variables
integer(psb_ipk_) :: ilev_, nlev_
character(len=*), parameter :: name='mld_precseti'
info = psb_success_
if (.not.allocated(p%precv)) then
info = 3111
write(psb_err_unit,*) name,&
& ': Error: uninitialized preconditioner,',&
&' should call MLD_PRECINIT'
return
endif
nlev_ = size(p%precv)
if (present(ilev)) then
ilev_ = ilev
else
ilev_ = 1
end if
if ((ilev_<1).or.(ilev_ > nlev_)) then
info = -1
write(psb_err_unit,*) name,&
&': Error: invalid ILEV/NLEV combination',ilev_, nlev_
return
endif
select case(psb_toupper(what))
case ('COARSE_AGGR_SIZE')
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
p%coarse_aggr_size = max(val,-1)
return
case('MAX_PREC_LEVS')
p%max_prec_levs = max(val,1)
return
case ('OUTER_SWEEPS')
p%outer_sweeps = max(val,1)
return
end select
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
!
! Set preconditioner parameters at level ilev.
!
if (present(ilev)) then
if (ilev_ == 1) then
!
! Rules for fine level are slightly different.
!
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%precv(ilev_)%set(what,val,info,pos=pos)
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
else if (ilev_ > 1) then
select case(psb_toupper(what))
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
case('SMOOTHER_TYPE','SUB_SOLVE','SMOOTHER_SWEEPS',&
& 'ML_TYPE','AGGR_ALG','AGGR_ORD',&
mld2p4-2: docs/src/userinterface.tex mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_seti.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_seti.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_seti.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_seti.f90 mlprec/impl/mld_c_dec_map_bld.f90 mlprec/impl/mld_caggrmap_bld.f90 mlprec/impl/mld_ccoarse_bld.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecinit.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_d_dec_map_bld.f90 mlprec/impl/mld_daggrmap_bld.f90 mlprec/impl/mld_dcoarse_bld.f90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dprecinit.F90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_s_dec_map_bld.f90 mlprec/impl/mld_saggrmap_bld.f90 mlprec/impl/mld_scoarse_bld.f90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecinit.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_z_dec_map_bld.f90 mlprec/impl/mld_zaggrmap_bld.f90 mlprec/impl/mld_zcoarse_bld.f90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecinit.F90 mlprec/impl/mld_zprecset.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_inner_mod.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_inner_mod.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_inner_mod.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_z_inner_mod.f90 mlprec/mld_z_onelev_mod.f90 tests/pdegen/ppde2d.f90 tests/pdegen/ppde3d.f90 tests/pdegen/runs/ppde.inp tests/pdegen/spde2d.f90 tests/pdegen/spde3d.f90 Added option to apply ordering while aggregating.
9 years ago
& 'AGGR_KIND','SMOOTHER_POS','AGGR_OMEGA_ALG',&
& 'AGGR_EIG','SMOOTHER_SWEEPS_PRE',&
& 'SMOOTHER_SWEEPS_POST',&
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
& 'SUB_RESTR','SUB_PROL', &
& 'SUB_REN','SUB_OVR','SUB_FILLIN',&
& 'COARSE_MAT')
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%precv(ilev_)%set(what,val,info,pos=pos)
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
case('COARSE_SUBSOLVE')
if (ilev_ /= nlev_) then
write(psb_err_unit,*) name,&
& ': Error: Inconsistent specification of WHAT vs. ILEV'
info = -2
return
end if
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%precv(ilev_)%set('SUB_SOLVE',val,info,pos=pos)
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
case('COARSE_SOLVE')
if (ilev_ /= nlev_) then
write(psb_err_unit,*) name,&
& ': Error: Inconsistent specification of WHAT vs. ILEV'
info = -2
return
end if
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
if (nlev_ > 1) then
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%precv(nlev_)%set('COARSE_SOLVE',val,info,pos=pos)
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
select case (val)
case(mld_bjac_)
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%precv(nlev_)%set('SMOOTHER_TYPE',mld_bjac_,info,pos=pos)
#if defined(HAVE_SLU_)
call p%precv(nlev_)%set('SUB_SOLVE',mld_slu_,info,pos=pos)
#elif defined(HAVE_MUMPS_)
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%precv(nlev_)%set('SUB_SOLVE',mld_mumps_,info,pos=pos)
#else
call p%precv(nlev_)%set('SUB_SOLVE',mld_ilu_n_,info,pos=pos)
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
#endif
call p%precv(nlev_)%set('COARSE_MAT',mld_distr_mat_,info)
case(mld_umf_, mld_slu_,mld_ilu_n_, mld_ilu_t_,mld_milu_n_)
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%precv(nlev_)%set('SMOOTHER_TYPE',mld_bjac_,info,pos=pos)
call p%precv(nlev_)%set('SUB_SOLVE',val,info,pos=pos)
call p%precv(nlev_)%set('COARSE_MAT',mld_repl_mat_,info,pos=pos)
case(mld_sludist_,mld_mumps_)
call p%precv(nlev_)%set('SMOOTHER_TYPE',mld_bjac_,info,pos=pos)
call p%precv(nlev_)%set('SUB_SOLVE',val,info,pos=pos)
call p%precv(nlev_)%set('COARSE_MAT',mld_distr_mat_,info,pos=pos)
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
case(mld_jac_)
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%precv(nlev_)%set('SMOOTHER_TYPE',mld_bjac_,info,pos=pos)
call p%precv(nlev_)%set('SUB_SOLVE',mld_diag_scale_,info,pos=pos)
call p%precv(nlev_)%set('COARSE_MAT',mld_distr_mat_,info,pos=pos)
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
end select
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
endif
case('COARSE_SWEEPS')
if (ilev_ /= nlev_) then
write(psb_err_unit,*) name,&
& ': Error: Inconsistent specification of WHAT vs. ILEV'
info = -2
return
end if
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%precv(nlev_)%set('SMOOTHER_SWEEPS',val,info,pos=pos)
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
case('COARSE_FILLIN')
if (ilev_ /= nlev_) then
write(psb_err_unit,*) name,&
& ': Error: Inconsistent specification of WHAT vs. ILEV'
info = -2
return
end if
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%precv(nlev_)%set('SUB_FILLIN',val,info,pos=pos)
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
case default
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%precv(ilev_)%set(what,val,info,pos=pos)
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
end select
endif
else if (.not.present(ilev)) then
!
! ilev not specified: set preconditioner parameters at all the appropriate
! levels
!
select case(psb_toupper(trim(what)))
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
case('SUB_SOLVE','SUB_RESTR','SUB_PROL',&
& 'SUB_REN','SUB_OVR','SUB_FILLIN',&
& 'SMOOTHER_SWEEPS','SMOOTHER_TYPE')
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
do ilev_=1,max(1,nlev_-1)
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%precv(ilev_)%set(what,val,info,pos=pos)
if (info /= 0) return
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
end do
mld2p4-2: docs/src/userinterface.tex mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_seti.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_seti.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_seti.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_seti.f90 mlprec/impl/mld_c_dec_map_bld.f90 mlprec/impl/mld_caggrmap_bld.f90 mlprec/impl/mld_ccoarse_bld.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecinit.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_d_dec_map_bld.f90 mlprec/impl/mld_daggrmap_bld.f90 mlprec/impl/mld_dcoarse_bld.f90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dprecinit.F90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_s_dec_map_bld.f90 mlprec/impl/mld_saggrmap_bld.f90 mlprec/impl/mld_scoarse_bld.f90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecinit.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_z_dec_map_bld.f90 mlprec/impl/mld_zaggrmap_bld.f90 mlprec/impl/mld_zcoarse_bld.f90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecinit.F90 mlprec/impl/mld_zprecset.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_inner_mod.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_inner_mod.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_inner_mod.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_z_inner_mod.f90 mlprec/mld_z_onelev_mod.f90 tests/pdegen/ppde2d.f90 tests/pdegen/ppde3d.f90 tests/pdegen/runs/ppde.inp tests/pdegen/spde2d.f90 tests/pdegen/spde3d.f90 Added option to apply ordering while aggregating.
9 years ago
case('ML_TYPE','AGGR_ALG','AGGR_ORD','AGGR_KIND',&
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
& 'SMOOTHER_SWEEPS_PRE','SMOOTHER_SWEEPS_POST',&
& 'SMOOTHER_POS','AGGR_OMEGA_ALG',&
& 'AGGR_EIG','AGGR_FILTER')
do ilev_=1,nlev_
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%precv(ilev_)%set(what,val,info,pos=pos)
if (info /= 0) return
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
end do
case('COARSE_MAT')
if (nlev_ > 1) then
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%precv(nlev_)%set('COARSE_MAT',val,info,pos=pos)
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
end if
case('COARSE_SOLVE')
if (nlev_ > 1) then
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%precv(nlev_)%set('COARSE_SOLVE',val,info,pos=pos)
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
select case (val)
case(mld_bjac_)
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%precv(nlev_)%set('SMOOTHER_TYPE',mld_bjac_,info,pos=pos)
#if defined(HAVE_SLU_)
call p%precv(nlev_)%set('SUB_SOLVE',mld_slu_,info,pos=pos)
#elif defined(HAVE_MUMPS_)
call p%precv(nlev_)%set('SUB_SOLVE',mld_mumps_,info,pos=pos)
#else
call p%precv(nlev_)%set('SUB_SOLVE',mld_ilu_n_,info,pos=pos)
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
#endif
call p%precv(nlev_)%set('COARSE_MAT',mld_distr_mat_,info)
case(mld_umf_, mld_slu_,mld_ilu_n_, mld_ilu_t_,mld_milu_n_)
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%precv(nlev_)%set('SMOOTHER_TYPE',mld_bjac_,info,pos=pos)
call p%precv(nlev_)%set('SUB_SOLVE',val,info,pos=pos)
call p%precv(nlev_)%set('COARSE_MAT',mld_repl_mat_,info,pos=pos)
case(mld_sludist_,mld_mumps_)
call p%precv(nlev_)%set('SMOOTHER_TYPE',mld_bjac_,info,pos=pos)
call p%precv(nlev_)%set('SUB_SOLVE',val,info,pos=pos)
call p%precv(nlev_)%set('COARSE_MAT',mld_distr_mat_,info,pos=pos)
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
case(mld_jac_)
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%precv(nlev_)%set('SMOOTHER_TYPE',mld_bjac_,info,pos=pos)
call p%precv(nlev_)%set('SUB_SOLVE',mld_diag_scale_,info,pos=pos)
call p%precv(nlev_)%set('COARSE_MAT',mld_distr_mat_,info,pos=pos)
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
end select
endif
case('COARSE_SUBSOLVE')
if (nlev_ > 1) then
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%precv(nlev_)%set('SUB_SOLVE',val,info,pos=pos)
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
endif
case('COARSE_SWEEPS')
if (nlev_ > 1) then
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%precv(nlev_)%set('SMOOTHER_SWEEPS',val,info,pos=pos)
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
end if
case('COARSE_FILLIN')
if (nlev_ > 1) then
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%precv(nlev_)%set('SUB_FILLIN',val,info,pos=pos)
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
end if
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
case default
do ilev_=1,nlev_
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%precv(ilev_)%set(what,val,info,pos=pos)
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
end do
end select
endif
end subroutine mld_scprecseti
!
! Subroutine: mld_sprecsetc
! Version: real
!
! This routine sets the character parameters defining the preconditioner. More
! precisely, the character parameter identified by 'what' is assigned the value
! contained in 'val'.
! For the multilevel preconditioners, the levels are numbered in increasing
! order starting from the finest one, i.e. level 1 is the finest level.
!
! To set integer and real parameters, see mld_sprecseti and mld_sprecsetr,
! respectively.
!
!
! Arguments:
! p - type(mld_sprec_type), input/output.
! The preconditioner data structure.
! what - integer, input.
! The number identifying the parameter to be set.
! A mnemonic constant has been associated to each of these
! numbers, as reported in the MLD2P4 User's and Reference Guide.
! string - character(len=*), input.
! The value of the parameter to be set. The list of allowed
! values is reported in the MLD2P4 User's and Reference Guide.
! info - integer, output.
! Error code.
! ilev - integer, optional, input.
! For the multilevel preconditioner, the level at which the
! preconditioner parameter has to be set.
! If nlev is not present, the parameter identified by 'what'
! is set at all the appropriate levels.
!
! NOTE: currently, the use of the argument ilev is not "safe" and is reserved to
! MLD2P4 developers. Indeed, by using ilev it is possible to set different values
! of the same parameter at different levels 1,...,nlev-1, even in cases where
! the parameter must have the same value at all the levels but the coarsest one.
! For this reason, the interface mld_precset to this routine has been built in
! such a way that ilev is not visible to the user (see mld_prec_mod.f90).
!
subroutine mld_scprecsetc(p,what,string,info,ilev,ilmax,pos)
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
use psb_base_mod
use mld_s_prec_mod, mld_protect_name => mld_scprecsetc
implicit none
! Arguments
class(mld_sprec_type), intent(inout) :: p
character(len=*), intent(in) :: what
character(len=*), intent(in) :: string
integer(psb_ipk_), intent(out) :: info
integer(psb_ipk_), optional, intent(in) :: ilev,ilmax
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
character(len=*), optional, intent(in) :: pos
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
! Local variables
integer(psb_ipk_) :: ilev_, nlev_,val
character(len=*), parameter :: name='mld_precsetc'
info = psb_success_
if (.not.allocated(p%precv)) then
info = 3111
return
endif
nlev_ = size(p%precv)
if (present(ilev)) then
ilev_ = ilev
else
ilev_ = 1
end if
if ((ilev_<1).or.(ilev_ > nlev_)) then
write(psb_err_unit,*) name,&
& ': Error: invalid ILEV/NLEV combination',ilev_, nlev_
info = -1
return
endif
val = mld_stringval(string)
if (val >=0) then
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%set(what,val,info,ilev=ilev,pos=pos)
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
else
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%precv(ilev_)%set(what,string,info,pos=pos)
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
end if
end subroutine mld_scprecsetc
!
! Subroutine: mld_sprecsetr
! Version: real
!
! This routine sets the real parameters defining the preconditioner. More
! precisely, the real parameter identified by 'what' is assigned the value
! contained in 'val'.
! For the multilevel preconditioners, the levels are numbered in increasing
! order starting from the finest one, i.e. level 1 is the finest level.
!
! To set integer and character parameters, see mld_sprecseti and mld_sprecsetc,
! respectively.
!
! Arguments:
! p - type(mld_sprec_type), input/output.
! The preconditioner data structure.
! what - integer, input.
! The number identifying the parameter to be set.
! A mnemonic constant has been associated to each of these
! numbers, as reported in the MLD2P4 User's and Reference Guide.
! val - real(psb_spk_), input.
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
! The value of the parameter to be set. The list of allowed
! values is reported in the MLD2P4 User's and Reference Guide.
! info - integer, output.
! Error code.
! ilev - integer, optional, input.
! For the multilevel preconditioner, the level at which the
! preconditioner parameter has to be set.
! If nlev is not present, the parameter identified by 'what'
! is set at all the appropriate levels.
!
! NOTE: currently, the use of the argument ilev is not "safe" and is reserved to
! MLD2P4 developers. Indeed, by using ilev it is possible to set different values
! of the same parameter at different levels 1,...,nlev-1, even in cases where
! the parameter must have the same value at all the levels but the coarsest one.
! For this reason, the interface mld_precset to this routine has been built in
! such a way that ilev is not visible to the user (see mld_prec_mod.f90).
!
subroutine mld_scprecsetr(p,what,val,info,ilev,ilmax,pos)
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
use psb_base_mod
use mld_s_prec_mod, mld_protect_name => mld_scprecsetr
implicit none
! Arguments
class(mld_sprec_type), intent(inout) :: p
character(len=*), intent(in) :: what
real(psb_spk_), intent(in) :: val
integer(psb_ipk_), intent(out) :: info
integer(psb_ipk_), optional, intent(in) :: ilev,ilmax
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
character(len=*), optional, intent(in) :: pos
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
! Local variables
integer(psb_ipk_) :: ilev_,nlev_
real(psb_spk_) :: thr
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
character(len=*), parameter :: name='mld_precsetr'
info = psb_success_
if (present(ilev)) then
ilev_ = ilev
else
ilev_ = 1
end if
select case(psb_toupper(what))
case ('MIN_AGGR_RATIO')
p%min_aggr_ratio = max(sone,val)
return
end select
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
if (.not.allocated(p%precv)) then
write(psb_err_unit,*) name,&
&': Error: uninitialized preconditioner,',&
&' should call MLD_PRECINIT'
info = 3111
return
endif
nlev_ = size(p%precv)
if ((ilev_<1).or.(ilev_ > nlev_)) then
write(psb_err_unit,*) name,&
& ': Error: invalid ILEV/NLEV combination',&
& ilev_, nlev_
info = -1
return
endif
!
! Set preconditioner parameters at level ilev.
!
if (present(ilev)) then
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%precv(ilev_)%set(what,val,info,pos=pos)
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
else if (.not.present(ilev)) then
!
! ilev not specified: set preconditioner parameters at all the appropriate levels
!
select case(psb_toupper(what))
case('COARSE_ILUTHRS')
ilev_=nlev_
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%precv(ilev_)%set('SUB_ILUTHRS',val,info,pos=pos)
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
case('AGGR_SCALE')
do ilev_ = 2, nlev_
call p%precv(ilev_)%set('AGGR_SCALE',val,info,pos=pos)
end do
case('AGGR_THRESH')
thr = val
do ilev_ = 2, nlev_
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%precv(ilev_)%set('AGGR_THRESH',thr,info,pos=pos)
thr = thr * p%precv(ilev_)%parms%aggr_scale
end do
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
case default
do ilev_=1,nlev_
mld2p4-smooth-twoside: mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.F90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_c_base_onelev_seti.F90 mlprec/impl/level/mld_c_base_onelev_setr.f90 mlprec/impl/level/mld_d_base_onelev_cseti.F90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.F90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_seti.F90 mlprec/impl/level/mld_s_base_onelev_setr.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.F90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_seti.F90 mlprec/impl/level/mld_z_base_onelev_setr.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cmlprec_aply.f90 mlprec/impl/mld_cmlprec_bld.f90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_dmlprec_aply.f90 mlprec/impl/mld_dmlprec_bld.f90 mlprec/impl/mld_dprecbld.f90 mlprec/impl/mld_dprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_smlprec_aply.f90 mlprec/impl/mld_smlprec_bld.f90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zmlprec_aply.f90 mlprec/impl/mld_zmlprec_bld.f90 mlprec/impl/mld_zprecset.F90 mlprec/impl/solver/Makefile mlprec/impl/solver/mld_c_bwgs_solver_apply.f90 mlprec/impl/solver/mld_c_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_c_bwgs_solver_bld.f90 mlprec/impl/solver/mld_d_mumps_solver_apply.F90 mlprec/impl/solver/mld_d_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_d_mumps_solver_bld.F90 mlprec/impl/solver/mld_s_bwgs_solver_apply.f90 mlprec/impl/solver/mld_s_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_s_bwgs_solver_bld.f90 mlprec/impl/solver/mld_s_mumps_solver_apply.F90 mlprec/impl/solver/mld_s_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_s_mumps_solver_bld.F90 mlprec/impl/solver/mld_z_bwgs_solver_apply.f90 mlprec/impl/solver/mld_z_bwgs_solver_apply_vect.f90 mlprec/impl/solver/mld_z_bwgs_solver_bld.f90 mlprec/impl/solver/mld_z_mumps_solver_apply.F90 mlprec/impl/solver/mld_z_mumps_solver_apply_vect.F90 mlprec/impl/solver/mld_z_mumps_solver_bld.F90 mlprec/mld_base_prec_type.F90 mlprec/mld_c_gs_solver.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_prec_mod.f90 mlprec/mld_c_prec_type.f90 mlprec/mld_d_gs_solver.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_prec_type.f90 mlprec/mld_s_gs_solver.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_prec_mod.f90 mlprec/mld_s_prec_type.f90 mlprec/mld_z_gs_solver.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_prec_mod.f90 mlprec/mld_z_prec_type.f90 tests/fileread/df_sample.f90 tests/fileread/runs/dfs.inp tests/pdegen/runs/ppde.inp Fixes for BWGS. Seems to be working, although it needs further testing.
9 years ago
call p%precv(ilev_)%set(what,val,info,pos=pos)
mld2p4-2: mlprec/impl/Makefile mlprec/impl/level/mld_c_base_onelev_csetc.f90 mlprec/impl/level/mld_c_base_onelev_cseti.f90 mlprec/impl/level/mld_c_base_onelev_csetr.f90 mlprec/impl/level/mld_c_base_onelev_setc.f90 mlprec/impl/level/mld_d_base_onelev_csetc.f90 mlprec/impl/level/mld_d_base_onelev_cseti.f90 mlprec/impl/level/mld_d_base_onelev_csetr.f90 mlprec/impl/level/mld_d_base_onelev_setc.f90 mlprec/impl/level/mld_s_base_onelev_csetc.f90 mlprec/impl/level/mld_s_base_onelev_cseti.f90 mlprec/impl/level/mld_s_base_onelev_csetr.f90 mlprec/impl/level/mld_s_base_onelev_setc.f90 mlprec/impl/level/mld_z_base_onelev_csetc.f90 mlprec/impl/level/mld_z_base_onelev_cseti.f90 mlprec/impl/level/mld_z_base_onelev_csetr.f90 mlprec/impl/level/mld_z_base_onelev_setc.f90 mlprec/impl/mld_ccprecset.F90 mlprec/impl/mld_cprecset.F90 mlprec/impl/mld_dcprecset.F90 mlprec/impl/mld_scprecset.F90 mlprec/impl/mld_sprecset.F90 mlprec/impl/mld_zcprecset.F90 mlprec/impl/mld_zprecset.F90 mlprec/impl/smoother/Makefile mlprec/impl/smoother/mld_c_as_smoother_csetc.f90 mlprec/impl/smoother/mld_c_as_smoother_cseti.f90 mlprec/impl/smoother/mld_c_as_smoother_setc.f90 mlprec/impl/smoother/mld_c_as_smoother_seti.f90 mlprec/impl/smoother/mld_c_base_smoother_csetc.f90 mlprec/impl/smoother/mld_c_base_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_csetc.f90 mlprec/impl/smoother/mld_d_as_smoother_cseti.f90 mlprec/impl/smoother/mld_d_as_smoother_setc.f90 mlprec/impl/smoother/mld_d_as_smoother_seti.f90 mlprec/impl/smoother/mld_d_base_smoother_csetc.f90 mlprec/impl/smoother/mld_d_base_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_csetc.f90 mlprec/impl/smoother/mld_s_as_smoother_cseti.f90 mlprec/impl/smoother/mld_s_as_smoother_setc.f90 mlprec/impl/smoother/mld_s_as_smoother_seti.f90 mlprec/impl/smoother/mld_s_base_smoother_csetc.f90 mlprec/impl/smoother/mld_s_base_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_csetc.f90 mlprec/impl/smoother/mld_z_as_smoother_cseti.f90 mlprec/impl/smoother/mld_z_as_smoother_setc.f90 mlprec/impl/smoother/mld_z_as_smoother_seti.f90 mlprec/impl/smoother/mld_z_base_smoother_csetc.f90 mlprec/impl/smoother/mld_z_base_smoother_setc.f90 mlprec/impl/solver/mld_c_base_solver_csetc.f90 mlprec/impl/solver/mld_c_base_solver_setc.f90 mlprec/impl/solver/mld_d_base_solver_csetc.f90 mlprec/impl/solver/mld_d_base_solver_setc.f90 mlprec/impl/solver/mld_s_base_solver_csetc.f90 mlprec/impl/solver/mld_s_base_solver_setc.f90 mlprec/impl/solver/mld_z_base_solver_csetc.f90 mlprec/impl/solver/mld_z_base_solver_setc.f90 mlprec/mld_c_as_smoother.f90 mlprec/mld_c_base_smoother_mod.f90 mlprec/mld_c_base_solver_mod.f90 mlprec/mld_c_diag_solver.f90 mlprec/mld_c_id_solver.f90 mlprec/mld_c_ilu_solver.f90 mlprec/mld_c_jac_smoother.f90 mlprec/mld_c_onelev_mod.f90 mlprec/mld_c_slu_solver.F90 mlprec/mld_c_sludist_solver.F90 mlprec/mld_c_umf_solver.F90 mlprec/mld_d_as_smoother.f90 mlprec/mld_d_base_smoother_mod.f90 mlprec/mld_d_base_solver_mod.f90 mlprec/mld_d_diag_solver.f90 mlprec/mld_d_id_solver.f90 mlprec/mld_d_ilu_solver.f90 mlprec/mld_d_jac_smoother.f90 mlprec/mld_d_onelev_mod.f90 mlprec/mld_d_slu_solver.F90 mlprec/mld_d_sludist_solver.F90 mlprec/mld_d_umf_solver.F90 mlprec/mld_s_as_smoother.f90 mlprec/mld_s_base_smoother_mod.f90 mlprec/mld_s_base_solver_mod.f90 mlprec/mld_s_diag_solver.f90 mlprec/mld_s_id_solver.f90 mlprec/mld_s_ilu_solver.f90 mlprec/mld_s_jac_smoother.f90 mlprec/mld_s_onelev_mod.f90 mlprec/mld_s_slu_solver.F90 mlprec/mld_s_sludist_solver.F90 mlprec/mld_s_umf_solver.F90 mlprec/mld_z_as_smoother.f90 mlprec/mld_z_base_smoother_mod.f90 mlprec/mld_z_base_solver_mod.f90 mlprec/mld_z_diag_solver.f90 mlprec/mld_z_id_solver.f90 mlprec/mld_z_ilu_solver.f90 mlprec/mld_z_jac_smoother.f90 mlprec/mld_z_onelev_mod.f90 mlprec/mld_z_slu_solver.F90 mlprec/mld_z_sludist_solver.F90 mlprec/mld_z_umf_solver.F90 Reworked SET methods. Made stringval a method at the various level. Basic idea: to have derived classes override the base SET when needed. They should recognize any new argument, and possibly call the base method otherwise.
12 years ago
end do
end select
endif
end subroutine mld_scprecsetr