(pa, pb, pc, pd)
| 2388 | } |
| 2389 | |
| 2390 | REAL incircleexact(pa, pb, pc, pd) |
| 2391 | REAL *pa; |
| 2392 | REAL *pb; |
| 2393 | REAL *pc; |
| 2394 | REAL *pd; |
| 2395 | { |
| 2396 | INEXACT REAL axby1, bxcy1, cxdy1, dxay1, axcy1, bxdy1; |
| 2397 | INEXACT REAL bxay1, cxby1, dxcy1, axdy1, cxay1, dxby1; |
| 2398 | REAL axby0, bxcy0, cxdy0, dxay0, axcy0, bxdy0; |
| 2399 | REAL bxay0, cxby0, dxcy0, axdy0, cxay0, dxby0; |
| 2400 | REAL ab[4], bc[4], cd[4], da[4], ac[4], bd[4]; |
| 2401 | REAL temp8[8]; |
| 2402 | int templen; |
| 2403 | REAL abc[12], bcd[12], cda[12], dab[12]; |
| 2404 | int abclen, bcdlen, cdalen, dablen; |
| 2405 | REAL det24x[24], det24y[24], det48x[48], det48y[48]; |
| 2406 | int xlen, ylen; |
| 2407 | REAL adet[96], bdet[96], cdet[96], ddet[96]; |
| 2408 | int alen, blen, clen, dlen; |
| 2409 | REAL abdet[192], cddet[192]; |
| 2410 | int ablen, cdlen; |
| 2411 | REAL deter[384]; |
| 2412 | int deterlen; |
| 2413 | int i; |
| 2414 | |
| 2415 | INEXACT REAL bvirt; |
| 2416 | REAL avirt, bround, around; |
| 2417 | INEXACT REAL c; |
| 2418 | INEXACT REAL abig; |
| 2419 | REAL ahi, alo, bhi, blo; |
| 2420 | REAL err1, err2, err3; |
| 2421 | INEXACT REAL _i, _j; |
| 2422 | REAL _0; |
| 2423 | |
| 2424 | Two_Product(pa[0], pb[1], axby1, axby0); |
| 2425 | Two_Product(pb[0], pa[1], bxay1, bxay0); |
| 2426 | Two_Two_Diff(axby1, axby0, bxay1, bxay0, ab[3], ab[2], ab[1], ab[0]); |
| 2427 | |
| 2428 | Two_Product(pb[0], pc[1], bxcy1, bxcy0); |
| 2429 | Two_Product(pc[0], pb[1], cxby1, cxby0); |
| 2430 | Two_Two_Diff(bxcy1, bxcy0, cxby1, cxby0, bc[3], bc[2], bc[1], bc[0]); |
| 2431 | |
| 2432 | Two_Product(pc[0], pd[1], cxdy1, cxdy0); |
| 2433 | Two_Product(pd[0], pc[1], dxcy1, dxcy0); |
| 2434 | Two_Two_Diff(cxdy1, cxdy0, dxcy1, dxcy0, cd[3], cd[2], cd[1], cd[0]); |
| 2435 | |
| 2436 | Two_Product(pd[0], pa[1], dxay1, dxay0); |
| 2437 | Two_Product(pa[0], pd[1], axdy1, axdy0); |
| 2438 | Two_Two_Diff(dxay1, dxay0, axdy1, axdy0, da[3], da[2], da[1], da[0]); |
| 2439 | |
| 2440 | Two_Product(pa[0], pc[1], axcy1, axcy0); |
| 2441 | Two_Product(pc[0], pa[1], cxay1, cxay0); |
| 2442 | Two_Two_Diff(axcy1, axcy0, cxay1, cxay0, ac[3], ac[2], ac[1], ac[0]); |
| 2443 | |
| 2444 | Two_Product(pb[0], pd[1], bxdy1, bxdy0); |
| 2445 | Two_Product(pd[0], pb[1], dxby1, dxby0); |
| 2446 | Two_Two_Diff(bxdy1, bxdy0, dxby1, dxby0, bd[3], bd[2], bd[1], bd[0]); |
| 2447 |
no test coverage detected