| 1112 | |
| 1113 | |
| 1114 | static void svdv2x2(double f, |
| 1115 | double g, |
| 1116 | double h, |
| 1117 | double& ssmin, |
| 1118 | double& ssmax, |
| 1119 | double& snr, |
| 1120 | double& csr, |
| 1121 | double& snl, |
| 1122 | double& csl) |
| 1123 | { |
| 1124 | bool gasmal; |
| 1125 | bool swp; |
| 1126 | int pmax; |
| 1127 | double a; |
| 1128 | double clt; |
| 1129 | double crt; |
| 1130 | double d; |
| 1131 | double fa; |
| 1132 | double ft; |
| 1133 | double ga; |
| 1134 | double gt; |
| 1135 | double ha; |
| 1136 | double ht; |
| 1137 | double l; |
| 1138 | double m; |
| 1139 | double mm; |
| 1140 | double r; |
| 1141 | double s; |
| 1142 | double slt; |
| 1143 | double srt; |
| 1144 | double t; |
| 1145 | double temp; |
| 1146 | double tsign; |
| 1147 | double tt; |
| 1148 | double v; |
| 1149 | |
| 1150 | ft = f; |
| 1151 | fa = fabs(ft); |
| 1152 | ht = h; |
| 1153 | ha = fabs(h); |
| 1154 | |
| 1155 | // |
| 1156 | // PMAX points to the maximum absolute element of matrix |
| 1157 | // PMAX = 1 if F largest in absolute values |
| 1158 | // PMAX = 2 if G largest in absolute values |
| 1159 | // PMAX = 3 if H largest in absolute values |
| 1160 | // |
| 1161 | pmax = 1; |
| 1162 | swp = ap::fp_greater(ha,fa); |
| 1163 | if( swp ) |
| 1164 | { |
| 1165 | |
| 1166 | // |
| 1167 | // Now FA .ge. HA |
| 1168 | // |
| 1169 | pmax = 3; |
| 1170 | temp = ft; |
| 1171 | ft = ht; |
no test coverage detected