From 9d32a0a5a9602425801217faae14dc823b828821 Mon Sep 17 00:00:00 2001 From: rlar Date: Tue, 29 Dec 2015 18:15:06 +0100 Subject: [PATCH] simplify complex assignments --- src/frontend/com_compose.c | 6 ++-- src/frontend/evaluate.c | 11 ++------ src/frontend/postcoms.c | 3 +- src/frontend/vectors.c | 6 ++-- src/maths/cmaths/cmath2.c | 24 ++++++---------- src/maths/cmaths/cmath3.c | 57 +++++++++++++------------------------- src/maths/cmaths/cmath4.c | 12 +++----- 7 files changed, 39 insertions(+), 80 deletions(-) diff --git a/src/frontend/com_compose.c b/src/frontend/com_compose.c index 183e32cfc..9bc3790c7 100644 --- a/src/frontend/com_compose.c +++ b/src/frontend/com_compose.c @@ -39,8 +39,7 @@ dimxpand(struct dvec *v, int *newdims, double *data) if (realflag) { data[n] = v->v_realdata[o]; } else { - realpart(cdata[n]) = realpart(v->v_compdata[o]); - imagpart(cdata[n]) = imagpart(v->v_compdata[o]); + cdata[n] = v->v_compdata[o]; } /* Now find the nextstrchr element... */ @@ -203,8 +202,7 @@ com_compose(wordlist *wl) realpart(cdata[i]) = realpart(v->v_compdata[0]); imagpart(cdata[i]) = 0.0; } else { - realpart(cdata[i]) = realpart(v->v_compdata[0]); - imagpart(cdata[i]) = imagpart(v->v_compdata[0]); + cdata[i] = v->v_compdata[0]; } i++; continue; diff --git a/src/frontend/evaluate.c b/src/frontend/evaluate.c index ebf9a9cbc..9f0827b44 100644 --- a/src/frontend/evaluate.c +++ b/src/frontend/evaluate.c @@ -640,10 +640,7 @@ op_range(struct pnode *arg1, struct pnode *arg2) if (isreal(res)) { res->v_realdata[j] = v->v_realdata[i]; } else { - realpart(res->v_compdata[j]) = - realpart(v->v_compdata[i]); - imagpart(res->v_compdata[j]) = - imagpart(v->v_compdata[i]); + res->v_compdata[j] = v->v_compdata[i]; } j++; } @@ -789,10 +786,8 @@ op_ind(struct pnode *arg1, struct pnode *arg2) res->v_realdata[k * blocksize + i] = v->v_realdata[(down + j) * blocksize + i]; } else { - realpart(res->v_compdata[k * blocksize + i]) = - realpart(v->v_compdata[(down + j) * blocksize + i]); - imagpart(res->v_compdata[k * blocksize + i]) = - imagpart(v->v_compdata[(down + j) * blocksize + i]); + res->v_compdata[k * blocksize + i] = + v->v_compdata[(down + j) * blocksize + i]; } } diff --git a/src/frontend/postcoms.c b/src/frontend/postcoms.c index 5a4c25ac1..a3f836f9e 100644 --- a/src/frontend/postcoms.c +++ b/src/frontend/postcoms.c @@ -777,8 +777,7 @@ com_cross(wordlist *wl) for (n = vecs, i = 0; n; n = n->v_link2, i++) if (n->v_length > ind) { if (comp) { - realpart(v->v_compdata[i]) = realpart(n->v_compdata[ind]); - imagpart(v->v_compdata[i]) = imagpart(n->v_compdata[ind]); + v->v_compdata[i] = n->v_compdata[ind]; } else { v->v_realdata[i] = n->v_realdata[ind]; } diff --git a/src/frontend/vectors.c b/src/frontend/vectors.c index 2431c86bf..cbca13509 100644 --- a/src/frontend/vectors.c +++ b/src/frontend/vectors.c @@ -1062,10 +1062,8 @@ vec_transpose(struct dvec *v) joffset = 0; for (j = 0; j < dim0; j++) { for (i = 0; i < dim1; i++) { - realpart(newcomp[ koffset + joffset + i ]) = - realpart(oldcomp[ koffset + i*dim0 + j ]); - imagpart(newcomp[ koffset + joffset + i ]) = - imagpart(oldcomp[ koffset + i*dim0 + j ]); + newcomp[ koffset + joffset + i ] = + oldcomp[ koffset + i*dim0 + j ]; } joffset += dim1; /* joffset = j*dim0 */ } diff --git a/src/maths/cmaths/cmath2.c b/src/maths/cmaths/cmath2.c index 73a25fb70..076735a5d 100644 --- a/src/maths/cmaths/cmath2.c +++ b/src/maths/cmaths/cmath2.c @@ -497,15 +497,13 @@ cx_plus(void *data1, void *data2, short int datatype1, short int datatype2, int realpart(c1) = dd1[i]; imagpart(c1) = 0.0; } else { - realpart(c1) = realpart(cc1[i]); - imagpart(c1) = imagpart(cc1[i]); + c1 = cc1[i]; } if (datatype2 == VF_REAL) { realpart(c2) = dd2[i]; imagpart(c2) = 0.0; } else { - realpart(c2) = realpart(cc2[i]); - imagpart(c2) = imagpart(cc2[i]); + c2 = cc2[i]; } realpart(c[i]) = realpart(c1) + realpart(c2); imagpart(c[i]) = imagpart(c1) + imagpart(c2); @@ -537,15 +535,13 @@ cx_minus(void *data1, void *data2, short int datatype1, short int datatype2, int realpart(c1) = dd1[i]; imagpart(c1) = 0.0; } else { - realpart(c1) = realpart(cc1[i]); - imagpart(c1) = imagpart(cc1[i]); + c1 = cc1[i]; } if (datatype2 == VF_REAL) { realpart(c2) = dd2[i]; imagpart(c2) = 0.0; } else { - realpart(c2) = realpart(cc2[i]); - imagpart(c2) = imagpart(cc2[i]); + c2 = cc2[i]; } realpart(c[i]) = realpart(c1) - realpart(c2); imagpart(c[i]) = imagpart(c1) - imagpart(c2); @@ -577,15 +573,13 @@ cx_times(void *data1, void *data2, short int datatype1, short int datatype2, int realpart(c1) = dd1[i]; imagpart(c1) = 0.0; } else { - realpart(c1) = realpart(cc1[i]); - imagpart(c1) = imagpart(cc1[i]); + c1 = cc1[i]; } if (datatype2 == VF_REAL) { realpart(c2) = dd2[i]; imagpart(c2) = 0.0; } else { - realpart(c2) = realpart(cc2[i]); - imagpart(c2) = imagpart(cc2[i]); + c2 = cc2[i]; } realpart(c[i]) = realpart(c1) * realpart(c2) - imagpart(c1) * imagpart(c2); @@ -625,15 +619,13 @@ cx_mod(void *data1, void *data2, short int datatype1, short int datatype2, int l realpart(c1) = dd1[i]; imagpart(c1) = 0.0; } else { - realpart(c1) = realpart(cc1[i]); - imagpart(c1) = imagpart(cc1[i]); + c1 = cc1[i]; } if (datatype2 == VF_REAL) { realpart(c2) = dd2[i]; imagpart(c2) = 0.0; } else { - realpart(c2) = realpart(cc2[i]); - imagpart(c2) = imagpart(cc2[i]); + c2 = cc2[i]; } r1 = (int)floor(FTEcabs(realpart(c1))); rcheck(r1 > 0, "mod"); diff --git a/src/maths/cmaths/cmath3.c b/src/maths/cmaths/cmath3.c index 8e0f83c4b..41e763479 100644 --- a/src/maths/cmaths/cmath3.c +++ b/src/maths/cmaths/cmath3.c @@ -52,15 +52,13 @@ cx_divide(void *data1, void *data2, short int datatype1, short int datatype2, in realpart(c1) = dd1[i]; imagpart(c1) = 0.0; } else { - realpart(c1) = realpart(cc1[i]); - imagpart(c1) = imagpart(cc1[i]); + c1 = cc1[i]; } if (datatype2 == VF_REAL) { realpart(c2) = dd2[i]; imagpart(c2) = 0.0; } else { - realpart(c2) = realpart(cc2[i]); - imagpart(c2) = imagpart(cc2[i]); + c2 = cc2[i]; } rcheck((realpart(c2) != 0) || (imagpart(c2) != 0), "divide"); #define xx5 realpart(c1) @@ -92,15 +90,13 @@ cx_comma(void *data1, void *data2, short int datatype1, short int datatype2, int realpart(c1) = dd1[i]; imagpart(c1) = 0.0; } else { - realpart(c1) = realpart(cc1[i]); - imagpart(c1) = imagpart(cc1[i]); + c1 = cc1[i]; } if (datatype2 == VF_REAL) { realpart(c2) = dd2[i]; imagpart(c2) = 0.0; } else { - realpart(c2) = realpart(cc2[i]); - imagpart(c2) = imagpart(cc2[i]); + c2 = cc2[i]; } realpart(c[i]) = realpart(c1) + imagpart(c2); @@ -134,15 +130,13 @@ cx_power(void *data1, void *data2, short int datatype1, short int datatype2, int realpart(c1) = dd1[i]; imagpart(c1) = 0.0; } else { - realpart(c1) = realpart(cc1[i]); - imagpart(c1) = imagpart(cc1[i]); + c1 = cc1[i]; } if (datatype2 == VF_REAL) { realpart(c2) = dd2[i]; imagpart(c2) = 0.0; } else { - realpart(c2) = realpart(cc2[i]); - imagpart(c2) = imagpart(cc2[i]); + c2 = cc2[i]; } if ((realpart(c1) == 0.0) && (imagpart(c1) == 0.0)) { @@ -151,8 +145,7 @@ cx_power(void *data1, void *data2, short int datatype1, short int datatype2, int } else { /* if ((imagpart(c1) != 0.0) && (imagpart(c2) != 0.0)) */ t = cexp_sp3(ctimes(&c2, cln(&c1))); - realpart(c[i]) = realpart(*t); - imagpart(c[i]) = imagpart(*t); + c[i] = *t; /* } else { realpart(c[i]) = pow(realpart(c1), @@ -239,15 +232,13 @@ cx_eq(void *data1, void *data2, short int datatype1, short int datatype2, int le realpart(c1) = dd1[i]; imagpart(c1) = 0.0; } else { - realpart(c1) = realpart(cc1[i]); - imagpart(c1) = imagpart(cc1[i]); + c1 = cc1[i]; } if (datatype2 == VF_REAL) { realpart(c2) = dd2[i]; imagpart(c2) = 0.0; } else { - realpart(c2) = realpart(cc2[i]); - imagpart(c2) = imagpart(cc2[i]); + c2 = cc2[i]; } d[i] = ((realpart(c1) == realpart(c2)) && (imagpart(c1) == imagpart(c2))); @@ -280,15 +271,13 @@ cx_gt(void *data1, void *data2, short int datatype1, short int datatype2, int le realpart(c1) = dd1[i]; imagpart(c1) = 0.0; } else { - realpart(c1) = realpart(cc1[i]); - imagpart(c1) = imagpart(cc1[i]); + c1 = cc1[i]; } if (datatype2 == VF_REAL) { realpart(c2) = dd2[i]; imagpart(c2) = 0.0; } else { - realpart(c2) = realpart(cc2[i]); - imagpart(c2) = imagpart(cc2[i]); + c2 = cc2[i]; } d[i] = ((realpart(c1) > realpart(c2)) && (imagpart(c1) > imagpart(c2))); @@ -321,15 +310,13 @@ cx_lt(void *data1, void *data2, short int datatype1, short int datatype2, int le realpart(c1) = dd1[i]; imagpart(c1) = 0.0; } else { - realpart(c1) = realpart(cc1[i]); - imagpart(c1) = imagpart(cc1[i]); + c1 = cc1[i]; } if (datatype2 == VF_REAL) { realpart(c2) = dd2[i]; imagpart(c2) = 0.0; } else { - realpart(c2) = realpart(cc2[i]); - imagpart(c2) = imagpart(cc2[i]); + c2 = cc2[i]; } d[i] = ((realpart(c1) < realpart(c2)) && (imagpart(c1) < imagpart(c2))); @@ -362,15 +349,13 @@ cx_ge(void *data1, void *data2, short int datatype1, short int datatype2, int le realpart(c1) = dd1[i]; imagpart(c1) = 0.0; } else { - realpart(c1) = realpart(cc1[i]); - imagpart(c1) = imagpart(cc1[i]); + c1 = cc1[i]; } if (datatype2 == VF_REAL) { realpart(c2) = dd2[i]; imagpart(c2) = 0.0; } else { - realpart(c2) = realpart(cc2[i]); - imagpart(c2) = imagpart(cc2[i]); + c2 = cc2[i]; } d[i] = ((realpart(c1) >= realpart(c2)) && (imagpart(c1) >= imagpart(c2))); @@ -403,15 +388,13 @@ cx_le(void *data1, void *data2, short int datatype1, short int datatype2, int le realpart(c1) = dd1[i]; imagpart(c1) = 0.0; } else { - realpart(c1) = realpart(cc1[i]); - imagpart(c1) = imagpart(cc1[i]); + c1 = cc1[i]; } if (datatype2 == VF_REAL) { realpart(c2) = dd2[i]; imagpart(c2) = 0.0; } else { - realpart(c2) = realpart(cc2[i]); - imagpart(c2) = imagpart(cc2[i]); + c2 = cc2[i]; } d[i] = ((realpart(c1) <= realpart(c2)) && (imagpart(c1) <= imagpart(c2))); @@ -444,15 +427,13 @@ cx_ne(void *data1, void *data2, short int datatype1, short int datatype2, int le realpart(c1) = dd1[i]; imagpart(c1) = 0.0; } else { - realpart(c1) = realpart(cc1[i]); - imagpart(c1) = imagpart(cc1[i]); + c1 = cc1[i]; } if (datatype2 == VF_REAL) { realpart(c2) = dd2[i]; imagpart(c2) = 0.0; } else { - realpart(c2) = realpart(cc2[i]); - imagpart(c2) = imagpart(cc2[i]); + c2 = cc2[i]; } d[i] = ((realpart(c1) != realpart(c2)) && (imagpart(c1) != imagpart(c2))); diff --git a/src/maths/cmaths/cmath4.c b/src/maths/cmaths/cmath4.c index 3f4fcb218..757d916cf 100644 --- a/src/maths/cmaths/cmath4.c +++ b/src/maths/cmaths/cmath4.c @@ -60,15 +60,13 @@ cx_and(void *data1, void *data2, short int datatype1, short int datatype2, int l realpart(c1) = dd1[i]; imagpart(c1) = 0.0; } else { - realpart(c1) = realpart(cc1[i]); - imagpart(c1) = imagpart(cc1[i]); + c1 = cc1[i]; } if (datatype2 == VF_REAL) { realpart(c2) = dd2[i]; imagpart(c2) = 0.0; } else { - realpart(c2) = realpart(cc2[i]); - imagpart(c2) = imagpart(cc2[i]); + c2 = cc2[i]; } d[i] = ((realpart(c1) && realpart(c2)) && (imagpart(c1) && imagpart(c2))); @@ -99,15 +97,13 @@ cx_or(void *data1, void *data2, short int datatype1, short int datatype2, int le realpart(c1) = dd1[i]; imagpart(c1) = 0.0; } else { - realpart(c1) = realpart(cc1[i]); - imagpart(c1) = imagpart(cc1[i]); + c1 = cc1[i]; } if (datatype2 == VF_REAL) { realpart(c2) = dd2[i]; imagpart(c2) = 0.0; } else { - realpart(c2) = realpart(cc2[i]); - imagpart(c2) = imagpart(cc2[i]); + c2 = cc2[i]; } d[i] = ((realpart(c1) || realpart(c2)) && (imagpart(c1) || imagpart(c2)));