Inverse Solution Doesn't Iterate

 Posts: 6
 Joined: Fri Oct 25, 2013 6:02 pm
 Location: USA
Inverse Solution Doesn't Iterate
I'm using the newest version of HYDRUS1D for a simple water flow occurring over 1000 hours for a 94 cm sandy soil (1 layer).
In the ATMOSPH.IN file: Rainfall in, ETc out (included as rRoot).
In the FIT.IN file, I'm including soil water content for each hour of the 1000 hours.
I need the program to provide the best solution for my hydraulic parameters. I'm trying to find thetaR, thetaS, alpha, n, and Ks: a full calibration.
Each time I run the model with the inverse solution selected, it iterates only once even though I have it set to run between 100300 times (I don't remember where I landed finally). As a result, it doesn't change my initial values and the statistics make no sense with predicted values of 0 for all 1000 hours.
Any suggestions? I've attached my input and output files in case they help.
Thanks,
Stacia
In the ATMOSPH.IN file: Rainfall in, ETc out (included as rRoot).
In the FIT.IN file, I'm including soil water content for each hour of the 1000 hours.
I need the program to provide the best solution for my hydraulic parameters. I'm trying to find thetaR, thetaS, alpha, n, and Ks: a full calibration.
Each time I run the model with the inverse solution selected, it iterates only once even though I have it set to run between 100300 times (I don't remember where I landed finally). As a result, it doesn't change my initial values and the statistics make no sense with predicted values of 0 for all 1000 hours.
Any suggestions? I've attached my input and output files in case they help.
Thanks,
Stacia
 Attachments

 Citra.zip
 Model input and output files from last run.
 (112.09 KiB) Downloaded 378 times
Re: Inverse Solution Doesn't Iterate
I have looked at the attached project. There is so many things wrong that I do not know where to start. I suggest that before you start working on your own project, you do the tutorials that we posted on the HYDRUS website at: http://www.pcprogress.com/en/Default.a ... tutorials. First those on the direct problem and then that on the inverse problem. You should also look at the project that come with the installation and those that we post on the HYDRUS website at: http://www.pcprogress.com/en/Default.a ... brary.That should certainly help you start. J.

 Posts: 6
 Joined: Fri Oct 25, 2013 6:02 pm
 Location: USA
Re: Inverse Solution Doesn't Iterate
Hi Jirka,
I have used the tutorials for the direct problem. I haven't tried the inverse tutorial, but I think I will have the same issue. The tutorials tell you what to put in the boxes, but it doesn't tell you why. It's great that you're supposed to put in this information:
Time Information
Final Time: 1
Initional Time Step: 0.0001
Minimum Time Step: 0.000001
Button ”Next”
But why am I selecting that information?? Maybe these values should be different for my application? I have no way of knowing. I've looked for videos with someone talking through the problems, but none seem to exist.
I'd rather you give me some areas to address  even if it's not all problems  so that I can make some progress. Some areas I didn't understand and are probably wrong include: minimum and maximum timesteps, number of timevariable boundary conditions (I'm trying to include rainfall and ETc as Tp  should I have 2 instead of 1?), and time step control selections. Are there other areas you think I need to address first?
Any help would be appreciated.
Thanks,
Stacia
I have used the tutorials for the direct problem. I haven't tried the inverse tutorial, but I think I will have the same issue. The tutorials tell you what to put in the boxes, but it doesn't tell you why. It's great that you're supposed to put in this information:
Time Information
Final Time: 1
Initional Time Step: 0.0001
Minimum Time Step: 0.000001
Button ”Next”
But why am I selecting that information?? Maybe these values should be different for my application? I have no way of knowing. I've looked for videos with someone talking through the problems, but none seem to exist.
I'd rather you give me some areas to address  even if it's not all problems  so that I can make some progress. Some areas I didn't understand and are probably wrong include: minimum and maximum timesteps, number of timevariable boundary conditions (I'm trying to include rainfall and ETc as Tp  should I have 2 instead of 1?), and time step control selections. Are there other areas you think I need to address first?
Any help would be appreciated.
Thanks,
Stacia
Re: Inverse Solution Doesn't Iterate
Each dialog window has an extensive help. For examples, for these variables, for which you write that you "have no way of knowing" what values to use, there is the following information:
Initial Time Step Initial time increment, dt [T]. The recommended value for the initial time step depends on the type of simulation and boundary conditions used. When simulating a process that starts with a large initial pressure head or concentration gradient at the boundary (e.g., ponded infiltration or a sudden change of boundary concentration), use a small value of the initial time step (e.g., 1 s). When simulating a long term process with variable boundary conditions (e.g., seasonal or multiyear simulation), start with a larger time step (e.g., 15 min). This is because this initial time step is used whenever time variable boundary conditions significantly change (e.g., the water flux changes by 25% or more). If needed (if there is no convergence for delta tinit), the program will still use a smaller time step than delta tinit, but starting with larger delta tinit leads to more efficient calculations. In general smaller initial time steps must be used for soil with more nonlinear soil hydraulic properties (e.g., course textured soils) and larger initial time steps can be used for soil with less nonlinear soil hydraulic properties (e.g., loam).
Minimum Time Step Minimum permitted value of the time increment, dtmin [T].The minimum time step must be smaller than a) the initial time step, b) interval between print times, and c) interval between timevariable boundary condition records. Always specify a small minimum allowed time step, on the order of 1 s. This value may never be used, but it provides the code with flexibility when it may be needed, e.g., when there is a sudden change in boundary fluxes and HYDRUS may not converge with larger time steps.
Maximum Time Step Maximum permitted value of the time increment, dtmax [T]. This is relatively unimportant parameter and a large value may be specified. Since HYDRUS automatically selects its optimal time step, there is usually no need to constraint that. The only time when there is a need to constrain the time step is likely for cases when HYDRUS is asked to generate internally intradaily variations in temperature, or in evaporation and transpiration fluxes. Then there is a need to have time step smaller (e.g., 1 h) so that these daily variations can be properly modeled. The recommended value would then be about 1/20 of the Time Interval (day, year).
How much more information do you need or expect? J.
Initial Time Step Initial time increment, dt [T]. The recommended value for the initial time step depends on the type of simulation and boundary conditions used. When simulating a process that starts with a large initial pressure head or concentration gradient at the boundary (e.g., ponded infiltration or a sudden change of boundary concentration), use a small value of the initial time step (e.g., 1 s). When simulating a long term process with variable boundary conditions (e.g., seasonal or multiyear simulation), start with a larger time step (e.g., 15 min). This is because this initial time step is used whenever time variable boundary conditions significantly change (e.g., the water flux changes by 25% or more). If needed (if there is no convergence for delta tinit), the program will still use a smaller time step than delta tinit, but starting with larger delta tinit leads to more efficient calculations. In general smaller initial time steps must be used for soil with more nonlinear soil hydraulic properties (e.g., course textured soils) and larger initial time steps can be used for soil with less nonlinear soil hydraulic properties (e.g., loam).
Minimum Time Step Minimum permitted value of the time increment, dtmin [T].The minimum time step must be smaller than a) the initial time step, b) interval between print times, and c) interval between timevariable boundary condition records. Always specify a small minimum allowed time step, on the order of 1 s. This value may never be used, but it provides the code with flexibility when it may be needed, e.g., when there is a sudden change in boundary fluxes and HYDRUS may not converge with larger time steps.
Maximum Time Step Maximum permitted value of the time increment, dtmax [T]. This is relatively unimportant parameter and a large value may be specified. Since HYDRUS automatically selects its optimal time step, there is usually no need to constraint that. The only time when there is a need to constrain the time step is likely for cases when HYDRUS is asked to generate internally intradaily variations in temperature, or in evaporation and transpiration fluxes. Then there is a need to have time step smaller (e.g., 1 h) so that these daily variations can be properly modeled. The recommended value would then be about 1/20 of the Time Interval (day, year).
How much more information do you need or expect? J.
Re: Inverse Solution Doesn't Iterate
I am using Hydrus 1D inverse data simulation to fit nanoparticles transport in an artificial soil column (L 3,8 cm, diam=2,4 cm) under saturated flow.
I used a constant flux of solution (0,0018 m/s) and a single pulse of nanoparticles.
Following Fang, 2013 http://www.sciencedirect.com/science/ar ... 541200872X the transport consider 2 retention sites, one with attachment and detachment and the second with straining.
Thus, I work on flux concentration with a modified van Genuchten model in sand without hysteresis.
I set a constant flux of 1,8 E5 (water content) for upper boundary condition and free drainage as a lower boundary condition.
Then I used a two kinetic sites model for colloidfacilitaed transport (but no size exclusion) with the following parameters :
r0=1.5
disp= 0
Frac=0
ThImob=1E6
Dif W=0.9
Dsoil=0.055
Kd= 0.6 (to be fitt and varying between 1E11 et 1 E11)
Nu=0
Beta=1
henry=0
SinkWater1=0
SinkSolid1=0
ipsi2=1
ipsi1=4
Smax2=1
AtachSolid2=10 to be fitt between 1E13 and 100000)
DetachSolid2=0.1 to be fitt between 1E13 and 100000)
Smax1=0.432
AttachSolid1 =0.2 to be fit between 0 and 2000
Detach solid=0.
Solute transport is in concentration flux for upper boundary conditions and in zero concentration gradient for lower.
I've used (N0N)/V (absolute spike amounteluant absolute amount of NP)/volume and time.
As Pinatta Ket I got the bad result from the simulation as you could see in the attached file: No correlation in the matrix box in the inverse solution information, R2=0.000.
Here is a file with hydrus input and output I've used.
Could you please check why I could not get good result?
I am looking forward to hearing from you soon.
Thank you.
Best regards,
laura Sereni
I used a constant flux of solution (0,0018 m/s) and a single pulse of nanoparticles.
Following Fang, 2013 http://www.sciencedirect.com/science/ar ... 541200872X the transport consider 2 retention sites, one with attachment and detachment and the second with straining.
Thus, I work on flux concentration with a modified van Genuchten model in sand without hysteresis.
I set a constant flux of 1,8 E5 (water content) for upper boundary condition and free drainage as a lower boundary condition.
Then I used a two kinetic sites model for colloidfacilitaed transport (but no size exclusion) with the following parameters :
r0=1.5
disp= 0
Frac=0
ThImob=1E6
Dif W=0.9
Dsoil=0.055
Kd= 0.6 (to be fitt and varying between 1E11 et 1 E11)
Nu=0
Beta=1
henry=0
SinkWater1=0
SinkSolid1=0
ipsi2=1
ipsi1=4
Smax2=1
AtachSolid2=10 to be fitt between 1E13 and 100000)
DetachSolid2=0.1 to be fitt between 1E13 and 100000)
Smax1=0.432
AttachSolid1 =0.2 to be fit between 0 and 2000
Detach solid=0.
Solute transport is in concentration flux for upper boundary conditions and in zero concentration gradient for lower.
I've used (N0N)/V (absolute spike amounteluant absolute amount of NP)/volume and time.
As Pinatta Ket I got the bad result from the simulation as you could see in the attached file: No correlation in the matrix box in the inverse solution information, R2=0.000.
Here is a file with hydrus input and output I've used.
Could you please check why I could not get good result?
I am looking forward to hearing from you soon.
Thank you.
Best regards,
laura Sereni
 Attachments

 CFT_A3.tar.gz
 (8.43 KiB) Downloaded 259 times
