/* tri_basis.h from Celia and Gray p 415, 416 */ /* triangle T defined by: */ /* T[0] is x1, T[1] is y1, T[2] is x2, T[3] is y2, T[4] is x3, T[5] is y3 */ /* first order, about first point in T */ double phi(double T[], double x, double y); double phix(double T[], double x, double y); double phiy(double T[], double x, double y); /* first order, same T, number is point in T */ double phi1(double T[], double x, double y); double phi2(double T[], double x, double y); double phi3(double T[], double x, double y); /* second order, about first point in T */ double phi2p(double T[], double x, double y); double phi2x(double T[], double x, double y); double phi2y(double T[], double x, double y); double phi2xx(double T[], double x, double y); double phi2xy(double T[], double x, double y); double phi2yy(double T[], double x, double y); /* second order, about mid point between first and second point in T */ double phi2m(double T[], double x, double y); double phi2mx(double T[], double x, double y); double phi2my(double T[], double x, double y); double phi2mxx(double T[], double x, double y); double phi2mxy(double T[], double x, double y); double phi2myy(double T[], double x, double y); /* second order, same T, number is point in T */ double phi21(double T[], double x, double y); double phi22(double T[], double x, double y); double phi23(double T[], double x, double y); double phi24(double T[], double x, double y); double phi25(double T[], double x, double y); double phi26(double T[], double x, double y);