Calculating vertical velocity from discrete horizontal velocities

Click For Summary

Discussion Overview

The discussion revolves around calculating vertical velocities (w) from discrete horizontal velocity values (u and v) represented in 2 x 3D arrays. Participants explore methods to implement this calculation in programming code, considering the differences in bin sizes between horizontal and vertical dimensions.

Discussion Character

  • Technical explanation
  • Mathematical reasoning
  • Exploratory

Main Points Raised

  • One participant describes the continuity equation dw/dz = -∇.v and expresses uncertainty about applying it to point value arrays with differing bin sizes.
  • Another participant suggests using a 3x3 kernel to calculate dx and dy at midpoints, providing a formula for [du/dx] and [dv/dy].
  • A later reply emphasizes the need to account for the difference in horizontal and vertical scales, proposing that the vertical velocity should be adjusted by a factor of 1km/(15m) due to the area differences.
  • One participant expresses satisfaction with the proposed method of handling the scale differences, indicating a positive reception to the idea.

Areas of Agreement / Disagreement

Participants appear to agree on the necessity of adjusting for scale differences in the calculation of vertical velocities, but the overall method for extracting these values from the arrays remains exploratory and not fully resolved.

Contextual Notes

Participants discuss the implications of using midpoints and the potential loss of edge values in their calculations. There is also an acknowledgment of the complexity introduced by the differing bin sizes in the horizontal and vertical dimensions.

Bonhomme
Messages
3
Reaction score
0
Hello,

I'm working with a 2 x 3D arrays of fluid velocity values (east-west -> u and north-south -> v) and would like to properly calculate vertical velocities (w) from them (n.b. this is not homework). This ultimately needs to go into a processing algorithm, so while symbolic math is instructive, it needs to be implementable in programming code (other than Mathematica/Matlab). I know that the continuity equation dw/dz = -∇.v can be integrated to give w, but I'm not sure how to work this properly given arrays of point values. Another wrinkle is that my horizontal bin size is not the same as my vertical bin size (e.g. x and y sides are 1 km, z is 15 m)

e.g.
u@z = 10m
1 2 3 4
1 2 3 4
1 2 3 4

u@z = 25m
2 3 4 5
2 3 4 5
2 3 4 5

v@z = 10m
1 1 1 1
2 2 2 2
3 3 3 3

v@z=25m
2 2 2 2
3 3 3 3
4 4 4 4

One option is to take the difference between point locations, but that converts the data locations into midpoints. I'd prefer to avoid back-interpolating if that's possible, though I don't mind losing the edge values.

Anyways, any advice on how to extract vertical velocity values from 3D point arrays would be appreciated. Thanks!
 
Engineering news on Phys.org
Calculating vertical velocity - dx and dy from kernel

Rather than taking midpoints, it looks like I can calculate dx and dy at the midpoint if I use a 3x3 kernel. e.g.

a b c
d e f
g h i

[du/dx] = ((c + 2f + i) - (a + 2d + g) / 8
[dv/dy] = ((g + 2h + i) - (a + 2b + c)) / 8

I guess the key now is to account for the difference in horizontal and vertical scales...
 
I guess the key now is to account for the difference in horizontal and vertical scales...
With appropriate prefactors. Your sides in the horizontal directions have an area of 15m*1km, while your sides in the vertical direction have an area of 1km*1km. Therefore, the vertical velocity is smaller by a factor of 1km/(15m)=200/3, compared to a grid with uniform density in all directions.
 
Perfect. I was wondering if it could be handled that way, and I'm glad that you're confirming it. Thanks -
 

Similar threads

Replies
10
Views
1K
  • · Replies 9 ·
Replies
9
Views
2K
  • · Replies 11 ·
Replies
11
Views
4K
Replies
31
Views
4K
  • · Replies 4 ·
Replies
4
Views
2K
  • · Replies 6 ·
Replies
6
Views
1K
  • · Replies 39 ·
2
Replies
39
Views
5K
  • · Replies 38 ·
2
Replies
38
Views
4K
  • · Replies 11 ·
Replies
11
Views
2K
  • · Replies 18 ·
Replies
18
Views
2K