Re: Inverse Solution Doesn't Iterate
Laura,
We have posted a lot of examples on how to model transport of bacteria, nanoparticles, etc on the HYDRUS website. Looking how you set up your problem, I can see that you clearly have not look at them since your water flow is set up completely wrong. I think you will first need to do your homework and look at these examples, before you can start running solute (nanoparticle) transport. Note that you disabled water flow, while your initial and boundary conditions are completely incompatible.
J.
We have posted a lot of examples on how to model transport of bacteria, nanoparticles, etc on the HYDRUS website. Looking how you set up your problem, I can see that you clearly have not look at them since your water flow is set up completely wrong. I think you will first need to do your homework and look at these examples, before you can start running solute (nanoparticle) transport. Note that you disabled water flow, while your initial and boundary conditions are completely incompatible.
J.
Re: Inverse Solution Doesn't Iterate
Dear Jirka,
Thanks for the time you took to have a look on mu project.
I've tried to understand and to apply the examples I've found to my experiment. However I didn't understood what parameters were neither rigourous tutorials describing step by step inputs and experiments...
Could you please told me what is impossible in my water flow model ?
Thanks again,
Laura
Thanks for the time you took to have a look on mu project.
I've tried to understand and to apply the examples I've found to my experiment. However I didn't understood what parameters were neither rigourous tutorials describing step by step inputs and experiments...
Could you please told me what is impossible in my water flow model ?
Thanks again,
Laura
Re: Inverse Solution Doesn't Iterate
Note that we provide both model runs, as well as publications which provide all details about those model runs. We can hardly provide more information. First, you need to fix water flow. Only once water flow works you can proceed to solute transport. Also, first you need to be able to run the model in the direct mode (or with zero inverse iteration) and check that your problem is well defined. J.
Re: Inverse Solution Doesn't Iterate
Dear Jirka,
I've found some tutorials on the website and processed them. However, the only description I've found are made in term of set this parameter to x without explanation about the effect of this modification...
Then, I don't know how to fit it with my experimental set up...
laura
I've found some tutorials on the website and processed them. However, the only description I've found are made in term of set this parameter to x without explanation about the effect of this modification...
Then, I don't know how to fit it with my experimental set up...
laura
Re: Inverse Solution Doesn't Iterate
Note that in the examples that I referred to in my previous email:
e.g., for bacteria transport: https://www.pcprogress.com/en/Default. ... bbacteria
and transport of nanotubes: https://www.pcprogress.com/en/Default. ... nanotubes
I also posted the research papers that we published, in which these calculations were used. The discussion of various parameters and their contribution to the final fit is discussed in these papers. J.
e.g., for bacteria transport: https://www.pcprogress.com/en/Default. ... bbacteria
and transport of nanotubes: https://www.pcprogress.com/en/Default. ... nanotubes
I also posted the research papers that we published, in which these calculations were used. The discussion of various parameters and their contribution to the final fit is discussed in these papers. J.
Re: Inverse Solution Doesn't Iterate
Dear Jirka,
From the different tutorials you provided I understood that to model retention of NP on soil column from effluent concentration data we should provide a Kd=0, eta=0 and beta=1, then play with the ipsi1 and 2 value.
However playing with these parameters I never managed to have r^2 better than 0,19 with Kd=0, eta=0 and beta=1 but reached 0,49 with KD=0,6 ; eta=0,4 ; beta=1 and a single langmurian sorption site (which fitt Smax, katt and kdet). D'you have any idea about what that could means ?
Also :
 ripening model failed (eg either model run and once calculations are done there is no output files either nothing fitt)
