Reconstruct a scalar field from its gradient
5 ビュー (過去 30 日間)
古いコメントを表示
Hi,
I have a cartesian grid over the rectangle [0,N]x[0,M]. In each point of the grid, I know the gradient of a certain scalar field F; that is, I know the derivative of F with respect to x, Fx, and the derivative of F with respect to y, Fy.
The question then is: what is the best way to reconstruct the scalar field F?
Of course, the easiest thing is to integrate by lines: Integrate along a straigth line keeping y fixed (for example) and then integrate along a bunch of perpendicular straigth lines keeping x fixed. But this is quite inefficient and, since this is a numerical problem, the directionality could play (undesirably) an important role (although theoretically, of course, that shouldn't be the case if the gradient truly comes from a scalar field)
So, briefly put: how can I do this in Matlab? Is there a function or subroutine to which I can feed a gradient so that it will return to me the scalar field?
Thank you
3 件のコメント
回答 (1 件)
John D'Errico
2017 年 5 月 4 日
編集済み: John D'Errico
2017 年 5 月 4 日
Just download my intgrad tools from the FEX. They are designed to recover a scalar field, given gradient information on a regular gridded domain. Of course they allow you to provide the constant of integration, or just assume it is zero.
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Bartlett についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!