2D surface integral in MATLAB for Finite Element Calculation

Click For Summary

Discussion Overview

The discussion revolves around the numerical computation of a specific 2D surface integral in MATLAB, particularly in the context of finite element calculations. Participants explore methods for integrating over a triangular domain defined by known vertex coordinates.

Discussion Character

  • Technical explanation
  • Exploratory
  • Debate/contested

Main Points Raised

  • Vivek seeks assistance in computing a complex integral involving a triangular domain in MATLAB, expressing a preference for existing functions or methods rather than developing a new solution.
  • David suggests defining a domain function that returns one within the triangular area and zero outside, using the Heaviside function to facilitate integration over a larger square area.
  • David's response is repeated verbatim in a later post, indicating potential redundancy or emphasis on the proposed solution.
  • Participants discuss the appropriateness of replying to older threads, with some arguing for the value of keeping the information accessible for future searches, while others adhere to forum policies against necro posting.
  • SteamKing clarifies the forum's policy on necro posting and suggests creating new threads for ongoing discussions while referencing older threads as needed.

Areas of Agreement / Disagreement

There is no consensus on the best approach to the integral computation, as Vivek's original query remains unresolved. Additionally, participants express differing views on the practice of necro posting, indicating a lack of agreement on this forum etiquette.

Contextual Notes

The discussion does not resolve the mathematical or computational challenges posed by the integral, nor does it clarify the effectiveness of the proposed domain function method. The conversation about necro posting reflects varying interpretations of forum policies.

maverick280857
Messages
1,774
Reaction score
5
Hi everyone,

As part of a project, I am required to numerically compute the expression

b_{i}^{e} &=& \frac{E_{0}^{i}k_0^2(\epsilon_r-1/\mu_r)}{2\Delta^e}\left[\iint\limits_{\Omega^e}(a_i^e + b_i^e x + c_i^e y)e^{-jk_0 x} dx dy\right] \nonumber\\&&- \frac{jk_0 E_0^i r'}{2\Delta^e \mu_r}\left[\int_{\phi_{1}^{s_2}}^{\phi_{2}^{s_2}}(a_i^e \cos\phi + b_i^e r'\cos^2\phi + c_i^e r'\sin\phi\cos\phi)e^{-jk_0r'\cos\phi}d\phi\right]

specifically, compute the integrals numerically. The problem is that \Omega^e, the domain of integration of the first integral is a triangle (whose vertex coordinates are well known).

I am unable to figure out a way to do this integral computationally in MATLAB. That is, how does one compute an area integral in MATLAB when the x and y coordinates are coupled (and bounded to lie in a spatial region).

If there is a documented way of doing this, or a preexisting function, I would prefer to use it and go ahead with my work, rather than reinvent the wheel. Any inputs would be greatly appreciated!

Thanks in advance!

Cheers
Vivek
 
Physics news on Phys.org
Hi Vivek,

One thing you could do is define a function of x and y that will return one in the domain and zero outside.

For example, the following function returns one only in the 45-45-90 triangle near the origin given by x<3, y>0, x>y:
domain = @(x,y) heaviside(x-y)*heaviside(3-x)*heaviside(y).

Then you can integrate over a square including your triangular domain and multiply the integral argument by this domain function.

I'm sure you've solved this problem by now, but I stumbled across it while searching for surface integration techniques and figured I might as well reply.
Cheers,
David
 
dreens said:
Hi Vivek,

One thing you could do is define a function of x and y that will return one in the domain and zero outside.

For example, the following function returns one only in the 45-45-90 triangle near the origin given by x<3, y>0, x>y:
domain = @(x,y) heaviside(x-y)*heaviside(3-x)*heaviside(y).

Then you can integrate over a square including your triangular domain and multiply the integral argument by this domain function.

I'm sure you've solved this problem by now, but I stumbled across it while searching for surface integration techniques and figured I might as well reply.
Cheers,
David
Vivek hasn't posted in a year.

Please resist the urge to necro post to these ancient threads.
 
Why? This thread shows up for anyone who google searches "matlab surface integral". Wouldn't it be better if they found a reply?
 
dreens said:
Why? This thread shows up for anyone who google searches "matlab surface integral". Wouldn't it be better if they found a reply?
I'm just repeating the policy of the moderators of this forum. They prefer not to have these old posts dredged up from the past.

However, if you wish to create a new thread of your own, dealing with this subject, you can always refer to previous threads on the same topic.

If you seek another opinion on this point, please feel free to contact one of the moderators, say via PM, and start a discussion about necro posting to these old threads. Policies do change at PF from time to time.
 
Ah I see. Thank you SteamKing. I'll be happy to review the policy and comply in the future.
 

Similar threads

  • · Replies 7 ·
Replies
7
Views
3K
  • · Replies 14 ·
Replies
14
Views
3K
  • · Replies 1 ·
Replies
1
Views
1K
Replies
3
Views
4K
  • · Replies 26 ·
Replies
26
Views
1K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 6 ·
Replies
6
Views
4K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 1 ·
Replies
1
Views
3K
  • · Replies 3 ·
Replies
3
Views
3K