1use crate::gsl::block_double::*;
2use crate::gsl::vector_double::*;
3
4extern "C" {
7 pub fn gsl_error(
8 reason: *const ::std::os::raw::c_char,
9 file: *const ::std::os::raw::c_char,
10 line: ::std::os::raw::c_int,
11 gsl_errno: ::std::os::raw::c_int,
12 );
13}
14extern "C" {
15 pub fn gsl_stream_printf(
16 label: *const ::std::os::raw::c_char,
17 file: *const ::std::os::raw::c_char,
18 line: ::std::os::raw::c_int,
19 reason: *const ::std::os::raw::c_char,
20 );
21}
22extern "C" {
23 pub fn gsl_strerror(gsl_errno: ::std::os::raw::c_int) -> *const ::std::os::raw::c_char;
24}
25extern "C" {
26 pub fn gsl_set_error_handler(new_handler: gsl_error_handler_t) -> gsl_error_handler_t;
27}
28extern "C" {
29 pub fn gsl_set_error_handler_off() -> gsl_error_handler_t;
30}
31extern "C" {
32 pub fn gsl_set_stream_handler(new_handler: gsl_stream_handler_t) -> gsl_stream_handler_t;
33}
34extern "C" {
35 pub fn gsl_set_stream(new_stream: *mut FILE) -> *mut FILE;
36}
37extern "C" {
38 pub fn gsl_block_alloc(n: usize) -> *mut gsl_block;
39}
40extern "C" {
41 pub fn gsl_block_calloc(n: usize) -> *mut gsl_block;
42}
43extern "C" {
44 pub fn gsl_block_free(b: *mut gsl_block);
45}
46extern "C" {
47 pub fn gsl_block_fread(stream: *mut FILE, b: *mut gsl_block) -> ::std::os::raw::c_int;
48}
49extern "C" {
50 pub fn gsl_block_fwrite(stream: *mut FILE, b: *const gsl_block) -> ::std::os::raw::c_int;
51}
52extern "C" {
53 pub fn gsl_block_fscanf(stream: *mut FILE, b: *mut gsl_block) -> ::std::os::raw::c_int;
54}
55extern "C" {
56 pub fn gsl_block_fprintf(
57 stream: *mut FILE,
58 b: *const gsl_block,
59 format: *const ::std::os::raw::c_char,
60 ) -> ::std::os::raw::c_int;
61}
62extern "C" {
63 pub fn gsl_block_raw_fread(
64 stream: *mut FILE,
65 b: *mut f64,
66 n: usize,
67 stride: usize,
68 ) -> ::std::os::raw::c_int;
69}
70extern "C" {
71 pub fn gsl_block_raw_fwrite(
72 stream: *mut FILE,
73 b: *const f64,
74 n: usize,
75 stride: usize,
76 ) -> ::std::os::raw::c_int;
77}
78extern "C" {
79 pub fn gsl_block_raw_fscanf(
80 stream: *mut FILE,
81 b: *mut f64,
82 n: usize,
83 stride: usize,
84 ) -> ::std::os::raw::c_int;
85}
86extern "C" {
87 pub fn gsl_block_raw_fprintf(
88 stream: *mut FILE,
89 b: *const f64,
90 n: usize,
91 stride: usize,
92 format: *const ::std::os::raw::c_char,
93 ) -> ::std::os::raw::c_int;
94}
95extern "C" {
96 pub fn gsl_block_size(b: *const gsl_block) -> usize;
97}
98extern "C" {
99 pub fn gsl_block_data(b: *const gsl_block) -> *mut f64;
100}
101#[repr(C)]
102pub struct _gsl_vector_view {
103 pub vector: gsl_vector,
104}
105#[repr(C)]
106pub struct _gsl_vector_const_view {
107 pub vector: gsl_vector,
108}
109extern "C" {
110 pub fn gsl_vector_alloc(n: usize) -> *mut gsl_vector;
111}
112extern "C" {
113 pub fn gsl_vector_calloc(n: usize) -> *mut gsl_vector;
114}
115extern "C" {
116 pub fn gsl_vector_alloc_from_block(
117 b: *mut gsl_block,
118 offset: usize,
119 n: usize,
120 stride: usize,
121 ) -> *mut gsl_vector;
122}
123extern "C" {
124 pub fn gsl_vector_alloc_from_vector(
125 v: *mut gsl_vector,
126 offset: usize,
127 n: usize,
128 stride: usize,
129 ) -> *mut gsl_vector;
130}
131extern "C" {
132 pub fn gsl_vector_free(v: *mut gsl_vector);
133}
134extern "C" {
135 pub fn gsl_vector_view_array(v: *mut f64, n: usize) -> _gsl_vector_view;
136}
137extern "C" {
138 pub fn gsl_vector_view_array_with_stride(
139 base: *mut f64,
140 stride: usize,
141 n: usize,
142 ) -> _gsl_vector_view;
143}
144extern "C" {
145 pub fn gsl_vector_const_view_array(v: *const f64, n: usize) -> _gsl_vector_const_view;
146}
147extern "C" {
148 pub fn gsl_vector_const_view_array_with_stride(
149 base: *const f64,
150 stride: usize,
151 n: usize,
152 ) -> _gsl_vector_const_view;
153}
154extern "C" {
155 pub fn gsl_vector_subvector(v: *mut gsl_vector, i: usize, n: usize) -> _gsl_vector_view;
156}
157extern "C" {
158 pub fn gsl_vector_subvector_with_stride(
159 v: *mut gsl_vector,
160 i: usize,
161 stride: usize,
162 n: usize,
163 ) -> _gsl_vector_view;
164}
165extern "C" {
166 pub fn gsl_vector_const_subvector(
167 v: *const gsl_vector,
168 i: usize,
169 n: usize,
170 ) -> _gsl_vector_const_view;
171}
172extern "C" {
173 pub fn gsl_vector_const_subvector_with_stride(
174 v: *const gsl_vector,
175 i: usize,
176 stride: usize,
177 n: usize,
178 ) -> _gsl_vector_const_view;
179}
180extern "C" {
181 pub fn gsl_vector_set_zero(v: *mut gsl_vector);
182}
183extern "C" {
184 pub fn gsl_vector_set_all(v: *mut gsl_vector, x: f64);
185}
186extern "C" {
187 pub fn gsl_vector_set_basis(v: *mut gsl_vector, i: usize) -> ::std::os::raw::c_int;
188}
189extern "C" {
190 pub fn gsl_vector_fread(stream: *mut FILE, v: *mut gsl_vector) -> ::std::os::raw::c_int;
191}
192extern "C" {
193 pub fn gsl_vector_fwrite(stream: *mut FILE, v: *const gsl_vector) -> ::std::os::raw::c_int;
194}
195extern "C" {
196 pub fn gsl_vector_fscanf(stream: *mut FILE, v: *mut gsl_vector) -> ::std::os::raw::c_int;
197}
198extern "C" {
199 pub fn gsl_vector_fprintf(
200 stream: *mut FILE,
201 v: *const gsl_vector,
202 format: *const ::std::os::raw::c_char,
203 ) -> ::std::os::raw::c_int;
204}
205extern "C" {
206 pub fn gsl_vector_memcpy(
207 dest: *mut gsl_vector,
208 src: *const gsl_vector,
209 ) -> ::std::os::raw::c_int;
210}
211extern "C" {
212 pub fn gsl_vector_reverse(v: *mut gsl_vector) -> ::std::os::raw::c_int;
213}
214extern "C" {
215 pub fn gsl_vector_swap(v: *mut gsl_vector, w: *mut gsl_vector) -> ::std::os::raw::c_int;
216}
217extern "C" {
218 pub fn gsl_vector_swap_elements(
219 v: *mut gsl_vector,
220 i: usize,
221 j: usize,
222 ) -> ::std::os::raw::c_int;
223}
224extern "C" {
225 pub fn gsl_vector_max(v: *const gsl_vector) -> f64;
226}
227extern "C" {
228 pub fn gsl_vector_min(v: *const gsl_vector) -> f64;
229}
230extern "C" {
231 pub fn gsl_vector_minmax(v: *const gsl_vector, min_out: *mut f64, max_out: *mut f64);
232}
233extern "C" {
234 pub fn gsl_vector_max_index(v: *const gsl_vector) -> usize;
235}
236extern "C" {
237 pub fn gsl_vector_min_index(v: *const gsl_vector) -> usize;
238}
239extern "C" {
240 pub fn gsl_vector_minmax_index(v: *const gsl_vector, imin: *mut usize, imax: *mut usize);
241}
242extern "C" {
243 pub fn gsl_vector_add(a: *mut gsl_vector, b: *const gsl_vector) -> ::std::os::raw::c_int;
244}
245extern "C" {
246 pub fn gsl_vector_sub(a: *mut gsl_vector, b: *const gsl_vector) -> ::std::os::raw::c_int;
247}
248extern "C" {
249 pub fn gsl_vector_mul(a: *mut gsl_vector, b: *const gsl_vector) -> ::std::os::raw::c_int;
250}
251extern "C" {
252 pub fn gsl_vector_div(a: *mut gsl_vector, b: *const gsl_vector) -> ::std::os::raw::c_int;
253}
254extern "C" {
255 pub fn gsl_vector_scale(a: *mut gsl_vector, x: f64) -> ::std::os::raw::c_int;
256}
257extern "C" {
258 pub fn gsl_vector_add_constant(a: *mut gsl_vector, x: f64) -> ::std::os::raw::c_int;
259}
260extern "C" {
261 pub fn gsl_vector_equal(u: *const gsl_vector, v: *const gsl_vector) -> ::std::os::raw::c_int;
262}
263extern "C" {
264 pub fn gsl_vector_isnull(v: *const gsl_vector) -> ::std::os::raw::c_int;
265}
266extern "C" {
267 pub fn gsl_vector_ispos(v: *const gsl_vector) -> ::std::os::raw::c_int;
268}
269extern "C" {
270 pub fn gsl_vector_isneg(v: *const gsl_vector) -> ::std::os::raw::c_int;
271}
272extern "C" {
273 pub fn gsl_vector_isnonneg(v: *const gsl_vector) -> ::std::os::raw::c_int;
274}
275extern "C" {
276 pub fn gsl_vector_get(v: *const gsl_vector, i: usize) -> f64;
277}
278extern "C" {
279 pub fn gsl_vector_set(v: *mut gsl_vector, i: usize, x: f64);
280}
281extern "C" {
282 pub fn gsl_vector_ptr(v: *mut gsl_vector, i: usize) -> *mut f64;
283}
284extern "C" {
285 pub fn gsl_vector_const_ptr(v: *const gsl_vector, i: usize) -> *const f64;
286}
287#[repr(C)]
288#[derive(Clone)]
289pub struct gsl_matrix {
290 pub size1: usize,
291 pub size2: usize,
292 pub tda: usize,
293 pub data: *mut f64,
294 pub block: *mut gsl_block,
295 pub owner: ::std::os::raw::c_int,
296}
297#[repr(C)]
298pub struct _gsl_matrix_view {
299 pub matrix: gsl_matrix,
300}
301pub type gsl_matrix_view = _gsl_matrix_view;
302#[repr(C)]
303pub struct _gsl_matrix_const_view {
304 pub matrix: gsl_matrix,
305}
306pub type gsl_matrix_const_view = _gsl_matrix_const_view;
307extern "C" {
308 pub fn gsl_matrix_alloc(n1: usize, n2: usize) -> *mut gsl_matrix;
309}
310extern "C" {
311 pub fn gsl_matrix_calloc(n1: usize, n2: usize) -> *mut gsl_matrix;
312}
313extern "C" {
314 pub fn gsl_matrix_alloc_from_block(
315 b: *mut gsl_block,
316 offset: usize,
317 n1: usize,
318 n2: usize,
319 d2: usize,
320 ) -> *mut gsl_matrix;
321}
322extern "C" {
323 pub fn gsl_matrix_alloc_from_matrix(
324 m: *mut gsl_matrix,
325 k1: usize,
326 k2: usize,
327 n1: usize,
328 n2: usize,
329 ) -> *mut gsl_matrix;
330}
331extern "C" {
332 pub fn gsl_vector_alloc_row_from_matrix(m: *mut gsl_matrix, i: usize) -> *mut gsl_vector;
333}
334extern "C" {
335 pub fn gsl_vector_alloc_col_from_matrix(m: *mut gsl_matrix, j: usize) -> *mut gsl_vector;
336}
337extern "C" {
338 pub fn gsl_matrix_free(m: *mut gsl_matrix);
339}
340extern "C" {
341 pub fn gsl_matrix_submatrix(
342 m: *mut gsl_matrix,
343 i: usize,
344 j: usize,
345 n1: usize,
346 n2: usize,
347 ) -> _gsl_matrix_view;
348}
349extern "C" {
350 pub fn gsl_matrix_row(m: *mut gsl_matrix, i: usize) -> _gsl_vector_view;
351}
352extern "C" {
353 pub fn gsl_matrix_column(m: *mut gsl_matrix, j: usize) -> _gsl_vector_view;
354}
355extern "C" {
356 pub fn gsl_matrix_diagonal(m: *mut gsl_matrix) -> _gsl_vector_view;
357}
358extern "C" {
359 pub fn gsl_matrix_subdiagonal(m: *mut gsl_matrix, k: usize) -> _gsl_vector_view;
360}
361extern "C" {
362 pub fn gsl_matrix_superdiagonal(m: *mut gsl_matrix, k: usize) -> _gsl_vector_view;
363}
364extern "C" {
365 pub fn gsl_matrix_subrow(
366 m: *mut gsl_matrix,
367 i: usize,
368 offset: usize,
369 n: usize,
370 ) -> _gsl_vector_view;
371}
372extern "C" {
373 pub fn gsl_matrix_subcolumn(
374 m: *mut gsl_matrix,
375 j: usize,
376 offset: usize,
377 n: usize,
378 ) -> _gsl_vector_view;
379}
380extern "C" {
381 pub fn gsl_matrix_view_array(base: *mut f64, n1: usize, n2: usize) -> _gsl_matrix_view;
382}
383extern "C" {
384 pub fn gsl_matrix_view_array_with_tda(
385 base: *mut f64,
386 n1: usize,
387 n2: usize,
388 tda: usize,
389 ) -> _gsl_matrix_view;
390}
391extern "C" {
392 pub fn gsl_matrix_view_vector(v: *mut gsl_vector, n1: usize, n2: usize) -> _gsl_matrix_view;
393}
394extern "C" {
395 pub fn gsl_matrix_view_vector_with_tda(
396 v: *mut gsl_vector,
397 n1: usize,
398 n2: usize,
399 tda: usize,
400 ) -> _gsl_matrix_view;
401}
402extern "C" {
403 pub fn gsl_matrix_const_submatrix(
404 m: *const gsl_matrix,
405 i: usize,
406 j: usize,
407 n1: usize,
408 n2: usize,
409 ) -> _gsl_matrix_const_view;
410}
411extern "C" {
412 pub fn gsl_matrix_const_row(m: *const gsl_matrix, i: usize) -> _gsl_vector_const_view;
413}
414extern "C" {
415 pub fn gsl_matrix_const_column(m: *const gsl_matrix, j: usize) -> _gsl_vector_const_view;
416}
417extern "C" {
418 pub fn gsl_matrix_const_diagonal(m: *const gsl_matrix) -> _gsl_vector_const_view;
419}
420extern "C" {
421 pub fn gsl_matrix_const_subdiagonal(m: *const gsl_matrix, k: usize) -> _gsl_vector_const_view;
422}
423extern "C" {
424 pub fn gsl_matrix_const_superdiagonal(m: *const gsl_matrix, k: usize)
425 -> _gsl_vector_const_view;
426}
427extern "C" {
428 pub fn gsl_matrix_const_subrow(
429 m: *const gsl_matrix,
430 i: usize,
431 offset: usize,
432 n: usize,
433 ) -> _gsl_vector_const_view;
434}
435extern "C" {
436 pub fn gsl_matrix_const_subcolumn(
437 m: *const gsl_matrix,
438 j: usize,
439 offset: usize,
440 n: usize,
441 ) -> _gsl_vector_const_view;
442}
443extern "C" {
444 pub fn gsl_matrix_const_view_array(
445 base: *const f64,
446 n1: usize,
447 n2: usize,
448 ) -> _gsl_matrix_const_view;
449}
450extern "C" {
451 pub fn gsl_matrix_const_view_array_with_tda(
452 base: *const f64,
453 n1: usize,
454 n2: usize,
455 tda: usize,
456 ) -> _gsl_matrix_const_view;
457}
458extern "C" {
459 pub fn gsl_matrix_const_view_vector(
460 v: *const gsl_vector,
461 n1: usize,
462 n2: usize,
463 ) -> _gsl_matrix_const_view;
464}
465extern "C" {
466 pub fn gsl_matrix_const_view_vector_with_tda(
467 v: *const gsl_vector,
468 n1: usize,
469 n2: usize,
470 tda: usize,
471 ) -> _gsl_matrix_const_view;
472}
473extern "C" {
474 pub fn gsl_matrix_set_zero(m: *mut gsl_matrix);
475}
476extern "C" {
477 pub fn gsl_matrix_set_identity(m: *mut gsl_matrix);
478}
479extern "C" {
480 pub fn gsl_matrix_set_all(m: *mut gsl_matrix, x: f64);
481}
482extern "C" {
483 pub fn gsl_matrix_fread(stream: *mut FILE, m: *mut gsl_matrix) -> ::std::os::raw::c_int;
484}
485extern "C" {
486 pub fn gsl_matrix_fwrite(stream: *mut FILE, m: *const gsl_matrix) -> ::std::os::raw::c_int;
487}
488extern "C" {
489 pub fn gsl_matrix_fscanf(stream: *mut FILE, m: *mut gsl_matrix) -> ::std::os::raw::c_int;
490}
491extern "C" {
492 pub fn gsl_matrix_fprintf(
493 stream: *mut FILE,
494 m: *const gsl_matrix,
495 format: *const ::std::os::raw::c_char,
496 ) -> ::std::os::raw::c_int;
497}
498extern "C" {
499 pub fn gsl_matrix_memcpy(
500 dest: *mut gsl_matrix,
501 src: *const gsl_matrix,
502 ) -> ::std::os::raw::c_int;
503}
504extern "C" {
505 pub fn gsl_matrix_swap(m1: *mut gsl_matrix, m2: *mut gsl_matrix) -> ::std::os::raw::c_int;
506}
507extern "C" {
508 pub fn gsl_matrix_tricpy(
509 uplo_src: ::std::os::raw::c_char,
510 copy_diag: ::std::os::raw::c_int,
511 dest: *mut gsl_matrix,
512 src: *const gsl_matrix,
513 ) -> ::std::os::raw::c_int;
514}
515extern "C" {
516 pub fn gsl_matrix_swap_rows(m: *mut gsl_matrix, i: usize, j: usize) -> ::std::os::raw::c_int;
517}
518extern "C" {
519 pub fn gsl_matrix_swap_columns(m: *mut gsl_matrix, i: usize, j: usize)
520 -> ::std::os::raw::c_int;
521}
522extern "C" {
523 pub fn gsl_matrix_swap_rowcol(m: *mut gsl_matrix, i: usize, j: usize) -> ::std::os::raw::c_int;
524}
525extern "C" {
526 pub fn gsl_matrix_transpose(m: *mut gsl_matrix) -> ::std::os::raw::c_int;
527}
528extern "C" {
529 pub fn gsl_matrix_transpose_memcpy(
530 dest: *mut gsl_matrix,
531 src: *const gsl_matrix,
532 ) -> ::std::os::raw::c_int;
533}
534extern "C" {
535 pub fn gsl_matrix_transpose_tricpy(
536 uplo_src: ::std::os::raw::c_char,
537 copy_diag: ::std::os::raw::c_int,
538 dest: *mut gsl_matrix,
539 src: *const gsl_matrix,
540 ) -> ::std::os::raw::c_int;
541}
542extern "C" {
543 pub fn gsl_matrix_max(m: *const gsl_matrix) -> f64;
544}
545extern "C" {
546 pub fn gsl_matrix_min(m: *const gsl_matrix) -> f64;
547}
548extern "C" {
549 pub fn gsl_matrix_minmax(m: *const gsl_matrix, min_out: *mut f64, max_out: *mut f64);
550}
551extern "C" {
552 pub fn gsl_matrix_max_index(m: *const gsl_matrix, imax: *mut usize, jmax: *mut usize);
553}
554extern "C" {
555 pub fn gsl_matrix_min_index(m: *const gsl_matrix, imin: *mut usize, jmin: *mut usize);
556}
557extern "C" {
558 pub fn gsl_matrix_minmax_index(
559 m: *const gsl_matrix,
560 imin: *mut usize,
561 jmin: *mut usize,
562 imax: *mut usize,
563 jmax: *mut usize,
564 );
565}
566extern "C" {
567 pub fn gsl_matrix_equal(a: *const gsl_matrix, b: *const gsl_matrix) -> ::std::os::raw::c_int;
568}
569extern "C" {
570 pub fn gsl_matrix_isnull(m: *const gsl_matrix) -> ::std::os::raw::c_int;
571}
572extern "C" {
573 pub fn gsl_matrix_ispos(m: *const gsl_matrix) -> ::std::os::raw::c_int;
574}
575extern "C" {
576 pub fn gsl_matrix_isneg(m: *const gsl_matrix) -> ::std::os::raw::c_int;
577}
578extern "C" {
579 pub fn gsl_matrix_isnonneg(m: *const gsl_matrix) -> ::std::os::raw::c_int;
580}
581extern "C" {
582 pub fn gsl_matrix_add(a: *mut gsl_matrix, b: *const gsl_matrix) -> ::std::os::raw::c_int;
583}
584extern "C" {
585 pub fn gsl_matrix_sub(a: *mut gsl_matrix, b: *const gsl_matrix) -> ::std::os::raw::c_int;
586}
587extern "C" {
588 pub fn gsl_matrix_mul_elements(
589 a: *mut gsl_matrix,
590 b: *const gsl_matrix,
591 ) -> ::std::os::raw::c_int;
592}
593extern "C" {
594 pub fn gsl_matrix_div_elements(
595 a: *mut gsl_matrix,
596 b: *const gsl_matrix,
597 ) -> ::std::os::raw::c_int;
598}
599extern "C" {
600 pub fn gsl_matrix_scale(a: *mut gsl_matrix, x: f64) -> ::std::os::raw::c_int;
601}
602extern "C" {
603 pub fn gsl_matrix_add_constant(a: *mut gsl_matrix, x: f64) -> ::std::os::raw::c_int;
604}
605extern "C" {
606 pub fn gsl_matrix_add_diagonal(a: *mut gsl_matrix, x: f64) -> ::std::os::raw::c_int;
607}
608extern "C" {
609 pub fn gsl_matrix_get_row(
610 v: *mut gsl_vector,
611 m: *const gsl_matrix,
612 i: usize,
613 ) -> ::std::os::raw::c_int;
614}
615extern "C" {
616 pub fn gsl_matrix_get_col(
617 v: *mut gsl_vector,
618 m: *const gsl_matrix,
619 j: usize,
620 ) -> ::std::os::raw::c_int;
621}
622extern "C" {
623 pub fn gsl_matrix_set_row(
624 m: *mut gsl_matrix,
625 i: usize,
626 v: *const gsl_vector,
627 ) -> ::std::os::raw::c_int;
628}
629extern "C" {
630 pub fn gsl_matrix_set_col(
631 m: *mut gsl_matrix,
632 j: usize,
633 v: *const gsl_vector,
634 ) -> ::std::os::raw::c_int;
635}
636extern "C" {
637 pub fn gsl_matrix_get(m: *const gsl_matrix, i: usize, j: usize) -> f64;
638}
639extern "C" {
640 pub fn gsl_matrix_set(m: *mut gsl_matrix, i: usize, j: usize, x: f64);
641}
642extern "C" {
643 pub fn gsl_matrix_ptr(m: *mut gsl_matrix, i: usize, j: usize) -> *mut f64;
644}
645extern "C" {
646 pub fn gsl_matrix_const_ptr(m: *const gsl_matrix, i: usize, j: usize) -> *const f64;
647}