and
when I tried to model 1 or 2 Langmurian blocking sites I sometimes got a fitting for Smax, sometimes I didn't... I was then wondering if I should let it fitting or set a value (and which one).
Did I do something wrong ?
Thanks for your help,
Laura
From the different tutorials you provided I understood that to model retention of NP on soil column from effluent concentration data we should provide a Kd=0, eta=0 and beta=1, then play with the ipsi1 and 2 value.
However playing with these parameters I never managed to have r^2 better than 0,19 with Kd=0, eta=0 and beta=1 but reached 0,49 with KD=0,6 ; eta=0,4 ; beta=1 and a single langmurian sorption site (which fitt Smax, katt and kdet). D'you have any idea about what that could means ?
Also :
 ripening model failed (eg either model run and once calculations are done there is no output files either nothing fitt)
and
when I tried to model 1 or 2 Langmurian blocking sites I sometimes got a fitting for Smax, sometimes I didn't... I was then wondering if I should let it fitting or set a value (and which one).
Did I do something wrong ?
Thanks for your help,
Laura
Re: Inverse Solution Doesn't Iterate
Laura,
I have looked at your project that you attached here earlier and there was little that made sense to me (initial water content = 0.9; porosity = 0.43; flux = 1.816e005, Ks=0.495; why would you use modified VGM model? ). There was so many problems with that project that I was not surprised that you could not succeed with fitting the breakthrough curves. Therefore, I suggested that you look at some existing HYDRUS project for similar applications. Have you fixed some of these problems after looking at the posted HYDRUS projects? Note that you cannot fit BTC unless you have flow right first. There is no reason to try to fit BTC and use different solute transport models unless you have flow right. J.
I have looked at your project that you attached here earlier and there was little that made sense to me (initial water content = 0.9; porosity = 0.43; flux = 1.816e005, Ks=0.495; why would you use modified VGM model? ). There was so many problems with that project that I was not surprised that you could not succeed with fitting the breakthrough curves. Therefore, I suggested that you look at some existing HYDRUS project for similar applications. Have you fixed some of these problems after looking at the posted HYDRUS projects? Note that you cannot fit BTC unless you have flow right first. There is no reason to try to fit BTC and use different solute transport models unless you have flow right. J.
Re: Inverse Solution Doesn't Iterate
Jirka ,
I've actually modified my project following some advices from an Hydrus user. Here is the modified version I'm using.
Thanks
I've actually modified my project following some advices from an Hydrus user. Here is the modified version I'm using.
Thanks
 Attachments

 CFT_A3_37.h1d.tar.gz
 (493 Bytes) Downloaded 292 times

 Posts: 4
 Joined: Wed May 22, 2019 8:58 pm
 Location: USA
