# Inverse Transformation of Isoparametric Quadrilaterals

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.

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