corner0c.adb running differential equation to solve d^2u/dx^2 + d^2u/dy^2 = 0 uniform grid on rectangle -1,1 to -1,1 known Solution, for testing method omega = 2 Pi alpha = Pi/omega theta = atan2(y,x) 0..2Pi r = sqrt(x^2+y^2) u(x,y) = r^alpha * sin(alpha*theta) xg( 1)= 1.00000000000000E-02 xg( 2)= 1.09000000000000E-01 xg( 3)= 2.08000000000000E-01 xg( 4)= 3.07000000000000E-01 xg( 5)= 4.06000000000000E-01 xg( 6)= 5.05000000000000E-01 xg( 7)= 6.04000000000000E-01 xg( 8)= 7.03000000000000E-01 xg( 9)= 8.02000000000000E-01 xg( 10)= 9.01000000000000E-01 xg( 11)= 1.00000000000000E+00 yg( 1)= 1.00000000000000E-02 yg( 2)= 1.09000000000000E-01 yg( 3)= 2.08000000000000E-01 yg( 4)= 3.07000000000000E-01 yg( 5)= 4.06000000000000E-01 yg( 6)= 5.05000000000000E-01 yg( 7)= 6.04000000000000E-01 yg( 8)= 7.03000000000000E-01 yg( 9)= 8.02000000000000E-01 yg( 10)= 9.01000000000000E-01 yg( 11)= 1.00000000000000E+00 xmin= 0.010, xmax= 1.000, hx= 0.099, nx= 11 ymin= 0.010, ymax= 1.000, hy= 0.099, ny= 11 x= 1.0000, y= 0.0000, th= 0.0000, U= 0.0000 x= 1.0000, y= 1.0000, th= 0.7854, U= 0.4551 x= 0.0000, y= 1.0000, th= 1.5708, U= 0.7071 x=-1.0000, y= 1.0000, th= 2.3562, U= 1.0987 x=-1.0000, y= 0.0000, th= 3.1416, U= 1.0000 x=-1.0000, y=-1.0000, th= 3.9270, U= 1.0987 x= 0.0000, y=-1.0000, th= 4.7124, U= 0.7071 x= 1.0000, y=-1.0000, th= 5.4978, U= 0.4551 x= 0.0000, y= 0.0000, th= 0.0000, U= 0.0000 internal cells zeroed matrix initialized i= 2,j= 2 is bad err= 1.15393605331491E-02 i= 2,j= 3 is bad err=-1.99854539459636E-02 i= 2,j= 4 is bad err= 9.19614243546718E-03 i= 2,j= 8 is bad err=-1.02805230628178E-03 i= 2,j= 9 is bad err= 4.05332901699040E-03 i= 2,j= 10 is bad err=-2.56121394622539E-02 i= 3,j= 2 is bad err=-5.50708848408910E-03 i= 3,j= 3 is bad err= 2.78307534785815E-03 i= 3,j= 10 is bad err=-1.25276633284699E-03 i= 4,j= 2 is bad err=-7.06402978637599E-03 i= 4,j= 10 is bad err= 1.94288049105040E-03 i= 9,j= 2 is bad err=-1.53387246205150E-03 i= 10,j= 2 is bad err= 9.50611634993936E-03 i= 10,j= 3 is bad err= 5.98412041649699E-03 check_soln against PDE check soln against PDE max error= 2.07989181433277E-11 exact solution u, computed us, error xg( 1)= 0.010, yg( 1)= 0.010, u= 0.04551, us= 0.04551, err= 0.00000000000000E+00 xg( 1)= 0.010, yg( 2)= 0.109, u= 0.22300, us= 0.22300, err= 0.00000000000000E+00 xg( 1)= 0.010, yg( 3)= 0.208, u= 0.31483, us= 0.31483, err= 0.00000000000000E+00 xg( 1)= 0.010, yg( 4)= 0.307, u= 0.38546, us= 0.38546, err= 0.00000000000000E+00 xg( 1)= 0.010, yg( 5)= 0.406, u= 0.44504, us= 0.44504, err= 0.00000000000000E+00 xg( 1)= 0.010, yg( 6)= 0.505, u= 0.49754, us= 0.49754, err= 0.00000000000000E+00 xg( 1)= 0.010, yg( 7)= 0.604, u= 0.54502, us= 0.54502, err= 0.00000000000000E+00 xg( 1)= 0.010, yg( 8)= 0.703, u= 0.58867, us= 0.58867, err= 0.00000000000000E+00 xg( 1)= 0.010, yg( 9)= 0.802, u= 0.62931, us= 0.62931, err= 0.00000000000000E+00 xg( 1)= 0.010, yg( 10)= 0.901, u= 0.66748, us= 0.66748, err= 0.00000000000000E+00 xg( 1)= 0.010, yg( 11)= 1.000, u= 0.70358, us= 0.70358, err= 0.00000000000000E+00 xg( 2)= 0.109, yg( 1)= 0.010, u= 0.01513, us= 0.01513, err= 0.00000000000000E+00 xg( 2)= 0.109, yg( 2)= 0.109, u= 0.15025, us= 0.15059, err= 3.38349567905544E-04 xg( 2)= 0.109, yg( 3)= 0.208, u= 0.25083, us= 0.25084, err= 1.13187408751769E-05 xg( 2)= 0.109, yg( 4)= 0.307, u= 0.32922, us= 0.32926, err= 3.37482999959726E-05 xg( 2)= 0.109, yg( 5)= 0.406, u= 0.39457, us= 0.39460, err= 2.21328693999490E-05 xg( 2)= 0.109, yg( 6)= 0.505, u= 0.45146, us= 0.45147, err= 9.28780168746313E-06 xg( 2)= 0.109, yg( 7)= 0.604, u= 0.50237, us= 0.50238, err= 2.73473790923795E-06 xg( 2)= 0.109, yg( 8)= 0.703, u= 0.54882, us= 0.54882, err= 1.40499806455807E-06 xg( 2)= 0.109, yg( 9)= 0.802, u= 0.59177, us= 0.59176, err= 7.03444998095826E-06 xg( 2)= 0.109, yg( 10)= 0.901, u= 0.63189, us= 0.63185, err= 3.73612278717905E-05 xg( 2)= 0.109, yg( 11)= 1.000, u= 0.66967, us= 0.66967, err= 0.00000000000000E+00 xg( 3)= 0.208, yg( 1)= 0.010, u= 0.01096, us= 0.01096, err= 0.00000000000000E+00 xg( 3)= 0.208, yg( 2)= 0.109, u= 0.11582, us= 0.11595, err= 1.25034645624411E-04 xg( 3)= 0.208, yg( 3)= 0.208, u= 0.20755, us= 0.20761, err= 6.11412676715106E-05 xg( 3)= 0.208, yg( 4)= 0.307, u= 0.28533, us= 0.28536, err= 3.17600907931981E-05 xg( 3)= 0.208, yg( 5)= 0.406, u= 0.35226, us= 0.35228, err= 2.01494796508439E-05 xg( 3)= 0.208, yg( 6)= 0.505, u= 0.41119, us= 0.41120, err= 1.13503021544892E-05 xg( 3)= 0.208, yg( 7)= 0.604, u= 0.46412, us= 0.46412, err= 4.74905806352455E-06 xg( 3)= 0.208, yg( 8)= 0.703, u= 0.51241, us= 0.51241, err= 9.66807627955646E-07 xg( 3)= 0.208, yg( 9)= 0.802, u= 0.55702, us= 0.55701, err= 8.48077185855445E-06 xg( 3)= 0.208, yg( 10)= 0.901, u= 0.59862, us= 0.59860, err= 2.35743554458656E-05 xg( 3)= 0.208, yg( 11)= 1.000, u= 0.63773, us= 0.63773, err= 0.00000000000000E+00 xg( 4)= 0.307, yg( 1)= 0.010, u= 0.00902, us= 0.00902, err= 0.00000000000000E+00 xg( 4)= 0.307, yg( 2)= 0.109, u= 0.09689, us= 0.09690, err= 1.03381921078699E-05 xg( 4)= 0.307, yg( 3)= 0.208, u= 0.17864, us= 0.17868, err= 3.14428979701076E-05 xg( 4)= 0.307, yg( 4)= 0.307, u= 0.25215, us= 0.25218, err= 2.46316773440114E-05 xg( 4)= 0.307, yg( 5)= 0.406, u= 0.31781, us= 0.31783, err= 1.71914711373233E-05 xg( 4)= 0.307, yg( 6)= 0.505, u= 0.37682, us= 0.37684, err= 1.08290600568384E-05 xg( 4)= 0.307, yg( 7)= 0.604, u= 0.43043, us= 0.43044, err= 5.54966844434901E-06 xg( 4)= 0.307, yg( 8)= 0.703, u= 0.47964, us= 0.47964, err= 1.06495906876392E-06 xg( 4)= 0.307, yg( 9)= 0.802, u= 0.52524, us= 0.52524, err= 2.82951960273170E-06 xg( 4)= 0.307, yg( 10)= 0.901, u= 0.56783, us= 0.56783, err= 2.02628105261393E-06 xg( 4)= 0.307, yg( 11)= 1.000, u= 0.60789, us= 0.60789, err= 0.00000000000000E+00 xg( 5)= 0.406, yg( 1)= 0.010, u= 0.00785, us= 0.00785, err= 0.00000000000000E+00 xg( 5)= 0.406, yg( 2)= 0.109, u= 0.08479, us= 0.08479, err= 4.14505736835713E-06 xg( 5)= 0.406, yg( 3)= 0.208, u= 0.15840, us= 0.15841, err= 1.48238902326625E-05 xg( 5)= 0.406, yg( 4)= 0.307, u= 0.22694, us= 0.22696, err= 1.58329501737664E-05 xg( 5)= 0.406, yg( 5)= 0.406, u= 0.28997, us= 0.28999, err= 1.29578995560209E-05 xg( 5)= 0.406, yg( 6)= 0.505, u= 0.34783, us= 0.34784, err= 9.19114717518044E-06 xg( 5)= 0.406, yg( 7)= 0.604, u= 0.40111, us= 0.40111, err= 5.59896099439072E-06 xg( 5)= 0.406, yg( 8)= 0.703, u= 0.45045, us= 0.45046, err= 2.66122909925448E-06 xg( 5)= 0.406, yg( 9)= 0.802, u= 0.49644, us= 0.49644, err= 1.01164941451737E-06 xg( 5)= 0.406, yg( 10)= 0.901, u= 0.53956, us= 0.53956, err= 2.77552820460159E-06 xg( 5)= 0.406, yg( 11)= 1.000, u= 0.58020, us= 0.58020, err= 0.00000000000000E+00 xg( 6)= 0.505, yg( 1)= 0.010, u= 0.00704, us= 0.00704, err= 0.00000000000000E+00 xg( 6)= 0.505, yg( 2)= 0.109, u= 0.07625, us= 0.07626, err= 5.55792432901936E-06 xg( 6)= 0.505, yg( 3)= 0.208, u= 0.14345, us= 0.14346, err= 8.85553274676543E-06 xg( 6)= 0.505, yg( 4)= 0.307, u= 0.20736, us= 0.20737, err= 1.02671315125868E-05 xg( 6)= 0.505, yg( 5)= 0.406, u= 0.26736, us= 0.26737, err= 9.34202028751718E-06 xg( 6)= 0.505, yg( 6)= 0.505, u= 0.32340, us= 0.32341, err= 7.29590851078488E-06 xg( 6)= 0.505, yg( 7)= 0.604, u= 0.37570, us= 0.37570, err= 5.03190653050600E-06 xg( 6)= 0.505, yg( 8)= 0.703, u= 0.42461, us= 0.42461, err= 3.11559387411453E-06 xg( 6)= 0.505, yg( 9)= 0.802, u= 0.47050, us= 0.47051, err= 1.97583658423373E-06 xg( 6)= 0.505, yg( 10)= 0.901, u= 0.51375, us= 0.51375, err= 1.78482786938883E-06 xg( 6)= 0.505, yg( 11)= 1.000, u= 0.55465, us= 0.55465, err= 0.00000000000000E+00 xg( 7)= 0.604, yg( 1)= 0.010, u= 0.00643, us= 0.00643, err= 0.00000000000000E+00 xg( 7)= 0.604, yg( 2)= 0.109, u= 0.06984, us= 0.06985, err= 4.15856347014965E-06 xg( 7)= 0.604, yg( 3)= 0.208, u= 0.13193, us= 0.13194, err= 6.02052152195998E-06 xg( 7)= 0.604, yg( 4)= 0.307, u= 0.19176, us= 0.19177, err= 7.11336154807229E-06 xg( 7)= 0.604, yg( 5)= 0.406, u= 0.24877, us= 0.24878, err= 6.76678076250159E-06 xg( 7)= 0.604, yg( 6)= 0.505, u= 0.30274, us= 0.30274, err= 5.55646386818376E-06 xg( 7)= 0.604, yg( 7)= 0.604, u= 0.35368, us= 0.35369, err= 4.10306316572795E-06 xg( 7)= 0.604, yg( 8)= 0.703, u= 0.40177, us= 0.40177, err= 2.78264631159431E-06 xg( 7)= 0.604, yg( 9)= 0.802, u= 0.44721, us= 0.44722, err= 1.76245798655383E-06 xg( 7)= 0.604, yg( 10)= 0.901, u= 0.49027, us= 0.49027, err= 8.66288583756258E-07 xg( 7)= 0.604, yg( 11)= 1.000, u= 0.53116, us= 0.53116, err= 0.00000000000000E+00 xg( 8)= 0.703, yg( 1)= 0.010, u= 0.00596, us= 0.00596, err= 0.00000000000000E+00 xg( 8)= 0.703, yg( 2)= 0.109, u= 0.06481, us= 0.06481, err= 1.72683455018641E-06 xg( 8)= 0.703, yg( 3)= 0.208, u= 0.12273, us= 0.12273, err= 4.49698960386380E-06 xg( 8)= 0.703, yg( 4)= 0.307, u= 0.17904, us= 0.17904, err= 5.55125035789361E-06 xg( 8)= 0.703, yg( 5)= 0.406, u= 0.23326, us= 0.23326, err= 5.02697153989540E-06 xg( 8)= 0.703, yg( 6)= 0.505, u= 0.28512, us= 0.28512, err= 4.00761193192212E-06 xg( 8)= 0.703, yg( 7)= 0.604, u= 0.33454, us= 0.33454, err= 3.00916620810110E-06 xg( 8)= 0.703, yg( 8)= 0.703, u= 0.38157, us= 0.38157, err= 2.11378602277268E-06 xg( 8)= 0.703, yg( 9)= 0.802, u= 0.42632, us= 0.42632, err= 1.28300349144794E-06 xg( 8)= 0.703, yg( 10)= 0.901, u= 0.46894, us= 0.46894, err= 4.87257931447438E-07 xg( 8)= 0.703, yg( 11)= 1.000, u= 0.50960, us= 0.50960, err= 0.00000000000000E+00 xg( 9)= 0.802, yg( 1)= 0.010, u= 0.00558, us= 0.00558, err= 0.00000000000000E+00 xg( 9)= 0.802, yg( 2)= 0.109, u= 0.06072, us= 0.06071, err= 3.04753357058263E-06 xg( 9)= 0.802, yg( 3)= 0.208, u= 0.11518, us= 0.11519, err= 5.01604224958929E-06 xg( 9)= 0.802, yg( 4)= 0.307, u= 0.16845, us= 0.16846, err= 5.76936781426785E-06 xg( 9)= 0.802, yg( 5)= 0.406, u= 0.22013, us= 0.22013, err= 3.68845377152205E-06 xg( 9)= 0.802, yg( 6)= 0.505, u= 0.26995, us= 0.26996, err= 2.38358434828667E-06 xg( 9)= 0.802, yg( 7)= 0.604, u= 0.31781, us= 0.31781, err= 1.79930349697432E-06 xg( 9)= 0.802, yg( 8)= 0.703, u= 0.36366, us= 0.36366, err= 1.37528982147028E-06 xg( 9)= 0.802, yg( 9)= 0.802, u= 0.40755, us= 0.40755, err= 8.12541351702389E-07 xg( 9)= 0.802, yg( 10)= 0.901, u= 0.44958, us= 0.44958, err= 1.56423310970766E-07 xg( 9)= 0.802, yg( 11)= 1.000, u= 0.48983, us= 0.48983, err= 0.00000000000000E+00 xg( 10)= 0.901, yg( 1)= 0.010, u= 0.00527, us= 0.00527, err= 0.00000000000000E+00 xg( 10)= 0.901, yg( 2)= 0.109, u= 0.05731, us= 0.05731, err= 6.44410619030783E-06 xg( 10)= 0.901, yg( 3)= 0.208, u= 0.10885, us= 0.10887, err= 1.90910436536351E-05 xg( 10)= 0.901, yg( 4)= 0.307, u= 0.15948, us= 0.15949, err= 7.35126776149619E-06 xg( 10)= 0.901, yg( 5)= 0.406, u= 0.20887, us= 0.20887, err= 5.59726938603733E-07 xg( 10)= 0.901, yg( 6)= 0.505, u= 0.25678, us= 0.25678, err= 2.55888193967380E-08 xg( 10)= 0.901, yg( 7)= 0.604, u= 0.30308, us= 0.30308, err= 4.98600350729017E-07 xg( 10)= 0.901, yg( 8)= 0.703, u= 0.34771, us= 0.34771, err= 7.24653565487010E-07 xg( 10)= 0.901, yg( 9)= 0.802, u= 0.39066, us= 0.39066, err= 9.28203259864535E-07 xg( 10)= 0.901, yg( 10)= 0.901, u= 0.43198, us= 0.43198, err= 5.19158440681622E-07 xg( 10)= 0.901, yg( 11)= 1.000, u= 0.47172, us= 0.47172, err= 0.00000000000000E+00 xg( 11)= 1.000, yg( 1)= 0.010, u= 0.00500, us= 0.00500, err= 0.00000000000000E+00 xg( 11)= 1.000, yg( 2)= 0.109, u= 0.05442, us= 0.05442, err= 0.00000000000000E+00 xg( 11)= 1.000, yg( 3)= 0.208, u= 0.10345, us= 0.10345, err= 0.00000000000000E+00 xg( 11)= 1.000, yg( 4)= 0.307, u= 0.15176, us= 0.15176, err= 0.00000000000000E+00 xg( 11)= 1.000, yg( 5)= 0.406, u= 0.19909, us= 0.19909, err= 0.00000000000000E+00 xg( 11)= 1.000, yg( 6)= 0.505, u= 0.24523, us= 0.24523, err= 0.00000000000000E+00 xg( 11)= 1.000, yg( 7)= 0.604, u= 0.29005, us= 0.29005, err= 0.00000000000000E+00 xg( 11)= 1.000, yg( 8)= 0.703, u= 0.33345, us= 0.33345, err= 0.00000000000000E+00 xg( 11)= 1.000, yg( 9)= 0.802, u= 0.37542, us= 0.37542, err= 0.00000000000000E+00 xg( 11)= 1.000, yg( 10)= 0.901, u= 0.41595, us= 0.41595, err= 0.00000000000000E+00 xg( 11)= 1.000, yg( 11)= 1.000, u= 0.45509, us= 0.45509, err= 0.00000000000000E+00 avg_error= 1.36510135975417E-05, max_error= 3.38349567905544E-04 writing corner0c_ada.dat finished writing corner0c_ada.dat finished corner0c.adb in 0.094658000 seconds