| 202 | } |
| 203 | |
| 204 | static gsl_matrix_complex* |
| 205 | gsl_matrix_complex_alloc(const size_t n1, const size_t n2) |
| 206 | { |
| 207 | gsl_block_complex* block; |
| 208 | gsl_matrix_complex* m; |
| 209 | if (n1 == 0 || n2 == 0) |
| 210 | return 0; |
| 211 | m = (gsl_matrix_complex*)malloc(sizeof(gsl_matrix_complex)); |
| 212 | if (m == 0) |
| 213 | return 0; |
| 214 | block = (gsl_block_complex*)malloc(sizeof(gsl_block_complex)); |
| 215 | if (block == 0) { |
| 216 | free(m); |
| 217 | return 0; |
| 218 | } |
| 219 | block->size = n1*n2; |
| 220 | block->data = (double*)malloc(2*block->size*sizeof(double)); |
| 221 | if (block->data == 0) { |
| 222 | free(m); |
| 223 | free(block); |
| 224 | return 0; |
| 225 | } |
| 226 | m->data = block->data; |
| 227 | m->size1 = n1; |
| 228 | m->size2 = n2; |
| 229 | m->tda = n2; |
| 230 | m->block = block; |
| 231 | m->owner = 1; |
| 232 | return m; |
| 233 | } |
| 234 | |
| 235 | static gsl_matrix_complex* |
| 236 | gsl_matrix_complex_calloc(const size_t n1, const size_t n2) |
no outgoing calls
no test coverage detected