1
$\begingroup$

I urgently need help with a problem I am having for an assignment for university. I do not expect a full solution, but I am really in need of guidance.

I am required to write a FEA program in VBA, I have managed to do that. However, I am having problems when trying to find the inverse transformation of isoparametric quadrilaterals. We require this transformation (from x,y global to a,b local element) to calculate the hydraulic gradients at a point in the element.

It is a system of 2 nonlinear equations with two unknowns: $$f_1=\alpha_x+a\beta_x+b\gamma_x+ab\delta_x-C_x$$ $$f_2=\alpha_y+a\beta_y+b\gamma_y+ab\delta_y-C_y$$ The only unknowns are a and b. All other symbols are constant per element. At first, I tried to solve these via substitution, but soon realised that was a suicide mission. I then opted to solve for the system using matrices and the Newton Method.

This, however isn't working. Whenever I iterate on the method, the values become unrealistic and clearly don't converge. I am not sure if I made an arithmetic error, but I have been over it by hand and by analysis multiple times without success.

I would truly appreciate any expertise on the matter.

This is quite an urgent request as well, so haste would be greatly appreciated.

I found this question on this site, but it did not help me much.

Additional information: This Newton method works when dealing with non-skew elements, i.e. perfect squares and rectangles. When this is the case, only one iteration is required to achieve the result.

However, if the elements are skewed, the initial result is incorrect, and further results are even worse.

$\endgroup$
  • $\begingroup$ Welcome to SciComp.SE. As I commented in the question you mentioned, you can find the inverse analytically. See this link. $\endgroup$ – nicoguaro Sep 9 '15 at 2:07
  • $\begingroup$ It's also unclear why the other question you link to didn't help you much. $\endgroup$ – Wolfgang Bangerth Sep 11 '15 at 14:34
  • $\begingroup$ @Wolfgang It didn't help much because it only provides a solution for a singular case. But I managed to find a working solution. $\endgroup$ – Rob Oct 13 '15 at 12:42
1
$\begingroup$

In the end, I did a check to determine if the element was skew or not. If skew, I solved the transformation via a closed-form solution. If not, I solved it using Newton's method.

The closed form solution I used is similar to that suggested by @nicoquaro.

$\endgroup$
  • $\begingroup$ The closed-form solution I used was similar to the one as suggested by @nicoquaro $\endgroup$ – Rob Oct 13 '15 at 12:46
  • $\begingroup$ If it's not too much work, you can add that to your answer (and then accept it) so other people can profit from it. $\endgroup$ – Christian Clason Oct 13 '15 at 14:31

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.