Changeset d69332b for src/solvers/pcg.F90
- Timestamp:
- 12/14/10 12:10:00 (2 years ago)
- Branches:
- master, external, fix-prolong, refactor, refactor-subsolvers
- Children:
- 87d2b17
- Parents:
- 13bb187
- git-author:
- Oleg Batrashev <ogbash@…> (12/14/10 12:10:00)
- git-committer:
- Oleg Batrashev <ogbash@…> (12/14/10 12:10:00)
- File:
-
- 1 edited
-
src/solvers/pcg.F90 (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/solvers/pcg.F90
r13bb187 rd69332b 474 474 endif 475 475 476 if (sctls%levels>1) then 477 ol=max(sctls%overlap,sctls%smoothers) 478 if (isFirstIter.and..not.cdat%active) then ! 1 processor case 479 if (sctls%smoothers==-1) then 480 allocate(tmpsol2(A%nrows)) 481 tmpsol2=0.0_rk 482 call exact_sparse_multismoother(tmpsol2,A,rhs) 483 call SpMtx_Ax(crhs,Restrict,tmpsol2,dozero=.true.) ! restriction 476 ol=max(sctls%overlap,sctls%smoothers) 477 if (sctls%levels>1.and..not.cdat%active) then ! 1 processor case 478 if (sctls%smoothers==-1) then 479 allocate(tmpsol2(A%nrows)) 480 tmpsol2=0.0_rk 481 call exact_sparse_multismoother(tmpsol2,A,rhs) 482 call SpMtx_Ax(crhs,Restrict,tmpsol2,dozero=.true.) ! restriction 483 else 484 if (sctls%method>1.and.sctls%method/=5) then ! multiplicative Schwarz 485 call SpMtx_Ax(crhs,Restrict,res,dozero=.true.) ! restriction 484 486 else 485 if (sctls%method>1.and.sctls%method/=5) then ! multiplicative Schwarz 486 call SpMtx_Ax(crhs,Restrict,res,dozero=.true.) ! restriction 487 else 488 call SpMtx_Ax(crhs,Restrict,rhs,dozero=.true.) ! restriction 489 endif 487 call SpMtx_Ax(crhs,Restrict,rhs,dozero=.true.) ! restriction 490 488 endif 491 489 endif … … 525 523 val=CoarseMtx_%val) 526 524 if (bugtrack)write(stream,*) "(f) Coarse SOL is:",csol 525 CoarseMtx_%indi=CoarseMtx_%indi+1 526 CoarseMtx_%indj=CoarseMtx_%indj+1 527 527 528 528 if (cdat_vec%active) then
Note: See TracChangeset
for help on using the changeset viewer.
