Visualization dump of cumulative ET

91 views
Skip to first unread message

Utkarsh Mital

unread,
Aug 12, 2025, 2:18:13 PM8/12/25
to Amanzi-ATS Users
Hello all,
Can we create a custom variable for visualization dumps? Specifically, is it possible to dump 8-day cumulative ET values? I wish to use MODIS ET (which reports 8-day accumulated values) to validate my ATS runs. I understand I could do visualization dumps every day and then accumulate the values, but that will generate an extremely large number of files. Wondering if there is a possible workaround. I am on ATS 1.5.1.

Regards,
Utkarsh

Coon, Ethan

unread,
Aug 12, 2025, 2:43:17 PM8/12/25
to Utkarsh Mital, Amanzi-ATS Users

Yes and no?

 

Yes, you can create custom variables (with evaluators) for visualization dumps.  I believe they should be correctly “updated” when visualized, but that should be checked and tested.  I believe you can (or with a few minor changes could) even have separate vis files that would only visualize that one variable every 8 days.

 

No, I’m not sure we have a way to integrate in time the ET over those 8 days.  In “observations” we have the “integrated in time” option, but I don’t think we have a corresponding option for vis/evaluators.  It shouldn’t be hard to do, but it’s something that would have to be added. 

 

We do have something somewhat similar – for instance we have a “max thaw depth” evaluator that tracks, over a year, the max thaw depth, then resets after a year to track the next year.  But I believe this is hard-coded – it isn’t a convenient option that could be done on any variable, with any type of reset period (e.g. reset the integral every 8 days) or any type of function (e.g. integrate, not max).  It wouldn’t be that hard to do, but it’s definitely new code that would have to be added.

 

If you start a ticket requesting the capability, I’ll get someone to work on it after the short course.

 

Ethan

 

--
You received this message because you are subscribed to the Google Groups "Amanzi-ATS Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to ats-users+...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/ats-users/0bb28ca0-6776-4f7a-9a06-af9cdcb38a2cn%40googlegroups.com.

Utkarsh Mital

unread,
Aug 12, 2025, 2:54:26 PM8/12/25
to Coon, Ethan, Amanzi-ATS Users
Thanks for the reply, Ethan. I’ll think about defining this problem some more and then request a ticket. 
In particular, MODIS ET is not always accumulated over 8 days. At the end of the calendar year, MODIS reports ET accumulated over 5 or 6 days (depending on whether a year has 365 or 366 days). For ATS, that would amount to 5 days (since we do not have leap years in ATS). That exception would need to be baked in as well.

In the immediate term, daily visualization dumps would be a solution. To reduce file sizes, is it possible to reduce the number of, or explicitly specify which, variables that are dumped?

Regards,
Utkarsh

Ethan Coon

unread,
Aug 12, 2025, 5:44:50 PM8/12/25
to Utkarsh Mital, Coon, Ethan, Amanzi-ATS Users
Yes, that can be done.  Let me get back to you in the next few days with an example.

The thing that may not be possible but should be fixed to make it possible is to have two vis files — one that does daily ET, and one that does (for instance) monthly slices of all variables. 

The code would support it now; I’m not sure if our input spec supports it.

Ethan


-------------------------------------------------------------------
Ethan Coon
917-969-6831
https://www.ornl.gov/staff-profile/ethan-t-coon
-------------------------------------------------------------------


Utkarsh Mital

unread,
Aug 28, 2025, 1:36:45 PM8/28/25
to Amanzi-ATS Users
Hi Ethan,
I wanted to follow up on this. Could you share an example where it is possible to specify how we can pick specific variables for visualization dump?
Regarding two vis files, would it help if I request a ticket for that as well?

Regards,
Utkarsh

Coon, Ethan

unread,
Aug 28, 2025, 1:49:36 PM8/28/25
to Utkarsh Mital, Amanzi-ATS Users

On the ticket, yes – otherwise it will get forgotten.  It still won’t happen until after the short course, but at least it is in the system.

 

On variables – I know we used to have it, but it might be in Amanzi only?  I don’t see it in the current code.  So go ahead and make a ticket for that as well.  Maybe David or Daniil can comment.

 

Thanks,

 

Ethan

 

 

 

Victor Oladoja

unread,
Jul 1, 2026, 10:57:30 AMJul 1
to Amanzi-ATS Users
Hi Utkarsh and Ethan,

I wanted to follow up on this. 

From my understanding of visualization dumps, if it is set to daily, the dump is for the last step/cycle on a daily basis, not time-integrated over the entire day. Is this correct? If so, is there now a way to integrate in time?

Best,
Victor

Utkarsh Mital

unread,
Jul 2, 2026, 12:30:01 PMJul 2
to Victor Oladoja, Amanzi-ATS Users
Hello,

Curious if you got an answer to this. I was implicitly assuming that the dump is time-integrated over the entire day, but Victor’s question makes me think maybe that’s not the case. If that’s not the case, is it possible to dump every time step so that we can time integrate to daily time step in post-processing?

Best,
Utkarsh

You received this message because you are subscribed to a topic in the Google Groups "Amanzi-ATS Users" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/ats-users/wKuv-5a1dIo/unsubscribe.
To unsubscribe from this group and all its topics, send an email to ats-users+...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/ats-users/c7900afa-b331-46ad-a962-2b16e4c84be9n%40googlegroups.com.

Bo Gao

