diff --git a/data/ex-gwf-sfr-pindersauer/delr.txt b/data/ex-gwf-sfr-pindersauer/delr.txt new file mode 100644 index 00000000..077b18f4 --- /dev/null +++ b/data/ex-gwf-sfr-pindersauer/delr.txt @@ -0,0 +1,15 @@ +2.830311999999999983e+01 +2.830311999999999983e+01 +2.830311999999999983e+01 +2.830311999999999983e+01 +2.830311999999999983e+01 +2.830311999999999983e+01 +2.830311999999999983e+01 +3.048028000000000048e+01 +2.830311999999999983e+01 +2.830311999999999983e+01 +2.830311999999999983e+01 +2.830311999999999983e+01 +2.830311999999999983e+01 +2.830311999999999983e+01 +2.830311999999999983e+01 diff --git a/data/ex-gwf-sfr-pindersauer/initial_head.txt b/data/ex-gwf-sfr-pindersauer/initial_head.txt new file mode 100644 index 00000000..b8893cde --- /dev/null +++ b/data/ex-gwf-sfr-pindersauer/initial_head.txt @@ -0,0 +1,65 @@ +6.676228348382493039e+01 6.676228348382493039e+01 6.676228348382493039e+01 6.676228348382493039e+01 6.676228348382493039e+01 6.676228348382493039e+01 6.676228348382493039e+01 6.676228348382493039e+01 6.676228348382493039e+01 6.676228348382493039e+01 6.676228348382493039e+01 6.676228348382493039e+01 6.676228348382493039e+01 6.676228348382493039e+01 6.676228348382493039e+01 +6.615267801507494028e+01 6.615267801507494028e+01 6.615267801507494028e+01 6.615267801507494028e+01 6.615267801507494028e+01 6.615267801507494028e+01 6.615267801507494028e+01 6.615267801507494028e+01 6.615267801507494028e+01 6.615267801507494028e+01 6.615267801507494028e+01 6.615267801507494028e+01 6.615267801507494028e+01 6.615267801507494028e+01 6.615267801507494028e+01 +6.554307254632493596e+01 6.554307254632493596e+01 6.554307254632493596e+01 6.554307254632493596e+01 6.554307254632493596e+01 6.554307254632493596e+01 6.554307254632493596e+01 6.554307254632493596e+01 6.554307254632493596e+01 6.554307254632493596e+01 6.554307254632493596e+01 6.554307254632493596e+01 6.554307254632493596e+01 6.554307254632493596e+01 6.554307254632493596e+01 +6.493346707757493164e+01 6.493346707757493164e+01 6.493346707757493164e+01 6.493346707757493164e+01 6.493346707757493164e+01 6.493346707757493164e+01 6.493346707757493164e+01 6.493346707757493164e+01 6.493346707757493164e+01 6.493346707757493164e+01 6.493346707757493164e+01 6.493346707757493164e+01 6.493346707757493164e+01 6.493346707757493164e+01 6.493346707757493164e+01 +6.432386160882492732e+01 6.432386160882492732e+01 6.432386160882492732e+01 6.432386160882492732e+01 6.432386160882492732e+01 6.432386160882492732e+01 6.432386160882492732e+01 6.432386160882492732e+01 6.432386160882492732e+01 6.432386160882492732e+01 6.432386160882492732e+01 6.432386160882492732e+01 6.432386160882492732e+01 6.432386160882492732e+01 6.432386160882492732e+01 +6.371425614007493721e+01 6.371425614007493721e+01 6.371425614007493721e+01 6.371425614007493721e+01 6.371425614007493721e+01 6.371425614007493721e+01 6.371425614007493721e+01 6.371425614007493721e+01 6.371425614007493721e+01 6.371425614007493721e+01 6.371425614007493721e+01 6.371425614007493721e+01 6.371425614007493721e+01 6.371425614007493721e+01 6.371425614007493721e+01 +6.310465067132493999e+01 6.310465067132493999e+01 6.310465067132493999e+01 6.310465067132493999e+01 6.310465067132493999e+01 6.310465067132493999e+01 6.310465067132493999e+01 6.310465067132493999e+01 6.310465067132493999e+01 6.310465067132493999e+01 6.310465067132493999e+01 6.310465067132493999e+01 6.310465067132493999e+01 6.310465067132493999e+01 6.310465067132493999e+01 +6.249504520257493567e+01 6.249504520257493567e+01 6.249504520257493567e+01 6.249504520257493567e+01 6.249504520257493567e+01 6.249504520257493567e+01 6.249504520257493567e+01 6.249504520257493567e+01 6.249504520257493567e+01 6.249504520257493567e+01 6.249504520257493567e+01 6.249504520257493567e+01 6.249504520257493567e+01 6.249504520257493567e+01 6.249504520257493567e+01 +6.188543973382493846e+01 6.188543973382493846e+01 6.188543973382493846e+01 6.188543973382493846e+01 6.188543973382493846e+01 6.188543973382493846e+01 6.188543973382493846e+01 6.188543973382493846e+01 6.188543973382493846e+01 6.188543973382493846e+01 6.188543973382493846e+01 6.188543973382493846e+01 6.188543973382493846e+01 6.188543973382493846e+01 6.188543973382493846e+01 +6.127583426507494124e+01 6.127583426507494124e+01 6.127583426507494124e+01 6.127583426507494124e+01 6.127583426507494124e+01 6.127583426507494124e+01 6.127583426507494124e+01 6.127583426507494124e+01 6.127583426507494124e+01 6.127583426507494124e+01 6.127583426507494124e+01 6.127583426507494124e+01 6.127583426507494124e+01 6.127583426507494124e+01 6.127583426507494124e+01 +6.066622879632493692e+01 6.066622879632493692e+01 6.066622879632493692e+01 6.066622879632493692e+01 6.066622879632493692e+01 6.066622879632493692e+01 6.066622879632493692e+01 6.066622879632493692e+01 6.066622879632493692e+01 6.066622879632493692e+01 6.066622879632493692e+01 6.066622879632493692e+01 6.066622879632493692e+01 6.066622879632493692e+01 6.066622879632493692e+01 +6.005662332757493971e+01 6.005662332757493971e+01 6.005662332757493971e+01 6.005662332757493971e+01 6.005662332757493971e+01 6.005662332757493971e+01 6.005662332757493971e+01 6.005662332757493971e+01 6.005662332757493971e+01 6.005662332757493971e+01 6.005662332757493971e+01 6.005662332757493971e+01 6.005662332757493971e+01 6.005662332757493971e+01 6.005662332757493971e+01 +5.944701785882493539e+01 5.944701785882493539e+01 5.944701785882493539e+01 5.944701785882493539e+01 5.944701785882493539e+01 5.944701785882493539e+01 5.944701785882493539e+01 5.944701785882493539e+01 5.944701785882493539e+01 5.944701785882493539e+01 5.944701785882493539e+01 5.944701785882493539e+01 5.944701785882493539e+01 5.944701785882493539e+01 5.944701785882493539e+01 +5.883741239007493817e+01 5.883741239007493817e+01 5.883741239007493817e+01 5.883741239007493817e+01 5.883741239007493817e+01 5.883741239007493817e+01 5.883741239007493817e+01 5.883741239007493817e+01 5.883741239007493817e+01 5.883741239007493817e+01 5.883741239007493817e+01 5.883741239007493817e+01 5.883741239007493817e+01 5.883741239007493817e+01 5.883741239007493817e+01 +5.822780692132493385e+01 5.822780692132493385e+01 5.822780692132493385e+01 5.822780692132493385e+01 5.822780692132493385e+01 5.822780692132493385e+01 5.822780692132493385e+01 5.822780692132493385e+01 5.822780692132493385e+01 5.822780692132493385e+01 5.822780692132493385e+01 5.822780692132493385e+01 5.822780692132493385e+01 5.822780692132493385e+01 5.822780692132493385e+01 +5.761820145257493664e+01 5.761820145257493664e+01 5.761820145257493664e+01 5.761820145257493664e+01 5.761820145257493664e+01 5.761820145257493664e+01 5.761820145257493664e+01 5.761820145257493664e+01 5.761820145257493664e+01 5.761820145257493664e+01 5.761820145257493664e+01 5.761820145257493664e+01 5.761820145257493664e+01 5.761820145257493664e+01 5.761820145257493664e+01 +5.700859598382493942e+01 5.700859598382493942e+01 5.700859598382493942e+01 5.700859598382493942e+01 5.700859598382493942e+01 5.700859598382493942e+01 5.700859598382493942e+01 5.700859598382493942e+01 5.700859598382493942e+01 5.700859598382493942e+01 5.700859598382493942e+01 5.700859598382493942e+01 5.700859598382493942e+01 5.700859598382493942e+01 5.700859598382493942e+01 +5.639899051507493510e+01 5.639899051507493510e+01 5.639899051507493510e+01 5.639899051507493510e+01 5.639899051507493510e+01 5.639899051507493510e+01 5.639899051507493510e+01 5.639899051507493510e+01 5.639899051507493510e+01 5.639899051507493510e+01 5.639899051507493510e+01 5.639899051507493510e+01 5.639899051507493510e+01 5.639899051507493510e+01 5.639899051507493510e+01 +5.578938504632493789e+01 5.578938504632493789e+01 5.578938504632493789e+01 5.578938504632493789e+01 5.578938504632493789e+01 5.578938504632493789e+01 5.578938504632493789e+01 5.578938504632493789e+01 5.578938504632493789e+01 5.578938504632493789e+01 5.578938504632493789e+01 5.578938504632493789e+01 5.578938504632493789e+01 5.578938504632493789e+01 5.578938504632493789e+01 +5.517977957757494067e+01 5.517977957757494067e+01 5.517977957757494067e+01 5.517977957757494067e+01 5.517977957757494067e+01 5.517977957757494067e+01 5.517977957757494067e+01 5.517977957757494067e+01 5.517977957757494067e+01 5.517977957757494067e+01 5.517977957757494067e+01 5.517977957757494067e+01 5.517977957757494067e+01 5.517977957757494067e+01 5.517977957757494067e+01 +5.457017410882493635e+01 5.457017410882493635e+01 5.457017410882493635e+01 5.457017410882493635e+01 5.457017410882493635e+01 5.457017410882493635e+01 5.457017410882493635e+01 5.457017410882493635e+01 5.457017410882493635e+01 5.457017410882493635e+01 5.457017410882493635e+01 5.457017410882493635e+01 5.457017410882493635e+01 5.457017410882493635e+01 5.457017410882493635e+01 +5.396056864007493914e+01 5.396056864007493914e+01 5.396056864007493914e+01 5.396056864007493914e+01 5.396056864007493914e+01 5.396056864007493914e+01 5.396056864007493914e+01 5.396056864007493914e+01 5.396056864007493914e+01 5.396056864007493914e+01 5.396056864007493914e+01 5.396056864007493914e+01 5.396056864007493914e+01 5.396056864007493914e+01 5.396056864007493914e+01 +5.335096317132494192e+01 5.335096317132494192e+01 5.335096317132494192e+01 5.335096317132494192e+01 5.335096317132494192e+01 5.335096317132494192e+01 5.335096317132494192e+01 5.335096317132494192e+01 5.335096317132494192e+01 5.335096317132494192e+01 5.335096317132494192e+01 5.335096317132494192e+01 5.335096317132494192e+01 5.335096317132494192e+01 5.335096317132494192e+01 +5.274135770257493760e+01 5.274135770257493760e+01 5.274135770257493760e+01 5.274135770257493760e+01 5.274135770257493760e+01 5.274135770257493760e+01 5.274135770257493760e+01 5.274135770257493760e+01 5.274135770257493760e+01 5.274135770257493760e+01 5.274135770257493760e+01 5.274135770257493760e+01 5.274135770257493760e+01 5.274135770257493760e+01 5.274135770257493760e+01 +5.213175223382493328e+01 5.213175223382493328e+01 5.213175223382493328e+01 5.213175223382493328e+01 5.213175223382493328e+01 5.213175223382493328e+01 5.213175223382493328e+01 5.213175223382493328e+01 5.213175223382493328e+01 5.213175223382493328e+01 5.213175223382493328e+01 5.213175223382493328e+01 5.213175223382493328e+01 5.213175223382493328e+01 5.213175223382493328e+01 +5.152214676507493607e+01 5.152214676507493607e+01 5.152214676507493607e+01 5.152214676507493607e+01 5.152214676507493607e+01 5.152214676507493607e+01 5.152214676507493607e+01 5.152214676507493607e+01 5.152214676507493607e+01 5.152214676507493607e+01 5.152214676507493607e+01 5.152214676507493607e+01 5.152214676507493607e+01 5.152214676507493607e+01 5.152214676507493607e+01 +5.091254129632493886e+01 5.091254129632493886e+01 5.091254129632493886e+01 5.091254129632493886e+01 5.091254129632493886e+01 5.091254129632493886e+01 5.091254129632493886e+01 5.091254129632493886e+01 5.091254129632493886e+01 5.091254129632493886e+01 5.091254129632493886e+01 5.091254129632493886e+01 5.091254129632493886e+01 5.091254129632493886e+01 5.091254129632493886e+01 +5.030293582757493454e+01 5.030293582757493454e+01 5.030293582757493454e+01 5.030293582757493454e+01 5.030293582757493454e+01 5.030293582757493454e+01 5.030293582757493454e+01 5.030293582757493454e+01 5.030293582757493454e+01 5.030293582757493454e+01 5.030293582757493454e+01 5.030293582757493454e+01 5.030293582757493454e+01 5.030293582757493454e+01 5.030293582757493454e+01 +4.969333035882493732e+01 4.969333035882493732e+01 4.969333035882493732e+01 4.969333035882493732e+01 4.969333035882493732e+01 4.969333035882493732e+01 4.969333035882493732e+01 4.969333035882493732e+01 4.969333035882493732e+01 4.969333035882493732e+01 4.969333035882493732e+01 4.969333035882493732e+01 4.969333035882493732e+01 4.969333035882493732e+01 4.969333035882493732e+01 +4.908372489007494011e+01 4.908372489007494011e+01 4.908372489007494011e+01 4.908372489007494011e+01 4.908372489007494011e+01 4.908372489007494011e+01 4.908372489007494011e+01 4.908372489007494011e+01 4.908372489007494011e+01 4.908372489007494011e+01 4.908372489007494011e+01 4.908372489007494011e+01 4.908372489007494011e+01 4.908372489007494011e+01 4.908372489007494011e+01 +4.847411942132493579e+01 4.847411942132493579e+01 4.847411942132493579e+01 4.847411942132493579e+01 4.847411942132493579e+01 4.847411942132493579e+01 4.847411942132493579e+01 4.847411942132493579e+01 4.847411942132493579e+01 4.847411942132493579e+01 4.847411942132493579e+01 4.847411942132493579e+01 4.847411942132493579e+01 4.847411942132493579e+01 4.847411942132493579e+01 +4.786451395257493857e+01 4.786451395257493857e+01 4.786451395257493857e+01 4.786451395257493857e+01 4.786451395257493857e+01 4.786451395257493857e+01 4.786451395257493857e+01 4.786451395257493857e+01 4.786451395257493857e+01 4.786451395257493857e+01 4.786451395257493857e+01 4.786451395257493857e+01 4.786451395257493857e+01 4.786451395257493857e+01 4.786451395257493857e+01 +4.725490848382494136e+01 4.725490848382494136e+01 4.725490848382494136e+01 4.725490848382494136e+01 4.725490848382494136e+01 4.725490848382494136e+01 4.725490848382494136e+01 4.725490848382494136e+01 4.725490848382494136e+01 4.725490848382494136e+01 4.725490848382494136e+01 4.725490848382494136e+01 4.725490848382494136e+01 4.725490848382494136e+01 4.725490848382494136e+01 +4.664530301507493704e+01 4.664530301507493704e+01 4.664530301507493704e+01 4.664530301507493704e+01 4.664530301507493704e+01 4.664530301507493704e+01 4.664530301507493704e+01 4.664530301507493704e+01 4.664530301507493704e+01 4.664530301507493704e+01 4.664530301507493704e+01 4.664530301507493704e+01 4.664530301507493704e+01 4.664530301507493704e+01 4.664530301507493704e+01 +4.603569754632493272e+01 4.603569754632493272e+01 4.603569754632493272e+01 4.603569754632493272e+01 4.603569754632493272e+01 4.603569754632493272e+01 4.603569754632493272e+01 4.603569754632493272e+01 4.603569754632493272e+01 4.603569754632493272e+01 4.603569754632493272e+01 4.603569754632493272e+01 4.603569754632493272e+01 4.603569754632493272e+01 4.603569754632493272e+01 +4.542609207757494261e+01 4.542609207757494261e+01 4.542609207757494261e+01 4.542609207757494261e+01 4.542609207757494261e+01 4.542609207757494261e+01 4.542609207757494261e+01 4.542609207757494261e+01 4.542609207757494261e+01 4.542609207757494261e+01 4.542609207757494261e+01 4.542609207757494261e+01 4.542609207757494261e+01 4.542609207757494261e+01 4.542609207757494261e+01 +4.481648660882493829e+01 4.481648660882493829e+01 4.481648660882493829e+01 4.481648660882493829e+01 4.481648660882493829e+01 4.481648660882493829e+01 4.481648660882493829e+01 4.481648660882493829e+01 4.481648660882493829e+01 4.481648660882493829e+01 4.481648660882493829e+01 4.481648660882493829e+01 4.481648660882493829e+01 4.481648660882493829e+01 4.481648660882493829e+01 +4.420688114007493397e+01 4.420688114007493397e+01 4.420688114007493397e+01 4.420688114007493397e+01 4.420688114007493397e+01 4.420688114007493397e+01 4.420688114007493397e+01 4.420688114007493397e+01 4.420688114007493397e+01 4.420688114007493397e+01 4.420688114007493397e+01 4.420688114007493397e+01 4.420688114007493397e+01 4.420688114007493397e+01 4.420688114007493397e+01 +4.359727567132493675e+01 4.359727567132493675e+01 4.359727567132493675e+01 4.359727567132493675e+01 4.359727567132493675e+01 4.359727567132493675e+01 4.359727567132493675e+01 4.359727567132493675e+01 4.359727567132493675e+01 4.359727567132493675e+01 4.359727567132493675e+01 4.359727567132493675e+01 4.359727567132493675e+01 4.359727567132493675e+01 4.359727567132493675e+01 +4.298767020257493954e+01 4.298767020257493954e+01 4.298767020257493954e+01 4.298767020257493954e+01 4.298767020257493954e+01 4.298767020257493954e+01 4.298767020257493954e+01 4.298767020257493954e+01 4.298767020257493954e+01 4.298767020257493954e+01 4.298767020257493954e+01 4.298767020257493954e+01 4.298767020257493954e+01 4.298767020257493954e+01 4.298767020257493954e+01 +4.237806473382493522e+01 4.237806473382493522e+01 4.237806473382493522e+01 4.237806473382493522e+01 4.237806473382493522e+01 4.237806473382493522e+01 4.237806473382493522e+01 4.237806473382493522e+01 4.237806473382493522e+01 4.237806473382493522e+01 4.237806473382493522e+01 4.237806473382493522e+01 4.237806473382493522e+01 4.237806473382493522e+01 4.237806473382493522e+01 +4.176845926507493800e+01 4.176845926507493800e+01 4.176845926507493800e+01 4.176845926507493800e+01 4.176845926507493800e+01 4.176845926507493800e+01 4.176845926507493800e+01 4.176845926507493800e+01 4.176845926507493800e+01 4.176845926507493800e+01 4.176845926507493800e+01 4.176845926507493800e+01 4.176845926507493800e+01 4.176845926507493800e+01 4.176845926507493800e+01 +4.115885379632494079e+01 4.115885379632494079e+01 4.115885379632494079e+01 4.115885379632494079e+01 4.115885379632494079e+01 4.115885379632494079e+01 4.115885379632494079e+01 4.115885379632494079e+01 4.115885379632494079e+01 4.115885379632494079e+01 4.115885379632494079e+01 4.115885379632494079e+01 4.115885379632494079e+01 4.115885379632494079e+01 4.115885379632494079e+01 +4.054924832757493647e+01 4.054924832757493647e+01 4.054924832757493647e+01 4.054924832757493647e+01 4.054924832757493647e+01 4.054924832757493647e+01 4.054924832757493647e+01 4.054924832757493647e+01 4.054924832757493647e+01 4.054924832757493647e+01 4.054924832757493647e+01 4.054924832757493647e+01 4.054924832757493647e+01 4.054924832757493647e+01 4.054924832757493647e+01 +3.993964285882493925e+01 3.993964285882493925e+01 3.993964285882493925e+01 3.993964285882493925e+01 3.993964285882493925e+01 3.993964285882493925e+01 3.993964285882493925e+01 3.993964285882493925e+01 3.993964285882493925e+01 3.993964285882493925e+01 3.993964285882493925e+01 3.993964285882493925e+01 3.993964285882493925e+01 3.993964285882493925e+01 3.993964285882493925e+01 +3.933003739007494204e+01 3.933003739007494204e+01 3.933003739007494204e+01 3.933003739007494204e+01 3.933003739007494204e+01 3.933003739007494204e+01 3.933003739007494204e+01 3.933003739007494204e+01 3.933003739007494204e+01 3.933003739007494204e+01 3.933003739007494204e+01 3.933003739007494204e+01 3.933003739007494204e+01 3.933003739007494204e+01 3.933003739007494204e+01 +3.872043192132493772e+01 3.872043192132493772e+01 3.872043192132493772e+01 3.872043192132493772e+01 3.872043192132493772e+01 3.872043192132493772e+01 3.872043192132493772e+01 3.872043192132493772e+01 3.872043192132493772e+01 3.872043192132493772e+01 3.872043192132493772e+01 3.872043192132493772e+01 3.872043192132493772e+01 3.872043192132493772e+01 3.872043192132493772e+01 +3.811082645257493340e+01 3.811082645257493340e+01 3.811082645257493340e+01 3.811082645257493340e+01 3.811082645257493340e+01 3.811082645257493340e+01 3.811082645257493340e+01 3.811082645257493340e+01 3.811082645257493340e+01 3.811082645257493340e+01 3.811082645257493340e+01 3.811082645257493340e+01 3.811082645257493340e+01 3.811082645257493340e+01 3.811082645257493340e+01 +3.750122098382493618e+01 3.750122098382493618e+01 3.750122098382493618e+01 3.750122098382493618e+01 3.750122098382493618e+01 3.750122098382493618e+01 3.750122098382493618e+01 3.750122098382493618e+01 3.750122098382493618e+01 3.750122098382493618e+01 3.750122098382493618e+01 3.750122098382493618e+01 3.750122098382493618e+01 3.750122098382493618e+01 3.750122098382493618e+01 +3.689161551507493897e+01 3.689161551507493897e+01 3.689161551507493897e+01 3.689161551507493897e+01 3.689161551507493897e+01 3.689161551507493897e+01 3.689161551507493897e+01 3.689161551507493897e+01 3.689161551507493897e+01 3.689161551507493897e+01 3.689161551507493897e+01 3.689161551507493897e+01 3.689161551507493897e+01 3.689161551507493897e+01 3.689161551507493897e+01 +3.628201004632493465e+01 3.628201004632493465e+01 3.628201004632493465e+01 3.628201004632493465e+01 3.628201004632493465e+01 3.628201004632493465e+01 3.628201004632493465e+01 3.628201004632493465e+01 3.628201004632493465e+01 3.628201004632493465e+01 3.628201004632493465e+01 3.628201004632493465e+01 3.628201004632493465e+01 3.628201004632493465e+01 3.628201004632493465e+01 +3.567240457757493743e+01 3.567240457757493743e+01 3.567240457757493743e+01 3.567240457757493743e+01 3.567240457757493743e+01 3.567240457757493743e+01 3.567240457757493743e+01 3.567240457757493743e+01 3.567240457757493743e+01 3.567240457757493743e+01 3.567240457757493743e+01 3.567240457757493743e+01 3.567240457757493743e+01 3.567240457757493743e+01 3.567240457757493743e+01 +3.506279910882493311e+01 3.506279910882493311e+01 3.506279910882493311e+01 3.506279910882493311e+01 3.506279910882493311e+01 3.506279910882493311e+01 3.506279910882493311e+01 3.506279910882493311e+01 3.506279910882493311e+01 3.506279910882493311e+01 3.506279910882493311e+01 3.506279910882493311e+01 3.506279910882493311e+01 3.506279910882493311e+01 3.506279910882493311e+01 +3.445319364007493590e+01 3.445319364007493590e+01 3.445319364007493590e+01 3.445319364007493590e+01 3.445319364007493590e+01 3.445319364007493590e+01 3.445319364007493590e+01 3.445319364007493590e+01 3.445319364007493590e+01 3.445319364007493590e+01 3.445319364007493590e+01 3.445319364007493590e+01 3.445319364007493590e+01 3.445319364007493590e+01 3.445319364007493590e+01 +3.384358817132493868e+01 3.384358817132493868e+01 3.384358817132493868e+01 3.384358817132493868e+01 3.384358817132493868e+01 3.384358817132493868e+01 3.384358817132493868e+01 3.384358817132493868e+01 3.384358817132493868e+01 3.384358817132493868e+01 3.384358817132493868e+01 3.384358817132493868e+01 3.384358817132493868e+01 3.384358817132493868e+01 3.384358817132493868e+01 +3.323398270257494147e+01 3.323398270257494147e+01 3.323398270257494147e+01 3.323398270257494147e+01 3.323398270257494147e+01 3.323398270257494147e+01 3.323398270257494147e+01 3.323398270257494147e+01 3.323398270257494147e+01 3.323398270257494147e+01 3.323398270257494147e+01 3.323398270257494147e+01 3.323398270257494147e+01 3.323398270257494147e+01 3.323398270257494147e+01 +3.262437723382493715e+01 3.262437723382493715e+01 3.262437723382493715e+01 3.262437723382493715e+01 3.262437723382493715e+01 3.262437723382493715e+01 3.262437723382493715e+01 3.262437723382493715e+01 3.262437723382493715e+01 3.262437723382493715e+01 3.262437723382493715e+01 3.262437723382493715e+01 3.262437723382493715e+01 3.262437723382493715e+01 3.262437723382493715e+01 +3.201477176507493994e+01 3.201477176507493994e+01 3.201477176507493994e+01 3.201477176507493994e+01 3.201477176507493994e+01 3.201477176507493994e+01 3.201477176507493994e+01 3.201477176507493994e+01 3.201477176507493994e+01 3.201477176507493994e+01 3.201477176507493994e+01 3.201477176507493994e+01 3.201477176507493994e+01 3.201477176507493994e+01 3.201477176507493994e+01 +3.140516629632493562e+01 3.140516629632493562e+01 3.140516629632493562e+01 3.140516629632493562e+01 3.140516629632493562e+01 3.140516629632493562e+01 3.140516629632493562e+01 3.140516629632493562e+01 3.140516629632493562e+01 3.140516629632493562e+01 3.140516629632493562e+01 3.140516629632493562e+01 3.140516629632493562e+01 3.140516629632493562e+01 3.140516629632493562e+01 +3.079556082757493840e+01 3.079556082757493840e+01 3.079556082757493840e+01 3.079556082757493840e+01 3.079556082757493840e+01 3.079556082757493840e+01 3.079556082757493840e+01 3.079556082757493840e+01 3.079556082757493840e+01 3.079556082757493840e+01 3.079556082757493840e+01 3.079556082757493840e+01 3.079556082757493840e+01 3.079556082757493840e+01 3.079556082757493840e+01 +3.018595535882494119e+01 3.018595535882494119e+01 3.018595535882494119e+01 3.018595535882494119e+01 3.018595535882494119e+01 3.018595535882494119e+01 3.018595535882494119e+01 3.018595535882494119e+01 3.018595535882494119e+01 3.018595535882494119e+01 3.018595535882494119e+01 3.018595535882494119e+01 3.018595535882494119e+01 3.018595535882494119e+01 3.018595535882494119e+01 +2.957634989007493687e+01 2.957634989007493687e+01 2.957634989007493687e+01 2.957634989007493687e+01 2.957634989007493687e+01 2.957634989007493687e+01 2.957634989007493687e+01 2.957634989007493687e+01 2.957634989007493687e+01 2.957634989007493687e+01 2.957634989007493687e+01 2.957634989007493687e+01 2.957634989007493687e+01 2.957634989007493687e+01 2.957634989007493687e+01 +2.896674442132493965e+01 2.896674442132493965e+01 2.896674442132493965e+01 2.896674442132493965e+01 2.896674442132493965e+01 2.896674442132493965e+01 2.896674442132493965e+01 2.896674442132493965e+01 2.896674442132493965e+01 2.896674442132493965e+01 2.896674442132493965e+01 2.896674442132493965e+01 2.896674442132493965e+01 2.896674442132493965e+01 2.896674442132493965e+01 +2.835713895257493533e+01 2.835713895257493533e+01 2.835713895257493533e+01 2.835713895257493533e+01 2.835713895257493533e+01 2.835713895257493533e+01 2.835713895257493533e+01 2.835713895257493533e+01 2.835713895257493533e+01 2.835713895257493533e+01 2.835713895257493533e+01 2.835713895257493533e+01 2.835713895257493533e+01 2.835713895257493533e+01 2.835713895257493533e+01 +2.774753348382493812e+01 2.774753348382493812e+01 2.774753348382493812e+01 2.774753348382493812e+01 2.774753348382493812e+01 2.774753348382493812e+01 2.774753348382493812e+01 2.774753348382493812e+01 2.774753348382493812e+01 2.774753348382493812e+01 2.774753348382493812e+01 2.774753348382493812e+01 2.774753348382493812e+01 2.774753348382493812e+01 2.774753348382493812e+01 diff --git a/data/ex-gwf-sfr-pindersauer/initial_stage_a.txt b/data/ex-gwf-sfr-pindersauer/initial_stage_a.txt new file mode 100644 index 00000000..5a4d3acc --- /dev/null +++ b/data/ex-gwf-sfr-pindersauer/initial_stage_a.txt @@ -0,0 +1,65 @@ +6.673945674388896521e+01 +6.608448063993979815e+01 +6.542995761843641844e+01 +6.477597825859648140e+01 +6.412263230967386107e+01 +6.347000848286066343e+01 +6.281819423533341507e+01 +6.216727554691876634e+01 +6.151733669000771698e+01 +6.086845999351258030e+01 +6.022072560183482182e+01 +5.957421122999152630e+01 +5.892899191623072142e+01 +5.828513977364706733e+01 +5.764272374248407971e+01 +5.700180934497348062e+01 +5.636245844470926869e+01 +5.572472901268017864e+01 +5.508867490218125340e+01 +5.445434563489024526e+01 +5.382178620042119377e+01 +5.319103687165200967e+01 +5.256213303806195825e+01 +5.193510505920737330e+01 +5.130997814030801152e+01 +5.068677223171413004e+01 +5.006550195377850088e+01 +4.944617654837153253e+01 +4.882879985795836575e+01 +4.821337033281081830e+01 +4.759988106656332008e+01 +4.698831985994895888e+01 +4.637866931217960342e+01 +4.577090693907253893e+01 +4.516500531668351215e+01 +4.456093224889209381e+01 +4.395865095710668413e+01 +4.335812029001954215e+01 +4.275929495115092038e+01 +4.216212574177966133e+01 +4.156655981676561140e+01 +4.097254095072641888e+01 +4.038000981203646234e+01 +3.978890424216480426e+01 +3.919915953795794650e+01 +3.861070873459614461e+01 +3.802348288710471991e+01 +3.743741134847589080e+01 +3.685242204264803689e+01 +3.626844173079135913e+01 +3.568539626955576693e+01 +3.510321086014401004e+01 +3.452181028727613921e+01 +3.394111914730637380e+01 +3.336106206493770543e+01 +3.278156389815038096e+01 +3.220254993111674935e+01 +3.162394605501501132e+01 +3.104567893677823420e+01 +3.046767617592297483e+01 +2.988986644969257256e+01 +2.931217964682706167e+01 +2.873454699033295867e+01 +2.815690114967456381e+01 +2.757917634284508068e+01 diff --git a/data/ex-gwf-sfr-pindersauer/initial_stage_b.txt b/data/ex-gwf-sfr-pindersauer/initial_stage_b.txt new file mode 100644 index 00000000..e424755d --- /dev/null +++ b/data/ex-gwf-sfr-pindersauer/initial_stage_b.txt @@ -0,0 +1,65 @@ +6.674089209897832120e+01 +6.608980989603730904e+01 +6.544049560449691683e+01 +6.479297654293559106e+01 +6.414727488892772556e+01 +6.350340771914208915e+01 +6.286138706604325677e+01 +6.222121999152427918e+01 +6.158290867761333942e+01 +6.094645053420364889e+01 +6.031183832355630159e+01 +5.967906030112553850e+01 +5.904810037205879780e+01 +5.841893826253508593e+01 +5.779154970492748333e+01 +5.716590663561512997e+01 +5.654197740412729445e+01 +5.591972699218331400e+01 +5.529911724109624060e+01 +5.468010708593927660e+01 +5.406265279483114483e+01 +5.344670821168051589e+01 +5.283222500073959793e+01 +5.221915289135134230e+01 +5.160743992133151892e+01 +5.099703267750427926e+01 +5.038787653200408556e+01 +4.977991587306599541e+01 +4.917309432914627365e+01 +4.856735498534362705e+01 +4.796264059122483303e+01 +4.735889375929382794e+01 +4.675605715347845859e+01 +4.615407366714132564e+01 +4.555288659024824227e+01 +4.495243976544846021e+01 +4.435267773293347204e+01 +4.375354586404500878e+01 +4.315499048369610335e+01 +4.255695898175348901e+01 +4.195939991360262411e+01 +4.136226309017997949e+01 +4.076549965781040186e+01 +4.016906216823127806e+01 +3.957290463922009849e+01 +3.897698260626819433e+01 +3.838125316576297053e+01 +3.778567501015248098e+01 +3.719020845557261623e+01 +3.659481546241763539e+01 +3.599945964933092313e+01 +3.540410630108502232e+01 +3.480872237080874498e+01 +3.421327647700552177e+01 +3.361773889579114893e+01 +3.302208154876159085e+01 +3.242627798688272378e+01 +3.183030337077460814e+01 +3.123413444774255154e+01 +3.063774952588756406e+01 +3.004112844560832229e+01 +2.944425254878731124e+01 +2.884710464593444001e+01 +2.824966898154244888e+01 +2.765193119789086751e+01 diff --git a/doc/body.tex b/doc/body.tex index 5ab39079..1ebe2141 100644 --- a/doc/body.tex +++ b/doc/body.tex @@ -47,6 +47,10 @@ \insection \input{sections/ex-gwf-sfr-p01.tex} +\clearpage +\insection +\input{sections/ex-gwf-sfr-pindersauer.tex} + \clearpage \insection \input{sections/ex-gwf-sfr-p01b.tex} diff --git a/doc/mf6examples.bib b/doc/mf6examples.bib index 722a16f4..25016368 100644 --- a/doc/mf6examples.bib +++ b/doc/mf6examples.bib @@ -1,13 +1,25 @@ %% This BibTeX bibliography file was created using BibDesk. %% https://bibdesk.sourceforge.io/ -%% Created for Hughes, Joseph D. at 2023-06-07 15:15:28 -0500 +%% Created for Hughes, Joseph D. at 2024-10-07 17:13:32 -0500 %% Saved with string encoding Unicode (UTF-8) +@article{hughes2015modflow, + author = {Hughes, Joseph D and Langevin, Christian D and White, Jeremy T}, + date-added = {2024-10-07 14:23:32 -0500}, + date-modified = {2024-10-07 14:23:32 -0500}, + journal = {Groundwater}, + number = {3}, + pages = {452--463}, + publisher = {Wiley Online Library}, + title = {MODFLOW-based coupled surface water routing and groundwater-flow simulation}, + volume = {53}, + year = {2015}} + @article{hill1998controlled, author = {Hill, Mary C and Cooley, Richard L and Pollock, David W}, date-added = {2023-06-06 17:23:47 -0500}, @@ -19,7 +31,8 @@ @article{hill1998controlled publisher = {Wiley Online Library}, title = {A controlled experiment in ground water flow model calibration}, volume = {36}, - year = {1998}} + year = {1998}, + bdsk-url-1 = {https://doi.org/10.1111/j.1745-6584.1998.tb02824.x}} @article{hughes2023flopy, author = {Hughes, Joseph D and Langevin, Christian D and Paulinski, Scott R and Larsen, Joshua D and Brakenhoff, David}, @@ -29,7 +42,8 @@ @article{hughes2023flopy journal = {Groundwater}, publisher = {Wiley Online Library}, title = {{FloPy} Workflows for Creating Structured and Unstructured {MODFLOW} Models}, - year = {2023}} + year = {2023}, + bdsk-url-1 = {https://doi.org/10.1111/gwat.13327}} @article{hunt2020revisiting, author = {Hunt, Randall J and Fienen, Michael N and White, Jeremy T}, @@ -146,7 +160,8 @@ @article{reilly1989bias publisher = {American Society of Civil Engineers}, title = {Bias in groundwater samples caused by wellbore flow}, volume = {115}, - year = {1989}} + year = {1989}, + bdsk-url-1 = {https://doi.org/10.1061/(ASCE)0733-9429(1989)115:2(270)}} @article{sokol1963position, author = {Sokol, Daniel}, @@ -159,7 +174,8 @@ @article{sokol1963position publisher = {Wiley Online Library}, title = {Position and fluctuations of water level in wells perforated in more than one aquifer}, volume = {68}, - year = {1963}} + year = {1963}, + bdsk-url-1 = {https://doi.org/10.1029/JZ068i004p01079}} @article{vilhelmsen2012, author = {Vilhelmsen, Troels N and Christensen, Steen and Mehl, Steffen W}, @@ -188,7 +204,8 @@ @article{zaidel2013discontinuous publisher = {Wiley Online Library}, title = {Discontinuous Steady-State Analytical Solutions of the {Boussinesq} Equation and Their Numerical Representation by {MODFLOW}}, volume = {51}, - year = {2013}} + year = {2013}, + bdsk-url-1 = {https://doi.org/10.1111/gwat.12019}} @article{Johannsen2003, abstract = {The Elder problem is an example of a density driven flow, motivated by experiments of a thermally driven convection in porous media. It is a mathematical benchmark problem used for code verification of density driven flow simulators and comparison of issues related to its numerical treatment. Its bifurcation diagram with respect to the Rayleigh number is investigated on a hierarchy of uniformly refined grids. Eleven stationary solutions are shown to exist for the Elder problem. Similar solutions can be found using the Boussinesq approximation. Despite this similarity the corresponding bifurcation diagrams are shown to be topologically not equivalent. This gives rise to serious doubts on the validity of Boussinesq approximation for this model problem. Grid convergence is investigated for the numerically obtained solutions.}, @@ -614,7 +631,8 @@ @article{VossSouza1987 publisher = {American Geophysical Union}, title = {Variable density flow and solute transport simulation of regional aquifers containing a narrow freshwater-saltwater transition zone}, volume = {23}, - year = {1987}} + year = {1987}, + bdsk-url-1 = {https://doi.org/10.1029/WR023i010p01851}} @article{Segol1975, author = {Segol, Genevieve and Pinder, George F and Gray, William G}, @@ -627,7 +645,8 @@ @article{Segol1975 publisher = {American Geophysical Union}, title = {A {Galerkin}-finite element technique for calculating the transient position of the saltwater front}, volume = {11}, - year = {1975}} + year = {1975}, + bdsk-url-1 = {https://doi.org/10.1029/WR011i002p00343}} @book{Marsily1986, address = {New York, New York}, @@ -821,7 +840,8 @@ @article{jacob1939fluctuations publisher = {Wiley Online Library}, title = {Fluctuations in artesian pressure produced by passing railroad-trains as shown in a well on {Long Island, New York}}, volume = {20}, - year = {1939}} + year = {1939}, + bdsk-url-1 = {https://doi.org/10.1029/TR020i004p00666}} @book{wexler1992, author = {Wexler, E.J.}, @@ -2924,7 +2944,8 @@ @article{brookscorey1966 pages = {61--90}, title = {Properties of porous media affecting fluid flow}, volume = {92}, - year = {1966}} + year = {1966}, + bdsk-url-1 = {https://doi.org/10.1061/JRCEA4.0000425}} @article{charbeneau1984, author = {Charbeneau, R J}, @@ -3144,7 +3165,8 @@ @article{langevin2020hydraulic publisher = {Wiley Online Library}, title = {Hydraulic-Head Formulation for Density-Dependent Flow and Transport}, volume = {58}, - year = {2020}} + year = {2020}, + bdsk-url-1 = {https://doi.org/10.1111/gwat.12967}} @article{morway2013, author = {Morway, Eric D and Niswonger, Richard G and Langevin, Christian D and Bailey, Ryan T and Healy, Richard W}, @@ -3220,51 +3242,52 @@ @article{stallman1965steady publisher = {Wiley Online Library}, title = {Steady one-dimensional fluid flow in a semi-infinite porous medium with sinusoidal surface temperature}, volume = {70}, - year = {1965}} + year = {1965}, + bdsk-url-1 = {https://doi.org/10.1029/JZ070i012p02821}} @article{bedekar2019axisym, - title = {Axisymmetric modeling using {MODFLOW-USG}}, author = {Bedekar, Vivek and Scantlebury, Leland and Panday, Sorab}, date-added = {2019-1-01 10:00:00 -0500}, doi = {10.1111/gwat.12861}, journal = {Groundwater}, + number = {5}, + pages = {772--777}, publisher = {Wiley Online Library}, - volume={57}, - number={5}, - pages={772--777}, - year = {2019}} + title = {Axisymmetric modeling using {MODFLOW-USG}}, + volume = {57}, + year = {2019}, + bdsk-url-1 = {https://doi.org/10.1111/gwat.12861}} @article{neuman1974effect, - title={Effect of partial penetration on flow in unconfined aquifers considering delayed gravity response}, - author={Neuman, Shlomo P}, + author = {Neuman, Shlomo P}, date-added = {1974-04-01 10:00:00 -0500}, doi = {10.1029/WR010i002p00303}, - journal={Water resources research}, - volume={10}, - number={2}, - pages={303--312}, - year={1974}, - publisher={Wiley Online Library} -} + journal = {Water resources research}, + number = {2}, + pages = {303--312}, + publisher = {Wiley Online Library}, + title = {Effect of partial penetration on flow in unconfined aquifers considering delayed gravity response}, + volume = {10}, + year = {1974}, + bdsk-url-1 = {https://doi.org/10.1029/WR010i002p00303}} @article{romero2006grid, - title={Grid cell distortion and MODFLOW's integrated finite-difference numerical solution}, - author={Romero, Dave M and Silver, Steven E}, - doi={10.1111/j.1745-6584.2005.00179.x}, - journal={Groundwater}, - volume={44}, - number={6}, - pages={797--802}, - year={2006}, - publisher={Wiley Online Library} -} + author = {Romero, Dave M and Silver, Steven E}, + doi = {10.1111/j.1745-6584.2005.00179.x}, + journal = {Groundwater}, + number = {6}, + pages = {797--802}, + publisher = {Wiley Online Library}, + title = {Grid cell distortion and MODFLOW's integrated finite-difference numerical solution}, + volume = {44}, + year = {2006}, + bdsk-url-1 = {https://doi.org/10.1111/j.1745-6584.2005.00179.x}} @book{crank1975diffusion, - title={The mathematics of diffusion. Second Edition}, - author={Crank, J}, - year={1975}, - publisher={Oxford University Press} -} + author = {Crank, J}, + publisher = {Oxford University Press}, + title = {The mathematics of diffusion. Second Edition}, + year = {1975}} @article{alKhoury2020, author = {Al-Khoury, Rafid and BniLam, Noori and Arzanfudi, Mehdi M and Saeid, Sanaz}, @@ -3272,7 +3295,6 @@ @article{alKhoury2020 date-modified = {2024-02-14 08:00:00 -0800}, doi = {10.1016/j.ijheatmasstransfer.2020.120517}, journal = {International Journal of Heat and Mass Transfer}, - number = {}, pages = {120517}, publisher = {Elsevier}, title = {A spectral model for a moving cylindrical heat source in a conductive-convective domain}, @@ -3285,9 +3307,8 @@ @article{alKhoury2021 author = {Al-Khoury, Rafid and BniLam, Noori and Arzanfudi, Mehdi M and Saeid, Sanaz}, date-added = {2024-02-14 08:00:00 -0800}, date-modified = {2024-02-14 08:00:00 -0800}, - doi = {10.1016/j.geothermics.2021.102063}, + doi = {10.1016/j.geothermics.2021.102063}, journal = {Geothermics}, - number = {}, pages = {102063}, publisher = {Elsevier}, title = {Analytical model for arbitrarily configured neighboring shallow geothermal installations in the presence of groundwater flow}, @@ -3303,16 +3324,16 @@ @inproceedings{barends2010 date-modified = {2024-02-14 08:00:00 -0800}, doi = {doi.org/10.2118/134670-MS}, institution = {Deltares and Technical University Delft}, + publisher = {Society of Petroleum Engineers}, title = {Complete solution for transient heat transport in porous media, following Lauwerier's concept}, year = {2010}, - publisher = {Society of Petroleum Engineers}, bdsk-url-1 = {https://doi.org/10.2118/134670-MS}} @article{ma2010, author = {Ma, Rui and Zheng, Chunmiao}, date-added = {2024-02-15 08:00:00 -0800}, date-modified = {2024-02-15 08:00:00 -0800}, - doi = {10.1111/j.1745-6584.2009.00660.x}, + doi = {10.1111/j.1745-6584.2009.00660.x}, journal = {Groundwater}, number = {3}, pages = {380--389}, @@ -3328,9 +3349,9 @@ @article{modpath7examples date-added = {2024-03-26 18:00:00 -0400}, date-modified = {2024-03-26 18:00:00 -0400}, institution = {United States Geological Survey}, + publisher = {United States Geological Survey}, title = {MODPATH Version 7: Example Problems}, - year = {2017}, - publisher = {United States Geological Survey}} + year = {2017}} @article{toth1963, author = {Toth, J.}, @@ -3341,5 +3362,32 @@ @article{toth1963 publisher = {American Geophysical Union}, title = {A theoretical analysis of groundwater flow in small drainage basins}, volume = {68}, - year = {1963}} + year = {1963}, + bdsk-url-1 = {https://doi.org/10.1029/JZ068i016p04795}} + +@book{swain1996coupled, + author = {Swain, Eric D and Wexler, Eliezer J}, + date-modified = {2024-10-07 14:51:01 -0500}, + series = {{U.S. Geological Survey Techniques of Water-Resources Investigations Report, Book 6, Chapter A6, 125 p.}}, + title = {A coupled surface-water and ground-water flow model ({MODBRANCH}) for simulation of stream-aquifer interaction}, + year = {1996}} + +@article{lal2001modification, + author = {Lal, AM Wasantha}, + journal = {Journal of Hydraulic Engineering}, + number = {7}, + pages = {567--576}, + publisher = {American Society of Civil Engineers}, + title = {Modification of canal flow due to stream-aquifer interaction}, + volume = {127}, + year = {2001}} +@article{pinder1971numerical, + author = {Pinder, George F and Sauer, Stanley P}, + journal = {Water Resources Research}, + number = {1}, + pages = {63--70}, + publisher = {Wiley Online Library}, + title = {Numerical simulation of flood wave modification due to bank storage effects}, + volume = {7}, + year = {1971}} diff --git a/doc/sections/ex-gwf-sfr-pindersauer.tex b/doc/sections/ex-gwf-sfr-pindersauer.tex new file mode 100644 index 00000000..2819baee --- /dev/null +++ b/doc/sections/ex-gwf-sfr-pindersauer.tex @@ -0,0 +1,52 @@ +\section{Modified Pinder-Sauer surface water/groundwater exchange problem} + +% Describe source of problem +The modified Pinder-Sauer is a surface-water/groundwater exchange problem that is based on the problem of \cite{pinder1971numerical}, which has been used as a benchmark test for coupled surface-water/groundwater models \citep[\textit{e.g.,}][]{hughes2015modflow,swain1996coupled}. \cite{lal2001modification} modified the problem of \cite{pinder1971numerical} to make it easier to set up and to include a sinusoidal inflow hydrograph boundary condition at the upstream end of the surface-water system. + +The analytical solution of \cite{lal2001modification} for the discharge at a distance $x$ from the upstream boundary is + +\begin{equation} \label{lalanaleqn} +Q_a = 509.70 + 141.58 \exp \left( \frac{\hat{\lambda}_{1} x}{\Lambda} \right) \sin \left( f_{r} t + \frac{\hat{\lambda}_{2} x}{\Lambda} \right), +\end{equation} + +\noindent where $f_r$ is the characteristic frequency of the system, $\hat{\lambda}_{1}$ is the amplitude decay constant, $\Lambda$ is the characteristic length related to the wave number of the water-level disturbance, and $\hat{\lambda}_{2}$ is a dimensionless wave number. The terms in \textbf{equation~\ref{lalanaleqn}} are calculated using model parameters such as friction slope, reach sediment hydraulic conductivity, reach width, \textit{etc.} and are defined in \cite{lal2001modification}. For the case without aquifer exchange, $\hat{\lambda}_{1} = -4.779 \times 10^{-2}$, and $\hat{\lambda}_{2} = -0.3608$. With aquifer exchange, the appropriate values for the variables in \textbf{equation~\ref{lalanaleqn}} are $\hat{\lambda}_{1} = -0.1785$, $\Lambda = 4894.3$ m, $f_{r} = 3.49 \times 10^{-4}$ sec$^{-1}$, $\hat{\lambda}_{2} = -0.3409$, and all other variables are the same as the case without aquifer exchange. + +The model domain represents a flood plane that is 39,624 m long, 427 m across the valley, and underlain by an unconfined aquifer. The flood plane and underlying aquifer are surrounded by impermeable boundaries on all sides. The base of the aquifer is horizontal and specified to be at an elevation of 0.0 m. The flow direction in the model domain is along the long axis of the model from top to bottom. + +A total of 65 rows, 15 columns, and 1 layer were used to discretize the model domain. A constant grid spacing of 609.61 m was used for each row. A grid spacing of 28.30 m was used for all columns except the center column (column 8); the grid spacing of column 8 was 30.48 m. The total simulation length was 24 hours and a constant time-step length of 5 minutes was used. + +The hydraulic conductivity of the aquifer is 3.048$\times$10$^{-3}$ m/s. The specific yield and specific storage are 0.25, and 1$\times$10$^{-7}$ 1/s, respectively. + +% add static parameter table(s) +\input{../tables/ex-gwf-sfr-pindersauer-01} + +A single river channel is located at the center of the aquifer (column 8) parallel to the long axis of the model domain and is simulated using the kinematic-wave approximation option available in the Streamflow Routing (SFR) package. The channel has a bed slope of 0.001, a width of 30.48 m, and a Manning roughness coefficient of 0.03858 s/m$^{1/3}$. For the case with aquifer exchange, the leakage coefficient is $1.402 \times 10^{-4}$ sec$^{-1}$ and seepage is assumed to occur only from the bottom. + +Initially, the saturated thickness of the aquifer is 67.05 and 27.43 m at the upstream and downstream ends of the aquifer, respectively. The initial reach stage in each reach was calculated using \textbf{equation~\ref{lalanaleqn}}, the bed elevation, and Mannings equation using reach parameters. + + +% add scenario table +\input{../tables/ex-gwf-sfr-pindersauer-scenario} + +The sinusoidal flood hydrograph introduced in the upstream SFR reach is, +\nolinebreak +\begin{equation} \label{lalhydrographeqn} +Q = 509.70 + 141.58 \sin \left( \frac{2 \pi t}{T_p} \right), +\end{equation} +\noindent +where $T_p$ is the period of disturbance (sec.) and $t$ is the simulation time (sec.). A $T_p$ value of 5 hours (18,000 sec.) was used. + +% for examples without scenarios +\subsection{Example Results} + +Simulated relative stage and discharge results 15,240 m downstream of the top end of the model domain are shown in \textbf{figure~\ref{fig:ex-gwf-sfr-ps-obs}}. Relative stage and discharge results were calculated using the initial stage and discharge of 52.12 m and 509.70 m$^3$/s, respectively. For comparison, simulated relative stage and discharge for a simulation without aquifer exchange (leakage coefficient $= 0.00$ sec$^{-1}$) are also shown in \textbf{figure~\ref{fig:ex-gwf-sfr-ps-obs}}. Analytical results calculated using \textbf{equation~\ref{lalanaleqn}} 15,240 m downstream of the top end of the model domain are also shown in \textbf{figure~\ref{fig:ex-gwf-sfr-ps-obs}}; SFR results are comparable to the analytical solution. + + +% a figure +\begin{StandardFigure} + {(A) Simulated relative stage change 15,240 m downstream of the top end of the model domain with and without aquifer exchange (leakage) for the modified Pinder-Sauer problem. (B) Comparison of relative discharge change 15,240 m downstream of the top end of the model domain and the analytical solution of \cite{lal2001modification} with and without aquifer exchange (leakage).} + {fig:ex-gwf-sfr-ps-obs}{../figures/ex-gwf-sfr-pindersauer-observations.png} +\end{StandardFigure} + + + diff --git a/scripts/ex-gwf-sfr-pindersauer.py b/scripts/ex-gwf-sfr-pindersauer.py new file mode 100644 index 00000000..ced38341 --- /dev/null +++ b/scripts/ex-gwf-sfr-pindersauer.py @@ -0,0 +1,411 @@ +# ## Advanced Packages +# +# This is the modified Pinder-Sauer problem, which is a surface-water/ +# groundwater exchange problem that is based on the problem of Pinder +# and Sauer (1971). This problems has been used as a benchmark test for +# coupled surface water/groundwater models (e.g., Swain and Wexler 1996). + +# ### Initial setup +# +# Import dependencies, define the example name and workspace, and read settings from environment variables. + +# + +import os +import pathlib as pl + +import flopy +import git +import matplotlib.pyplot as plt +import numpy as np +import pooch +from modflow_devtools.misc import get_env, timed + +# Example name and workspace paths. If this example is running +# in the git repository, use the folder structure described in +# the README. Otherwise just use the current working directory. +sim_name = "ex-gwf-sfr-pindersauer" +try: + root = pl.Path(git.Repo(".", search_parent_directories=True).working_dir) +except: + root = None +workspace = root / "examples" if root else pl.Path.cwd() +figs_path = root / "figures" if root else pl.Path.cwd() +data_path = root / "data" / sim_name if root else pl.Path.cwd() + +# Settings from environment variables +write = get_env("WRITE", True) +run = get_env("RUN", True) +plot = get_env("PLOT", True) +plot_show = get_env("PLOT_SHOW", True) +plot_save = get_env("PLOT_SAVE", True) +# - + +# Scenario-specific parameters +parameters = { + "ex-gwf-sfr-pindersauera": { + "lambda_val": (-4.779e-2, -0.3608), + "leakance": 0.0, + }, + "ex-gwf-sfr-pindersauerb": { + "lambda_val": (-0.1785, -0.3409), + "leakance": 1.42e-04, + }, +} + + +# ### Model setup +# +# Define functions to build models, write input files, and run the simulation. + +# + +# Model units +length_units = "meters" +time_units = "seconds" + +# Model parameters +nper = 1 # Number of periods +nstp = 288 # Number of time steps +dt = 300.0 # Time step length ($s$) +nlay = 1 # Number of layers +nrow = 65 # Number of rows +ncol = 15 # Number of columns +delr = "varies" # Column width ($m$) +delc = 609.61 # Row width ($m$) +top = "varies" # Top of the groundwater model ($m$) +botm = 0.0 # Bottom of the groundwater model ($m$) +strt = "varies" # Starting head ($m$) +k11 = 3.048e-3 # Hydraulic conductivity ($m/s$) +ss = 0.1e-6 # Specific storage ($1/s$) +sy = 0.25 # Specific yield (unitless) +nreaches = 65 # Number of reaches +slope = 0.001 # Reach bed slope ($m/m$) +roughness = 0.03858 # Mannings roughness coefficient ($s/m^{1/3}$) +q_base = 509.70 # Upstream inflow base rate ($m^3/s$) +q_amplitude = 141.58 # Upstream inflow amplitude ($m^3/s$) +lambda1 = "varies" # Amplitude decay constant +lambda2 = "varies" # Dimensionless wave number +Gamma = 4894.3 # Characteristic length related to the wave number of the water-level disturbance +fr = 3.49e-4 # Characteristic frequency of the system + +# Time discretization +times = np.arange(0.0, 86400.0 + dt, dt) +tdis_ds = [(86400.0, nstp, 1.0)] + +# load delr +fname = "delr.txt" +fpath = pooch.retrieve( + url=f"https://github.com/MODFLOW-USGS/modflow6-examples/raw/develop/data/{sim_name}/{fname}", + fname=fname, + path=data_path, + known_hash="md5:893ce3e7e186fe81d19e3e8c720986c1", +) +delr = np.loadtxt(fpath, dtype=float) + +# Define dimensions +extents = (0.0, delr * ncol, 0.0, delc * nrow) +shape2d = (nrow, ncol) +shape3d = (nlay, nrow, ncol) + +# Observation locations +obs_loc = 24.0 * delc # 24 is the location in the paper +obs_ifno = int(obs_loc / delc) + +# Create the top of the model +jcol_sfr = 7 +top = np.repeat( + np.linspace(8.675181e01, 4.773705e01, nrow).reshape(nrow, 1), ncol, axis=1 +) +top[:, jcol_sfr] = np.linspace(6.065575e01, 2.164100e01, nrow) + +# Define the inflow time series +inflows = q_base + q_amplitude * np.sin(2.0 * np.pi * times / 18000.0) +ts_data = [(t, q) for t, q in zip(times, inflows)] + +# Load the initial conditions (heads and stages) +fname = "initial_head.txt" +fpath = pooch.retrieve( + url=f"https://github.com/MODFLOW-USGS/modflow6-examples/raw/develop/data/{sim_name}/{fname}", + fname=fname, + path=data_path, + known_hash="md5:928af478596db57c65d3fbe8a0d15996", +) +strt = np.loadtxt(fpath, dtype=float) +fname = "initial_stage_a.txt" +fpath = pooch.retrieve( + url=f"https://github.com/MODFLOW-USGS/modflow6-examples/raw/develop/data/{sim_name}/{fname}", + fname=fname, + path=data_path, + known_hash="md5:4861ff917d741090aac22addd3a4726c", +) +stage = np.loadtxt(fpath, dtype=float) +parameters["ex-gwf-sfr-pindersauera"]["stage"] = [ + (ifno, float(stage[ifno])) for ifno in range(nreaches) +] +fname = "initial_stage_b.txt" +fpath = pooch.retrieve( + url=f"https://github.com/MODFLOW-USGS/modflow6-examples/raw/develop/data/{sim_name}/{fname}", + fname=fname, + path=data_path, + known_hash="md5:dc821ef57c471719387ac4e3fc659fa6", +) +stage = np.loadtxt(fpath, dtype=float) +parameters["ex-gwf-sfr-pindersauerb"]["stage"] = [ + (ifno, float(stage[ifno])) for ifno in range(nreaches) +] + +# SFR Package +upstream_frac = [0.0] + (nrow - 1) * [1.0] +nconn = [1] + (nrow - 2) * [2] + [1] +sfr_conn = ( + [(0, -1)] + + [(idx, idx - 1, -(idx + 1)) for idx in range(1, nrow - 1)] + + [(nrow - 1, (nrow - 2))] +) +sfr_spd = {0: [(0, "inflow", "inflow")]} +# - + + +# ### Analytical solution +# +# Modified analytical solution of Lal (2001) +def analytical_solution(lambdas, x, t): + return q_base + q_amplitude * np.exp(lambdas[0] * x / Gamma) * np.sin( + fr * t + lambdas[1] * x / Gamma + ) + + +# ### Model setup +# +# Define functions to build models, write input files, and run the simulation. + + +# + +def build_models(sim_name, lambda_val, leakance, stage): + sim_ws = os.path.join(workspace, sim_name) + name = sim_name.replace("pindersauer", "ps") + sim = flopy.mf6.MFSimulation(sim_name=name, sim_ws=sim_ws, exe_name="mf6") + flopy.mf6.ModflowTdis(sim, nper=nper, perioddata=tdis_ds, time_units=time_units) + flopy.mf6.ModflowIms(sim) + gwf = flopy.mf6.ModflowGwf(sim, modelname=name) + flopy.mf6.ModflowGwfdis( + gwf, + length_units=length_units, + nlay=nlay, + nrow=nrow, + ncol=ncol, + delr=delr, + delc=delc, + top=top, + botm=botm, + ) + flopy.mf6.ModflowGwfnpf( + gwf, + icelltype=1, + k=k11, + ) + flopy.mf6.ModflowGwfsto( + gwf, + iconvert=1, + sy=sy, + ss=ss, + transient={0: True}, + ) + flopy.mf6.ModflowGwfic(gwf, strt=strt) + oc = flopy.mf6.ModflowGwfoc(gwf, printrecord=[("budget", "all")]) + + pak_data = [ + ( + ifno, + 0, + ifno, + jcol_sfr, + delc, + delr[jcol_sfr], + slope, + top[ifno, jcol_sfr], + 1.0, + leakance, + roughness, + nconn[ifno], + upstream_frac[ifno], + 0, + ) + for ifno in range(nreaches) + ] + sfr = flopy.mf6.ModflowGwfsfr( + gwf, + print_input=True, + print_flows=True, + storage=True, + nreaches=nreaches, + packagedata=pak_data, + connectiondata=sfr_conn, + initialstages=stage, + perioddata=sfr_spd, + pname="sfr-1", + ) + sfr.ts.initialize( + filename=f"{name}.sfr.ts", + timeseries=ts_data, + time_series_namerecord=["inflow"], + interpolation_methodrecord=["linearend"], + ) + fname = f"{name}.sfr.obs" + sfr_obs = { + f"{fname}.csv": [ + ("inflow-ext", "ext-inflow", (0,)), + ("inflow", "inflow", (obs_ifno,)), + ("outflow", "outflow", (obs_ifno,)), + ("stage", "stage", (obs_ifno,)), + ("depth", "depth", (obs_ifno,)), + ] + } + sfr.obs.initialize(filename=fname, print_input=True, continuous=sfr_obs) + return sim + + +def write_models(sim, silent=True): + sim.write_simulation(silent=silent) + + +@timed +def run_models(sim, silent=True): + success, buff = sim.run_simulation(silent=silent) + assert success, buff + + +# - + +# ### Plotting results +# +# Define functions to plot model results. + +# + +# Figure properties +figure_size = (6.3, 5.6) + + +def plot_observations(sim_list, silent=True): + colors = ("blue", "black") + labels = ("no leakage", "leakage") + markers = ("s", "o") + mosaic = [ + ["a"], + ["a"], + ["a"], + ["a"], + ["b"], + ["b"], + ["b"], + ["b"], + ["c"], + ] + + analytical = [] + for key, value in parameters.items(): + lambda_val = value["lambda_val"] + analytical.append(analytical_solution(lambda_val, obs_loc, times) - q_base) + + with flopy.plot.styles.USGSPlot(): + fig, axs = plt.subplot_mosaic( + mosaic, sharex=False, figsize=(7, 5), layout="constrained" + ) + + for key in ("a", "b"): + ax = axs[key] + ax.set_xlim(0, 24) + ax.set_xticks([0, 6, 12, 18, 24]) + if key == "a": + ax.set_xticklabels([]) + + for idx, sim in enumerate(sim_list): + obs = sim.get_model().sfr.output.obs().get_data() + obs["totim"] /= 3600.0 + + label = labels[idx] + + ax = axs["a"] + ax.set_ylim(-1.25, 1.25) + b = obs["DEPTH"] + ax.plot(obs["totim"], b - b.mean(), color=colors[idx], lw=0.75, label=label) + ax.axhline(0.0, color="0.5", lw=0.5, label=None) + ax.set_ylabel("Relative stage, m") + flopy.plot.styles.heading(ax, idx=0) + + ax = axs["b"] + ax.set_ylim(-150, 150) + q = -obs["OUTFLOW"] + ax.plot(obs["totim"], q - q_base, color=colors[idx], lw=0.75, label=label) + ax.plot( + (times / 3600)[::3], + analytical[idx][::3], + color=colors[idx], + marker=markers[idx], + mfc="none", + ms=4, + lw=0.0, + label=f"{label}-analytical", + ) + ax.axhline(0.0, color="0.5", lw=0.5, label=None) + ax.set_ylabel("Relative streamflow, m$^3$/s") + flopy.plot.styles.heading(ax, idx=1) + + ax = axs["b"] + leg_handles, leg_labels = ax.get_legend_handles_labels() + ax.set_xlim(0, 24) + ax.set_xlabel("Simulation time, hours") + + ax = axs["c"] + ax.axis("off") + flopy.plot.styles.graph_legend( + ax, leg_handles, leg_labels, ncol=2, loc="center" + ) + + fig.align_labels() + + if plot_show: + plt.show() + if plot_save: + fpth = figs_path / f"{sim_name}-observations.png" + fig.savefig(fpth) + + +def plot_results(silent=True): + sim_list = [] + for key in parameters.keys(): + sim_ws = os.path.join(workspace, key) + sim_name = key.replace("pindersauer", "ps") + sim_list.append(flopy.mf6.MFSimulation.load(sim_ws=sim_ws)) + plot_observations(sim_list, silent=silent) + + +# - + +# ### Running the example +# +# Define and invoke a function to run the example scenario, then plot results. + + +# + +def scenario(idx, silent=True): + key = list(parameters.keys())[idx] + params = parameters[key].copy() + sim = build_models(key, **params) + if write: + write_models(sim, silent=silent) + if run: + run_models(sim, silent=silent) + + +# Run without leakage. + +scenario(0) + +# Run with leakage. + +scenario(1) + +# Plot results. + +if plot: + plot_results()