[petsc-users] Norm_2 calculation
Matthew Knepley
knepley at gmail.com
Fri Jun 5 10:16:06 CDT 2020
On Fri, Jun 5, 2020 at 11:04 AM Fazlul Huq <huq2090 at gmail.com> wrote:
> Hello All,
> I'm trying to calculate the norm_2 error of a solution.
> Here, vector s: Analytical solution
> vector x: Numerical solution
>
> ierr = VecView(s,PETSC_VIEWER_STDOUT_WORLD);CHKERRQ(ierr);
> ierr = VecView(x,PETSC_VIEWER_STDOUT_WORLD);CHKERRQ(ierr);
>
> ierr = VecAXPY(x,-1.0,s);CHKERRQ(ierr);
> ierr = VecNorm(x,NORM_2,&norm);CHKERRQ(ierr);
> ierr = VecView(x,PETSC_VIEWER_STDOUT_WORLD);CHKERRQ(ierr);
> ierr = KSPGetIterationNumber(ksp,&its);CHKERRQ(ierr);
> if (norm > tol) {
> ierr = PetscPrintf(PETSC_COMM_WORLD,"Second Norm of error %g\n",
> double)norm);CHKERRQ(ierr);
> ierr = PetscPrintf(PETSC_COMM_WORLD,"Iterations
> %D\n",its);CHKERRQ(ierr);
> }
>
> Am I calculating the "Norm_2" error correctly or making any mistake?
> Unfortunately, for large sized matrix, say 10^6, I am getting very high
> value of "Norm_2" error.
>
1) I am guessing x comes from a KSPSolve(). It is only as accurate as your
tolerance
2) This is the l_2 norm, not the L_2 norm, so if you are using a continuum
method like FEM, this is likely wrong.
Thanks,
Matt
> Thank you.
> Sincerely,
> Huq
>
> --
>
> Fazlul Huq
> Graduate Research Assistant
> Department of Nuclear, Plasma & Radiological Engineering (NPRE)
> University of Illinois at Urbana-Champaign (UIUC)
> E-mail: huq2090 at gmail.com
>
--
What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to which their
experiments lead.
-- Norbert Wiener
https://www.cse.buffalo.edu/~knepley/ <http://www.cse.buffalo.edu/~knepley/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20200605/d9d5ad5c/attachment.html>
More information about the petsc-users
mailing list