MCPcopy Create free account
hub / github.com/FreeFem/FreeFem-sources / transformTriangle

Function transformTriangle

plugin/seq/plotPDF.cpp:1874–1899  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1872
1873 if( fabs(lambda2) > EPS )
1874 F -= E*E/(4*lambda2);
1875
1876 return;
1877}
1878
1879void transformTriangle( double *const Vx, double *const Vy,
1880 const double *const vx, const double *const vy, const double *const PHI )
1881{
1882 const double &lambda1 = PHI[0]; const double &lambda2 = PHI[1];
1883 const double &D = PHI[6]; const double &E = PHI[7];
1884
1885 const double &ev1x = PHI[2]; const double &ev1y = PHI[3];
1886 const double &ev2x = PHI[4]; const double &ev2y = PHI[5];
1887 const double P[2][2] = { { ev1x, ev2x }, { ev1y, ev2y } };
1888 const double PT[2][2] = { { P[0][0], P[1][0] }, { P[0][1], P[1][1] } };
1889
1890 const int nVertices = 3;
1891
1892 const double EPS = 1e-10;
1893
1894 for(int i = 0; i < nVertices; i++){
1895 Vx[i] = PT[0][0] * vx[i] + PT[0][1] * vy[i];
1896 if( fabs(lambda1) > EPS )
1897 Vx[i] += D/(2*lambda1);
1898 Vy[i] = PT[1][0] * vx[i] + PT[1][1] * vy[i];
1899 if( fabs(lambda2) > EPS )
1900 Vy[i] += E/(2*lambda2);
1901 }
1902

Callers 2

plot_P2_isoline_bodyFunction · 0.85
plot_P2_fillFunction · 0.85

Calls 1

fabsFunction · 0.50

Tested by

no test coverage detected