Re: Inverse Solution Doesn't Iterate
Hi there,
I'm simulating the transport of ermC (gene) in a sandy loam soil column. I've checked, tried, and used as examples the ones posted online for bacteria transport in https://www.pcprogress.com/en/Default. ... bbacteria
I already used the tracer data to estimate K, n, and dispersivity. I got a good fitting for those parameters (R2=0.95). I'm also using the inverse solution to estimate the attachment, detachment and strain coefficients. But HYDRUS 1D is not running my simulation. So I was wondering if anyone can give me any suggestion. Please find attached the files for the tracer and ermC transport data. Thanks in advance for your time and help!
I'm simulating the transport of ermC (gene) in a sandy loam soil column. I've checked, tried, and used as examples the ones posted online for bacteria transport in https://www.pcprogress.com/en/Default. ... bbacteria
I already used the tracer data to estimate K, n, and dispersivity. I got a good fitting for those parameters (R2=0.95). I'm also using the inverse solution to estimate the attachment, detachment and strain coefficients. But HYDRUS 1D is not running my simulation. So I was wondering if anyone can give me any suggestion. Please find attached the files for the tracer and ermC transport data. Thanks in advance for your time and help!
 Attachments

 SL1Tracer.rar
 (30.57 KiB) Downloaded 113 times

 SL1ermC.rar
 (188.38 KiB) Downloaded 115 times

 Posts: 4
 Joined: Wed May 22, 2019 8:58 pm
 Location: USA
Re: Inverse Solution Doesn't Iterate
I'm sorry. In the previous post, I didn't upload the right file for ermC transport. Please find attached the correct one. This one considers that the concentration of ermC (which comes from dairy manure applied on top of the column) is changing with time. In a separate experiment, we measured the release concentration of ermC with time. We input that data in the time boundary conditions table. Sorry for the confusion. Thanks!
 Attachments

 SL1ermC2.rar
 (23.91 KiB) Downloaded 113 times