6 October 2025 6:14:50.934 PM fem2d_bvp_serene_test(): Fortran90 version Test fem2d_bvp_serene(). TEST01 Solve - del ( A del U ) + C U = F on the unit square with zero boundary conditions. A1(X,Y) = 1.0 C1(X,Y) = 0.0 F1(X,Y) = 2*X*(1-X)+2*Y*(1-Y). U1(X,Y) = X * ( 1 - X ) * Y * ( 1 - Y ) The grid uses 5 by 5 nodes. The number of nodes is 21 I J X Y U Uexact Error 1 1 0.0000 0.0000 0.0000 0.0000 0.00E+00 2 1 0.2500 0.0000 0.0000 0.0000 0.00E+00 3 1 0.5000 0.0000 0.0000 0.0000 0.00E+00 4 1 0.7500 0.0000 0.0000 0.0000 0.00E+00 5 1 1.0000 0.0000 0.0000 0.0000 0.00E+00 1 2 0.0000 0.2500 0.0000 0.0000 0.00E+00 3 2 0.5000 0.2500 0.0486 0.0469 0.18E-02 5 2 1.0000 0.2500 0.0000 0.0000 0.00E+00 1 3 0.0000 0.5000 0.0000 0.0000 0.00E+00 2 3 0.2500 0.5000 0.0486 0.0469 0.18E-02 3 3 0.5000 0.5000 0.0590 0.0625 0.35E-02 4 3 0.7500 0.5000 0.0486 0.0469 0.18E-02 5 3 1.0000 0.5000 0.0000 0.0000 0.00E+00 1 4 0.0000 0.7500 0.0000 0.0000 0.00E+00 3 4 0.5000 0.7500 0.0486 0.0469 0.18E-02 5 4 1.0000 0.7500 0.0000 0.0000 0.00E+00 1 5 0.0000 1.0000 0.0000 0.0000 0.00E+00 2 5 0.2500 1.0000 0.0000 0.0000 0.00E+00 3 5 0.5000 1.0000 0.0000 0.0000 0.00E+00 4 5 0.7500 1.0000 0.0000 0.0000 0.00E+00 5 5 1.0000 1.0000 0.0000 0.0000 0.00E+00 l1 error = 0.501605E-03 L2 error = 0.805291E-03 H1S error = 0.123351E-01 TEST02 Basis function checks. The matrix Aij = V(i)(X(j),Y(j)) should be the identity. V(i)(X(j),Y(j)) Col 1 2 3 4 5 Row 1: 1. 0. -0. -0. -0. 2: -0. 1. 0. 0. 0. 3: 0. 0. 1. 0. -0. 4: 0. -0. -0. 1. 0. 5: -0. 0. 0. -0. 1. 6: 0. -0. -0. 0. 0. 7: 0. 0. 0. -0. -0. 8: -0. -0. -0. 0. 0. Col 6 7 8 Row 1: -0. -0. 0. 2: 0. -0. -0. 3: -0. 0. 0. 4: 0. -0. -0. 5: 0. 0. 0. 6: 1. -0. -0. 7: 0. 1. 0. 8: 0. 0. 1. The vectors dVdX(1:8)(X,Y) and dVdY(1:8)(X,Y) should both sum to zero for any (X,Y). Random evaluation point is (0.1677 , 3.732 ) dVdX dVdY 1 -.3537 -.5736E-01 2 0.6094 0.1537 3 -.2557 0.1359 4 -.4642 0.4906 5 -.6124 -.6265 6 1.055 -.1537 7 -.4427 0.1244E-01 8 0.4642 0.4491E-01 Sum: -.1665E-15 -.7633E-16 TEST03 Solve - del ( A del U ) + C U = F on the unit square with zero boundary conditions. A1(X,Y) = 0.0 C1(X,Y) = 1.0 F1(X,Y) = X * ( 1 - X ) * Y * ( 1 - Y ). U1(X,Y) = X * ( 1 - X ) * Y * ( 1 - Y ) This example is contrived so that the system matrix is the WATHEN matrix. The grid uses 5 by 5 nodes. The number of nodes is 21 Wathen elementary mass matrix: Col 1 2 3 4 5 Row 1: 6.00000 -6.00000 2. -8. 3.00000 2: -6.00000 32. -6.00000 20. -8.00000 3: 2. -6.00000 6.00000 -6.00000 2. 4: -8. 20. -6.00000 32.0000 -6.00000 5: 3.00000 -8.00000 2. -6.00000 6.00000 6: -8. 16. -8.00000 20. -6.00000 7: 2. -8.00000 3.00000 -8. 2. 8: -6.00000 20.0000 -8.00000 16. -8.00000 Col 6 7 8 Row 1: -8. 2. -6.00000 2: 16. -8.00000 20.0000 3: -8.00000 3.00000 -8.00000 4: 20. -8. 16. 5: -6.00000 2. -8.00000 6: 32. -6.00000 20. 7: -6.00000 6.00000 -6.00000 8: 20. -6.00000 32. I J X Y U Uexact Error 1 1 0.0000 0.0000 0.0000 0.0000 0.00E+00 2 1 0.2500 0.0000 0.0000 0.0000 0.00E+00 3 1 0.5000 0.0000 0.0000 0.0000 0.00E+00 4 1 0.7500 0.0000 0.0000 0.0000 0.00E+00 5 1 1.0000 0.0000 0.0000 0.0000 0.00E+00 1 2 0.0000 0.2500 0.0000 0.0000 0.00E+00 3 2 0.5000 0.2500 0.0488 0.0469 0.20E-02 5 2 1.0000 0.2500 0.0000 0.0000 0.00E+00 1 3 0.0000 0.5000 0.0000 0.0000 0.00E+00 2 3 0.2500 0.5000 0.0488 0.0469 0.20E-02 3 3 0.5000 0.5000 0.0586 0.0625 0.39E-02 4 3 0.7500 0.5000 0.0488 0.0469 0.20E-02 5 3 1.0000 0.5000 0.0000 0.0000 0.00E+00 1 4 0.0000 0.7500 0.0000 0.0000 0.00E+00 3 4 0.5000 0.7500 0.0488 0.0469 0.20E-02 5 4 1.0000 0.7500 0.0000 0.0000 0.00E+00 1 5 0.0000 1.0000 0.0000 0.0000 0.00E+00 2 5 0.2500 1.0000 0.0000 0.0000 0.00E+00 3 5 0.5000 1.0000 0.0000 0.0000 0.00E+00 4 5 0.7500 1.0000 0.0000 0.0000 0.00E+00 5 5 1.0000 1.0000 0.0000 0.0000 0.00E+00 l1 error = 0.558036E-03 L2 error = 0.781250E-03 H1S error = 0.124347E-01 WATHEN matrix (permuted) Col 1 2 3 4 5 Row 1: 6.00000 -6.00000 2. -6.00000 -8. 2: -6.00000 32. -6.00000 20. 20. 3: 2. -6.00000 6.00000 -8. -6.00000 4: -6.00000 20. -8. 32. 16. 5: -8. 20. -6.00000 16. 32. 6: 2. -8. 3.00000 -6.00000 -8. 7: -8. 16. -8. 20. 20. 8: 3.00000 -8. 2. -8. -6.00000 Col 6 7 8 Row 1: 2. -8. 3.00000 2: -8. 16. -8. 3: 3.00000 -8. 2. 4: -6.00000 20. -8. 5: -8. 20. -6.00000 6: 6.00000 -6.00000 2. 7: -6.00000 32. -6.00000 8: 2. -6.00000 6.00000 fem2d_bvp_serene_test(): Normal end of execution. 6 October 2025 6:14:50.935 PM