Welcome, Guest
Username: Password: Remember me
  • Page:
  • 1
  • 2

TOPIC: Measure flooded area

Measure flooded area 11 years 11 months ago #6713

  • andersfrisk
  • andersfrisk's Avatar
Hi

I've made a couple of 2D-calculations with Telemac and now I am analysing the results in Fudaa.

I wonder: How do I measure the m2 of the flooded area, for example I want to know how large area that has depth larger then 0.01m.

I cant find a way to this, neither in the documentation, or in the forum.

Best regards - Anders Frisk
The administrator has disabled public write access.

Measure flooded area 11 years 11 months ago #6720

  • Fauret
  • Fauret's Avatar
  • OFFLINE
  • Junior Boarder
  • Posts: 44
  • Thank you received: 12
I looked at this problem with BlueKenue and could not find a simple answer. I guess it could be done with the Editor in BK, by adding and subtracting various objects, but the procedure would have to be repeated each time you have a new Telemac2D output.


So I wrote a small procedure in Fortran which read the Telemac2D output file, and look at each element to see if they are flooded, and then I add them up.
You can prepare the procedure
• outside Telemac as a separate program or
• as a new subroutine in the Fortran file of Telemac
Thierry Faure
The administrator has disabled public write access.

Measure flooded area 11 years 11 months ago #6721

Hi a small fortran code is probably the most suitable and best method. Other convoluted methods that I previously used in the past is to generate the zero isolines in Blue Kenue from the depth layer at the appropriate frame and then create then as a polynomial either by the drawing tool or for accuracy exporting to ACAD (I had to save first as MIF and in Mapinfo export as dxf) where I can join the isolines and close as polygon. Another method is to export the xyz depths surfer and within surfer it is possible to create a surface.

Regards
Tony
The administrator has disabled public write access.

Measure flooded area 11 years 11 months ago #6724

  • Serrer
  • Serrer's Avatar
  • OFFLINE
  • Moderator
  • Posts: 720
  • Thank you received: 304
There is no way to do this in Blue Kenue.
It's not difficult, it just hasn't been done.
I'm afraid you'll have to write some code.

Thierry: How come you never asked for this feature??
Perhaps I'll see what I can provide in the next version.

Cheers... Martin
The administrator has disabled public write access.

Measure flooded area 11 years 11 months ago #6726

  • andersfrisk
  • andersfrisk's Avatar
Thanks for the input, at least now i know it isnt that easy! ;)

Fauret: sounds great, any chance I could get a hold of that routine?

//AF
The administrator has disabled public write access.

Measure flooded area 11 years 11 months ago #6741

  • Fauret
  • Fauret's Avatar
  • OFFLINE
  • Junior Boarder
  • Posts: 44
  • Thank you received: 12
Anders,
The flood extent analysis I used, was very specific to our flood problem, quite elaborate, and is not generic enough to be distributed without major rework.

If you are not familiar with fortran I suggest you try using FUDAA or BlueKenue to get the flood extent

If you are familiar with Fortran and with the Telemac nomenclature, the procedure is easy to program.
• Work within UTIMP_TELEMAC2D which is called once at every time step
• Use T1 from the routine VECTOR to provide the area of each element (see its usage in DRAGFO)
• For each element, identify their 3 nodes using IKLE, then check their depth
• Add the area of all elements with more than x.xx m of water.
• You can refine the flooded area calculation by getting it only in certain critical zones and not everywhere in the model. Use the function INPOLY (see example in DRAGFO).
• Get the max of the flooded area during the whole duration of the run
• At the end of the run, print it on the screen (it will be in the x_sortie.txt file), or on the FORMATTED RESULTS FILE, or on your own output file.

I would do this not at every time step, but only every few minutes or hours. (see how to do that in BIEF_DESIMP)

Thierry
The administrator has disabled public write access.

Measure flooded area 11 years 11 months ago #6734

  • c.coulet
  • c.coulet's Avatar
  • OFFLINE
  • Moderator
  • Posts: 3722
  • Thank you received: 1031
Hi

There is a solution with fudaa (which is also available in BK I think).
You just have to create a new variable which is a sort of bolean of the water height. IF(H>0) Then B=1 Else B=0

In fudaa you could use the the button "compute volume measurement" on this variable. As the value is 1 you could assimilate the volume to the surface.

You could check this result by adding 2 other bolean values, the contrary of B (H<0) and a unit value on all the domain and compute the volume on those both variable.

You could also use a fortran program but in my mind this is a more complex solution.

Regards
Christophe
The administrator has disabled public write access.
The following user(s) said Thank You: Serrer, andersfrisk

Measure flooded area 11 years 11 months ago #6739

  • Serrer
  • Serrer's Avatar
  • OFFLINE
  • Moderator
  • Posts: 720
  • Thank you received: 304
Thanks Christophe,

You're right.
This can be done with the Calculator in Blue Kenue as well (for a single frame/timestep)
For some reason I was fixating on the problem of how to extract a time-series of flooded area. :-(

Cheers... Martin
The administrator has disabled public write access.

Measure flooded area 11 years 2 months ago #10153

  • simon.nolin
  • simon.nolin's Avatar
Is the "If-then" statement available in the Calculator of Blue-Kenue? If not, how can we perform the method described by c.coulet (message #6734) in BK? Thanks.
Simon
The administrator has disabled public write access.

Measure flooded area 11 years 11 months ago #6750

  • andersfrisk
  • andersfrisk's Avatar
Hi

I've never created a variable before so I think I need some more help. First of all i wonder if the value of the variable is set during the computation (1) or in the post processor (2) (Fudaa):

(1)
I guess I create the new variable in the editor before running the simulation (i know how to do that), but how do i "instruct" telemac on what value (1 or 0 depending on depth) to assign to the bolean variable?

or:
(2)
Can I create a variable in the post-processor after the calculation is done? And also give values to this variable in the post-processor? I can't figure out how to do this.

Your help is very much appreciated!

//AF
The administrator has disabled public write access.
  • Page:
  • 1
  • 2

The open TELEMAC-MASCARET template for Joomla!2.5, the HTML 4 version.