The R Project SVN R

Rev

Rev 571 | Rev 785 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 571 Rev 580
Line 328... Line 328...
328
			sum = 0.0;
328
			sum = 0.0;
329
			for (j = 0; j < ncx; j++) {
329
			for (j = 0; j < ncx; j++) {
330
				xij = x[i + j * nrx];
330
				xij = x[i + j * nrx];
331
				yjk = y[j + k * nry];
331
				yjk = y[j + k * nry];
332
#ifndef IEEE_754
332
#ifndef IEEE_754
333
				if (NAN(xij) || NAN(yjk))
333
				if (ISNAN(xij) || ISNAN(yjk))
334
					goto next_ik;
334
					goto next_ik;
335
#endif
335
#endif
336
				sum += xij * yjk;
336
				sum += xij * yjk;
337
			}
337
			}
338
			z[i + k * nrx] = sum;
338
			z[i + k * nrx] = sum;
Line 357... Line 357...
357
				xij_r = x[i+j*nrx].r;
357
				xij_r = x[i+j*nrx].r;
358
				xij_i = x[i+j*nrx].i;
358
				xij_i = x[i+j*nrx].i;
359
				yjk_r = y[j+k*nry].r;
359
				yjk_r = y[j+k*nry].r;
360
				yjk_i = y[j+k*nry].i;
360
				yjk_i = y[j+k*nry].i;
361
#ifndef IEEE_754
361
#ifndef IEEE_754
362
				if (NAN(xij_r) || NAN(xij_i)
362
				if (ISNAN(xij_r) || ISNAN(xij_i)
363
					|| NAN(yjk_r) || NAN(yjk_i))
363
					|| ISNAN(yjk_r) || ISNAN(yjk_i))
364
					goto next_ik;
364
					goto next_ik;
365
#endif
365
#endif
366
				sum_r += (xij_r * yjk_r - xij_i * yjk_i);
366
				sum_r += (xij_r * yjk_r - xij_i * yjk_i);
367
				sum_i += (xij_r * yjk_i + xij_i * yjk_r);
367
				sum_i += (xij_r * yjk_i + xij_i * yjk_r);
368
			}
368
			}
Line 384... Line 384...
384
			sum = 0.0;
384
			sum = 0.0;
385
			for (j = 0; j < nrx; j++) {
385
			for (j = 0; j < nrx; j++) {
386
				xji = x[j + i * nrx];
386
				xji = x[j + i * nrx];
387
				yjk = y[j + k * nry];
387
				yjk = y[j + k * nry];
388
#ifndef IEEE_754
388
#ifndef IEEE_754
389
				if (NAN(xji) || NAN(yjk))
389
				if (ISNAN(xji) || ISNAN(yjk))
390
					goto next_ik;
390
					goto next_ik;
391
#endif
391
#endif
392
				sum += xji * yjk;
392
				sum += xji * yjk;
393
			}
393
			}
394
			z[i + k * ncx] = sum;
394
			z[i + k * ncx] = sum;
Line 413... Line 413...
413
				xji_r = x[j + i * nrx].r;
413
				xji_r = x[j + i * nrx].r;
414
				xji_i = x[j + i * nrx].i;
414
				xji_i = x[j + i * nrx].i;
415
				yjk_r = y[j + k * nry].r;
415
				yjk_r = y[j + k * nry].r;
416
				yjk_i = y[j + k * nry].i;
416
				yjk_i = y[j + k * nry].i;
417
#ifndef IEEE_754
417
#ifndef IEEE_754
418
				if (NAN(xji_r) || NAN(xji_i)
418
				if (ISNAN(xji_r) || ISNAN(xji_i)
419
					|| NAN(yjk_r) || NAN(yjk_i))
419
					|| ISNAN(yjk_r) || ISNAN(yjk_i))
420
					goto next_ik;
420
					goto next_ik;
421
#endif
421
#endif
422
				sum_r += (xji_r * yjk_r - xji_i * yjk_i);
422
				sum_r += (xji_r * yjk_r - xji_i * yjk_i);
423
				sum_i += (xji_r * yjk_i + xji_i * yjk_r);
423
				sum_i += (xji_r * yjk_i + xji_i * yjk_r);
424
			}
424
			}