# mapping - Algorithm for isoparametric transformation

Algorithm for isoparametric transformation

i am searching for algorithm for isoparametric transformation for 9 node curved quadrilateral. i successfully got an algorithm for square to 9 node curved quadrilateral. But it is difficult to find algorithm for 9 node curved quadrilateral to square. Please help me.

``bool IsoparametricTransformation::fn_map_square_to_9_node_quadrilateral(double x1,double y1,double x2,double y2,double x3,double y3,double x4,double y4,double x5,double y5,double x6,double y6,double x7,double y7,double x8,double y8,double x9,double y9,double e,double n,double &x,double &y){/* iso parametric transformation 9 node method*7 *6 *5*8 *9 *4*1 *2 *3*/double n1(0),n2(0),n3(0),n4(0),n5(0),n6(0),n7(0),n8(0),n9(0);n1 = ((e-1)*(n-1)*e*n)/4;n2 = ((e*e -1)*(n-1)*(-n))/2;n3 = ((e+1)*(n-1)*e*n)/4;n4 = ((e+1)*(n*n-1)*(-e))/2;n5 = ((e+1)*(n+1)*e*n)/4;n6 = ((e*e - 1)*(n+1)*(-n))/2;n7 = ((e-1)*(n+1)*e*n)/4;n8 = ((e-1)*(n*n -1)*(-e))/2;n9 = ((1-e*e)*(1-n*n));x = (n1*x1) + (n2*x2) + (n3*x3) + (n4*x4) + (n5*x5) + (n6*x6) + (n7*x7) + (n8*x8)+(n9*x9);y = (n1*y1) + (n2*y2) + (n3*y3) + (n4*y4) + (n5*y5) + (n6*y6) + (n7*y7) + (n8*y8)+(n9*y9);return true;``

}

image for 9 node soparametric transformation