unread,
Jul 4, 2026, 10:16:22 PMJul 4
to Utkarsh Mital, Victor Oladoja, Amanzi-ATS Users
Here are my understandings about this question. 

The primary goal of the visualization output is to provide snapshots of the model state at the requested output times, rather than quantities integrated over the output interval. The snapshots are helpful for understanding the spatial distribution of model variables and also for debugging model behavior at a particular time point. So generally we do not output visualizations too frequently unless it is specifically needed since they can generate a very large amount of data. Most variables in the visualization output are state variables (e.g., pressure, temperature, water depth, water content, etc), and snapshot output would be suitable for them. There is a relatively small subset of variables representing rates or fluxes (e.g., evaporation, snowmelt, precipitation, infiltration), and for them time integration would be meaningful. For those rate/flux variables, the preference is generally to use observations to compute time-integrated, area-weighted quantities over the domain frequently, which is more storage-efficient than high-frequency visualization output. I am not sure whether spatially time-integration of rate/flux variables will be considered.

Best,
Bo Gao

Utkarsh Mital

unread,
Jul 4, 2026, 11:09:24 PMJul 4
to Bo Gao, Victor Oladoja, Amanzi-ATS Users
Hi Bo,
Thank you for the clarification. Two questions:

1. How can we add observations for desired spatial coordinates (lat/lon for surface, or lat/lon/depth for subsurface)?
2. How do we output visualization for every time step?

Best wishes,
Utkarsh

On Jul 4, 2026, at 7:16 PM, Bo Gao <boga...@gmail.com> wrote:



Bo Gao

unread,
Jul 6, 2026, 12:22:59 AMJul 6
to Utkarsh Mital, Victor Oladoja, Amanzi-ATS Users
Hi Utkarsh,

For the first question, I think you can label a region when you generate your mesh or define a region in ATS input file, and use it in observations for ATS output. The second, I guess the best way is to output per cycle (or per several cycles), like  
  <Parameter name="cycles start period stop" type="Array(int)" value="{0, 1, -1}" />
Actually, If you use "time start period stop" to control visualization output frequency, and define a very small interval, it will also constrain the computing time step. Even if PK or physics determined time step is large, ATS also force to take the smaller time step constrained by a lot of time intervals, like visualization, checkpoint time interval, and observation.

Best,
Bo Gao

Coon, Ethan

unread,
Jul 7, 2026, 11:15:21 AMJul 7
to Bo Gao, Utkarsh Mital, Victor Oladoja, Amanzi-ATS Users
One clarification — regions are specified in UTM/whatever projected coordinate system your mesh is in, not lat-lon.  We don’t really do anything in lat-lon (with the exception of a few of the radiation geometry calculations).

Ethan

From: ats-...@googlegroups.com <ats-...@googlegroups.com> on behalf of Bo Gao <boga...@gmail.com>
Date: Sunday, July 5, 2026 at 10:23 PM
To: Utkarsh Mital <umi...@lbl.gov>
Cc: Victor Oladoja <oladoj...@gmail.com>; Amanzi-ATS Users <ats-...@googlegroups.com>
Subject: Re: [EXTERNAL] Visualization dump of cumulative ET

This Message Is From an External Sender
This email was sent from a non-ORNL address. If suspicious, use the Report Phish button in Outlook.
 

Utkarsh Mital

unread,
Jul 9, 2026, 4:23:08 PMJul 9
to Coon, Ethan, Bo Gao, Victor Oladoja, Amanzi-ATS Users
Following up on this a bit more to make sure I get the visualization dumps for every cycle.

This is how I am currently outputting visualization files. I use daily meteorological and lai data as forcing. Seems like this won’t give me visualization dumps at every time step if the time step is smaller than one day. Start day is 274 since I start the simulation on DOY 274.

<ParameterList name="visualization">
<ParameterList name="domain" type="ParameterList">
<Parameter name="times start period stop" type="Array(double)" value="{274,1,-1}" />
<Parameter name="times start period stop units" type="string" value="d" />
<Parameter name="time units" type="string" value="d" />
</ParameterList>
<ParameterList name="surface" type="ParameterList">
<Parameter name="times start period stop" type="Array(double)" value="{274,1,-1}" />
<Parameter name="times start period stop units" type="string" value="d" />
<Parameter name="time units" type="string" value="d" />
<Parameter name="aliased domains" type="Array(string)" value="{snow,canopy}" />
</ParameterList>
</ParameterList>


Per your suggestion, if I desire to get vis dumps for every time step, I should do the following instead:

<ParameterList name="visualization">
<ParameterList name="domain" type="ParameterList">
<Parameter name="cycles start period stop" type="Array(int)" value="{0,1,-1}" />
<Parameter name="time units" type="string" value="d" />
</ParameterList>
<ParameterList name="surface" type="ParameterList">
<Parameter name="cycles start period stop" type="Array(int)" value="{0,1,-1}" />
<Parameter name="time units" type="string" value="d" />
<Parameter name="aliased domains" type="Array(string)" value="{snow,canopy}" />
</ParameterList>
</ParameterList>

Is it ok to combine “time units” with cycles as shown above since I wish to map the cycle to physical time?

Thank you,
Utkarsh

Bo Gao

unread,
Jul 9, 2026, 5:34:40 PMJul 9
to Utkarsh Mital, Coon, Ethan, Victor Oladoja, Amanzi-ATS Users
Correct.


Reply all
Reply to author
Forward
0 new messages