[INFO] cloning repository https://github.com/adfboyd/multi_ellip
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/adfboyd/multi_ellip" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fadfboyd%2Fmulti_ellip", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fadfboyd%2Fmulti_ellip'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] da360e212b2bbfae65a9bf90feb44ab7092020f5
[INFO] checking adfboyd/multi_ellip against 1.95.0 for pr-155915
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fadfboyd%2Fmulti_ellip" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/adfboyd/multi_ellip
[INFO] finished tweaking git repo https://github.com/adfboyd/multi_ellip
[INFO] tweaked toml for git repo https://github.com/adfboyd/multi_ellip written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/adfboyd/multi_ellip on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/adfboyd/multi_ellip already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded proc-macro2 v1.0.42
[INFO] [stderr]   Downloaded serde_derive v1.0.140
[INFO] [stderr]   Downloaded plotters-backend v0.3.4
[INFO] [stderr]   Downloaded plotters-bitmap v0.3.2
[INFO] [stderr]   Downloaded simba v0.7.1
[INFO] [stderr]   Downloaded plotters-svg v0.3.2
[INFO] [stderr]   Downloaded pathfinder_simd v0.5.1
[INFO] [stderr]   Downloaded unicode-ident v1.0.2
[INFO] [stderr]   Downloaded android_system_properties v0.1.4
[INFO] [stderr]   Downloaded nalgebra-macros v0.2.0
[INFO] [stderr]   Downloaded console v0.15.1
[INFO] [stderr]   Downloaded iana-time-zone v0.1.46
[INFO] [stderr]   Downloaded freetype v0.7.0
[INFO] [stderr]   Downloaded ucd-trie v0.1.4
[INFO] [stderr]   Downloaded simba v0.8.0
[INFO] [stderr]   Downloaded indicatif v0.17.0
[INFO] [stderr]   Downloaded fast-float v0.2.0
[INFO] [stderr]   Downloaded serde v1.0.140
[INFO] [stderr]   Downloaded pest v2.2.1
[INFO] [stderr]   Downloaded plotters v0.3.2
[INFO] [stderr]   Downloaded nalgebra v0.32.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] cbc0a2a1f7ecf0e5e0f4b540a287029cc0d64703421ea90088e92b5ad042a127
[INFO] running `Command { std: "docker" "start" "-a" "cbc0a2a1f7ecf0e5e0f4b540a287029cc0d64703421ea90088e92b5ad042a127", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "cbc0a2a1f7ecf0e5e0f4b540a287029cc0d64703421ea90088e92b5ad042a127", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cbc0a2a1f7ecf0e5e0f4b540a287029cc0d64703421ea90088e92b5ad042a127", kill_on_drop: false }`
[INFO] [stdout] cbc0a2a1f7ecf0e5e0f4b540a287029cc0d64703421ea90088e92b5ad042a127
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] df228bcc23ea6a18b8797a9592a137577fb0c754db9887022c484278913da679
[INFO] running `Command { std: "docker" "start" "-a" "df228bcc23ea6a18b8797a9592a137577fb0c754db9887022c484278913da679", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.42
[INFO] [stderr]    Compiling unicode-ident v1.0.2
[INFO] [stderr]    Compiling quote v1.0.20
[INFO] [stderr]    Compiling syn v1.0.98
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]     Checking once_cell v1.13.1
[INFO] [stderr]    Compiling ucd-trie v0.1.4
[INFO] [stderr]    Compiling serde_derive v1.0.140
[INFO] [stderr]    Compiling serde v1.0.140
[INFO] [stderr]    Compiling num-bigint v0.4.3
[INFO] [stderr]    Compiling crossbeam-utils v0.8.11
[INFO] [stderr]     Checking bytemuck v1.11.0
[INFO] [stderr]    Compiling num-rational v0.4.1
[INFO] [stderr]    Compiling memoffset v0.6.5
[INFO] [stderr]    Compiling cmake v0.1.48
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.10
[INFO] [stderr]    Compiling crc32fast v1.3.2
[INFO] [stderr]    Compiling yeslogic-fontconfig-sys v3.2.0
[INFO] [stderr]     Checking adler32 v1.2.0
[INFO] [stderr]    Compiling rayon-core v1.9.3
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]     Checking miniz_oxide v0.5.3
[INFO] [stderr]     Checking libloading v0.7.3
[INFO] [stderr]     Checking deflate v1.0.0
[INFO] [stderr]     Checking num_cpus v1.13.1
[INFO] [stderr]     Checking dirs-sys-next v0.1.2
[INFO] [stderr]    Compiling num-iter v0.1.43
[INFO] [stderr]    Compiling freetype-sys v0.13.1
[INFO] [stderr]    Compiling rayon v1.5.3
[INFO] [stderr]     Checking weezl v0.1.7
[INFO] [stderr]    Compiling paste v1.0.7
[INFO] [stderr]    Compiling font-kit v0.11.0
[INFO] [stderr]     Checking jpeg-decoder v0.2.6
[INFO] [stderr]     Checking plotters-backend v0.3.4
[INFO] [stderr]     Checking safe_arch v0.6.0
[INFO] [stderr]     Checking dlib v0.5.0
[INFO] [stderr]     Checking const-cstr v0.3.0
[INFO] [stderr]     Checking gif v0.11.4
[INFO] [stderr]     Checking dirs-next v2.0.0
[INFO] [stderr]     Checking png v0.17.5
[INFO] [stderr]     Checking time v0.1.44
[INFO] [stderr]     Checking terminal_size v0.1.17
[INFO] [stderr]     Checking float-ord v0.2.0
[INFO] [stderr]     Checking iana-time-zone v0.1.46
[INFO] [stderr]     Checking either v1.8.0
[INFO] [stderr]     Checking matrixmultiply v0.3.2
[INFO] [stderr]     Checking csv-core v0.1.10
[INFO] [stderr]     Checking plotters-svg v0.3.2
[INFO] [stderr]     Checking console v0.15.1
[INFO] [stderr]     Checking ttf-parser v0.15.2
[INFO] [stderr]     Checking fast-float v0.2.0
[INFO] [stderr]     Checking wide v0.7.4
[INFO] [stderr]     Checking crossbeam-channel v0.5.6
[INFO] [stderr]     Checking freetype v0.7.0
[INFO] [stderr]     Checking num-integer v0.1.45
[INFO] [stderr]     Checking approx v0.5.1
[INFO] [stderr]     Checking crossbeam-deque v0.8.2
[INFO] [stderr]     Checking chrono v0.4.22
[INFO] [stderr]     Checking image v0.24.3
[INFO] [stderr]    Compiling thiserror-impl v1.0.31
[INFO] [stderr]    Compiling nalgebra-macros v0.2.0
[INFO] [stderr]     Checking indicatif v0.17.0
[INFO] [stderr]     Checking plotters-bitmap v0.3.2
[INFO] [stderr]    Compiling thiserror v1.0.31
[INFO] [stderr]    Compiling pest v2.2.1
[INFO] [stderr]    Compiling semver-parser v0.10.2
[INFO] [stderr]    Compiling semver v0.11.0
[INFO] [stderr]    Compiling rustc_version v0.3.3
[INFO] [stderr]    Compiling pathfinder_simd v0.5.1
[INFO] [stderr]     Checking pathfinder_geometry v0.5.1
[INFO] [stderr]     Checking plotters v0.3.2
[INFO] [stderr]     Checking num-complex v0.4.2
[INFO] [stderr]     Checking bstr v0.2.17
[INFO] [stderr]     Checking simba v0.8.0
[INFO] [stderr]     Checking simba v0.7.1
[INFO] [stderr]     Checking num v0.4.0
[INFO] [stderr]     Checking csv v1.1.6
[INFO] [stderr]     Checking nalgebra v0.32.1
[INFO] [stderr]     Checking multi_ellip v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `body_to_lab`
[INFO] [stdout]  --> src/ellipsoids/body.rs:8:24
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::ode::pcdm::{body_to_lab, lab_to_body};
[INFO] [stdout]   |                        ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/ellipsoids/body.rs:213:9
[INFO] [stdout]     |
[INFO] [stdout] 213 | / ...   ///Decides for a point p0 (in lab coordinates) on the ellipsoid, which plane in the orientation of the body to split the su...
[INFO] [stdout] 214 | | ...   /// outputs eg (1,0,0) for positive side of x-plane or (0, -1, 0) for negative side of y-plane.
[INFO] [stdout]     | |_____________________________________________________________________________________________________^
[INFO] [stdout] 215 |   ...
[INFO] [stdout] 216 |   ...   let p0_lin_transformed = p0 - self.position;
[INFO] [stdout]     |         -------------------------------------------- rustdoc does not generate documentation for statements
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `//` for a plain comment
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/ode/rk4pcdm.rs:555:30
[INFO] [stdout]     |
[INFO] [stdout] 555 |         let imag_scalar = if (mag > 0.0000001) {
[INFO] [stdout]     |                              ^               ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 555 -         let imag_scalar = if (mag > 0.0000001) {
[INFO] [stdout] 555 +         let imag_scalar = if mag > 0.0000001  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/bem/geom.rs:290:5
[INFO] [stdout]     |
[INFO] [stdout] 290 |     ///Add in capability to split surface into halves.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 293 |     let mut axis_index = 0_usize;
[INFO] [stdout]     |     ----------------------------- rustdoc does not generate documentation for statements
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/bem/geom.rs:479:5
[INFO] [stdout]     |
[INFO] [stdout] 479 |       ///nelm1 not npts1
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 480 | /     for &i in sing_elms_2 {
[INFO] [stdout] 481 | |         let i2 = i + nelm1;
[INFO] [stdout] 482 | |         sing_elms.push(i2);
[INFO] [stdout] 483 | |     };
[INFO] [stdout]     | |_____- rustdoc does not generate documentation for expressions
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::process::id`
[INFO] [stdout]  --> src/bem/integ.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::process::id;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Matrix` and `Quaternion`
[INFO] [stdout]  --> src/bem/integ.rs:3:34
[INFO] [stdout]   |
[INFO] [stdout] 3 | use nalgebra::{DMatrix, DVector, Matrix, Matrix3, Quaternion, Vector3, Vector6};
[INFO] [stdout]   |                                  ^^^^^^           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_traits::ToPrimitive`
[INFO] [stdout]  --> src/bem/integ.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use num_traits::ToPrimitive;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]     --> src/bem/integ.rs:1120:5
[INFO] [stdout]      |
[INFO] [stdout] 1120 |       ///Does the integral on line 1 of eq(28). Carried out on outer subsurface.
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1121 |
[INFO] [stdout] 1122 | /     let (sdlp, area) = grad_3d_integral(p0,
[INFO] [stdout] 1123 | |                                                 k, mint,
[INFO] [stdout] 1124 | |                                                 f, dfdn,
[INFO] [stdout] 1125 | |                                                 p, n ,vna,
[INFO] [stdout] 1126 | |                                                 alpha, beta, gamma,
[INFO] [stdout] 1127 | |                                                 xiq, etq, wq);
[INFO] [stdout]      | |______________________________________________________________- rustdoc does not generate documentation for statements
[INFO] [stdout]      |
[INFO] [stdout]      = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]     --> src/bem/integ.rs:1170:5
[INFO] [stdout]      |
[INFO] [stdout] 1170 |     ///Does the integral on line 2 of eq(28) of Hyp-singular integrals paper. Carried out on the inner subsurface
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1171 |
[INFO] [stdout] 1172 |     let mut area = 0.0;
[INFO] [stdout]      |     ------------------- rustdoc does not generate documentation for statements
[INFO] [stdout]      |
[INFO] [stdout]      = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]     --> src/bem/integ.rs:1278:5
[INFO] [stdout]      |
[INFO] [stdout] 1278 | /     ///Does the integral on line 3 of eq(28) of Hyp-singular integrals paper. Carried out on the inner subsurface
[INFO] [stdout] 1279 | |     ///(Only the part that does not need to be rearranged) I have included the negative sign outside the integral.
[INFO] [stdout]      | |__________________________________________________________________________________________________________________^
[INFO] [stdout] 1280 |
[INFO] [stdout] 1281 |       let mut area = 0.0;
[INFO] [stdout]      |       ------------------- rustdoc does not generate documentation for statements
[INFO] [stdout]      |
[INFO] [stdout]      = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]     --> src/bem/integ.rs:1369:5
[INFO] [stdout]      |
[INFO] [stdout] 1369 | /     ///Does the integral on line 3 of eq(28) of Hyp-singular integrals paper. Carried out on the inner subsurface
[INFO] [stdout] 1370 | |     ///(Only the part that does need to be rearranged)
[INFO] [stdout] 1371 | |     ///
[INFO] [stdout]      | |_______^
[INFO] [stdout] 1372 |       let mut area = 0.0;
[INFO] [stdout]      |       ------------------- rustdoc does not generate documentation for statements
[INFO] [stdout]      |
[INFO] [stdout]      = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]     --> src/bem/integ.rs:1471:5
[INFO] [stdout]      |
[INFO] [stdout] 1471 |     ///Does the integral on line 5 of eq(28) of Hyp-singular integrals paper. Carried out on the inner subsurface
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1472 |
[INFO] [stdout] 1473 |     let mut area = 0.0;
[INFO] [stdout]      |     ------------------- rustdoc does not generate documentation for statements
[INFO] [stdout]      |
[INFO] [stdout]      = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]     --> src/bem/integ.rs:1558:5
[INFO] [stdout]      |
[INFO] [stdout] 1558 |     ///Does the first line integral on line 4.
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1561 |     let i1 = n_line[(k, 0)];
[INFO] [stdout]      |     ------------------------ rustdoc does not generate documentation for statements
[INFO] [stdout]      |
[INFO] [stdout]      = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]     --> src/bem/integ.rs:1574:14
[INFO] [stdout]      |
[INFO] [stdout] 1574 |     let h1 = (p1 - p2);
[INFO] [stdout]      |              ^       ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1574 -     let h1 = (p1 - p2);
[INFO] [stdout] 1574 +     let h1 = p1 - p2 ;
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]     --> src/bem/integ.rs:1575:14
[INFO] [stdout]      |
[INFO] [stdout] 1575 |     let h2 = (p2 - p3);
[INFO] [stdout]      |              ^       ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1575 -     let h2 = (p2 - p3);
[INFO] [stdout] 1575 +     let h2 = p2 - p3 ;
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]     --> src/bem/integ.rs:1609:5
[INFO] [stdout]      |
[INFO] [stdout] 1609 |     ///Does the second line integral on line 4. Returns a 3x3x3 Tensor.
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1612 |     let i1 = n_line[(k, 0)];
[INFO] [stdout]      |     ------------------------ rustdoc does not generate documentation for statements
[INFO] [stdout]      |
[INFO] [stdout]      = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]     --> src/bem/integ.rs:1624:14
[INFO] [stdout]      |
[INFO] [stdout] 1624 |     let h1 = (p1 - p2);
[INFO] [stdout]      |              ^       ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1624 -     let h1 = (p1 - p2);
[INFO] [stdout] 1624 +     let h1 = p1 - p2 ;
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]     --> src/bem/integ.rs:1625:14
[INFO] [stdout]      |
[INFO] [stdout] 1625 |     let h2 = (p2 - p3);
[INFO] [stdout]      |              ^       ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1625 -     let h2 = (p2 - p3);
[INFO] [stdout] 1625 +     let h2 = p2 - p3 ;
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]     --> src/bem/integ.rs:1694:14
[INFO] [stdout]      |
[INFO] [stdout] 1694 |     let h1 = (p1 - p2);
[INFO] [stdout]      |              ^       ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1694 -     let h1 = (p1 - p2);
[INFO] [stdout] 1694 +     let h1 = p1 - p2 ;
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]     --> src/bem/integ.rs:1695:14
[INFO] [stdout]      |
[INFO] [stdout] 1695 |     let h2 = (p2 - p3);
[INFO] [stdout]      |              ^       ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1695 -     let h2 = (p2 - p3);
[INFO] [stdout] 1695 +     let h2 = p2 - p3 ;
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `body_to_lab`
[INFO] [stdout]  --> src/ellipsoids/body.rs:8:24
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::ode::pcdm::{body_to_lab, lab_to_body};
[INFO] [stdout]   |                        ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/ellipsoids/body.rs:213:9
[INFO] [stdout]     |
[INFO] [stdout] 213 | / ...   ///Decides for a point p0 (in lab coordinates) on the ellipsoid, which plane in the orientation of the body to split the su...
[INFO] [stdout] 214 | | ...   /// outputs eg (1,0,0) for positive side of x-plane or (0, -1, 0) for negative side of y-plane.
[INFO] [stdout]     | |_____________________________________________________________________________________________________^
[INFO] [stdout] 215 |   ...
[INFO] [stdout] 216 |   ...   let p0_lin_transformed = p0 - self.position;
[INFO] [stdout]     |         -------------------------------------------- rustdoc does not generate documentation for statements
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `//` for a plain comment
[INFO] [stdout]     = note: `#[warn(unused_doc_comments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]    --> src/ode/rk4pcdm.rs:555:30
[INFO] [stdout]     |
[INFO] [stdout] 555 |         let imag_scalar = if (mag > 0.0000001) {
[INFO] [stdout]     |                              ^               ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 555 -         let imag_scalar = if (mag > 0.0000001) {
[INFO] [stdout] 555 +         let imag_scalar = if mag > 0.0000001  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/bem/geom.rs:290:5
[INFO] [stdout]     |
[INFO] [stdout] 290 |     ///Add in capability to split surface into halves.
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 293 |     let mut axis_index = 0_usize;
[INFO] [stdout]     |     ----------------------------- rustdoc does not generate documentation for statements
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]    --> src/bem/geom.rs:479:5
[INFO] [stdout]     |
[INFO] [stdout] 479 |       ///nelm1 not npts1
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 480 | /     for &i in sing_elms_2 {
[INFO] [stdout] 481 | |         let i2 = i + nelm1;
[INFO] [stdout] 482 | |         sing_elms.push(i2);
[INFO] [stdout] 483 | |     };
[INFO] [stdout]     | |_____- rustdoc does not generate documentation for expressions
[INFO] [stdout]     |
[INFO] [stdout]     = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::process::id`
[INFO] [stdout]  --> src/bem/integ.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::process::id;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Matrix` and `Quaternion`
[INFO] [stdout]  --> src/bem/integ.rs:3:34
[INFO] [stdout]   |
[INFO] [stdout] 3 | use nalgebra::{DMatrix, DVector, Matrix, Matrix3, Quaternion, Vector3, Vector6};
[INFO] [stdout]   |                                  ^^^^^^           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_traits::ToPrimitive`
[INFO] [stdout]  --> src/bem/integ.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use num_traits::ToPrimitive;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]     --> src/bem/integ.rs:1120:5
[INFO] [stdout]      |
[INFO] [stdout] 1120 |       ///Does the integral on line 1 of eq(28). Carried out on outer subsurface.
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1121 |
[INFO] [stdout] 1122 | /     let (sdlp, area) = grad_3d_integral(p0,
[INFO] [stdout] 1123 | |                                                 k, mint,
[INFO] [stdout] 1124 | |                                                 f, dfdn,
[INFO] [stdout] 1125 | |                                                 p, n ,vna,
[INFO] [stdout] 1126 | |                                                 alpha, beta, gamma,
[INFO] [stdout] 1127 | |                                                 xiq, etq, wq);
[INFO] [stdout]      | |______________________________________________________________- rustdoc does not generate documentation for statements
[INFO] [stdout]      |
[INFO] [stdout]      = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]     --> src/bem/integ.rs:1170:5
[INFO] [stdout]      |
[INFO] [stdout] 1170 |     ///Does the integral on line 2 of eq(28) of Hyp-singular integrals paper. Carried out on the inner subsurface
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1171 |
[INFO] [stdout] 1172 |     let mut area = 0.0;
[INFO] [stdout]      |     ------------------- rustdoc does not generate documentation for statements
[INFO] [stdout]      |
[INFO] [stdout]      = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]     --> src/bem/integ.rs:1278:5
[INFO] [stdout]      |
[INFO] [stdout] 1278 | /     ///Does the integral on line 3 of eq(28) of Hyp-singular integrals paper. Carried out on the inner subsurface
[INFO] [stdout] 1279 | |     ///(Only the part that does not need to be rearranged) I have included the negative sign outside the integral.
[INFO] [stdout]      | |__________________________________________________________________________________________________________________^
[INFO] [stdout] 1280 |
[INFO] [stdout] 1281 |       let mut area = 0.0;
[INFO] [stdout]      |       ------------------- rustdoc does not generate documentation for statements
[INFO] [stdout]      |
[INFO] [stdout]      = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]     --> src/bem/integ.rs:1369:5
[INFO] [stdout]      |
[INFO] [stdout] 1369 | /     ///Does the integral on line 3 of eq(28) of Hyp-singular integrals paper. Carried out on the inner subsurface
[INFO] [stdout] 1370 | |     ///(Only the part that does need to be rearranged)
[INFO] [stdout] 1371 | |     ///
[INFO] [stdout]      | |_______^
[INFO] [stdout] 1372 |       let mut area = 0.0;
[INFO] [stdout]      |       ------------------- rustdoc does not generate documentation for statements
[INFO] [stdout]      |
[INFO] [stdout]      = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]     --> src/bem/integ.rs:1471:5
[INFO] [stdout]      |
[INFO] [stdout] 1471 |     ///Does the integral on line 5 of eq(28) of Hyp-singular integrals paper. Carried out on the inner subsurface
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 1472 |
[INFO] [stdout] 1473 |     let mut area = 0.0;
[INFO] [stdout]      |     ------------------- rustdoc does not generate documentation for statements
[INFO] [stdout]      |
[INFO] [stdout]      = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]     --> src/bem/integ.rs:1558:5
[INFO] [stdout]      |
[INFO] [stdout] 1558 |     ///Does the first line integral on line 4.
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1561 |     let i1 = n_line[(k, 0)];
[INFO] [stdout]      |     ------------------------ rustdoc does not generate documentation for statements
[INFO] [stdout]      |
[INFO] [stdout]      = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]     --> src/bem/integ.rs:1574:14
[INFO] [stdout]      |
[INFO] [stdout] 1574 |     let h1 = (p1 - p2);
[INFO] [stdout]      |              ^       ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1574 -     let h1 = (p1 - p2);
[INFO] [stdout] 1574 +     let h1 = p1 - p2 ;
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]     --> src/bem/integ.rs:1575:14
[INFO] [stdout]      |
[INFO] [stdout] 1575 |     let h2 = (p2 - p3);
[INFO] [stdout]      |              ^       ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1575 -     let h2 = (p2 - p3);
[INFO] [stdout] 1575 +     let h2 = p2 - p3 ;
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused doc comment
[INFO] [stdout]     --> src/bem/integ.rs:1609:5
[INFO] [stdout]      |
[INFO] [stdout] 1609 |     ///Does the second line integral on line 4. Returns a 3x3x3 Tensor.
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 1612 |     let i1 = n_line[(k, 0)];
[INFO] [stdout]      |     ------------------------ rustdoc does not generate documentation for statements
[INFO] [stdout]      |
[INFO] [stdout]      = help: use `//` for a plain comment
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]     --> src/bem/integ.rs:1624:14
[INFO] [stdout]      |
[INFO] [stdout] 1624 |     let h1 = (p1 - p2);
[INFO] [stdout]      |              ^       ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1624 -     let h1 = (p1 - p2);
[INFO] [stdout] 1624 +     let h1 = p1 - p2 ;
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]     --> src/bem/integ.rs:1625:14
[INFO] [stdout]      |
[INFO] [stdout] 1625 |     let h2 = (p2 - p3);
[INFO] [stdout]      |              ^       ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1625 -     let h2 = (p2 - p3);
[INFO] [stdout] 1625 +     let h2 = p2 - p3 ;
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]     --> src/bem/integ.rs:1694:14
[INFO] [stdout]      |
[INFO] [stdout] 1694 |     let h1 = (p1 - p2);
[INFO] [stdout]      |              ^       ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1694 -     let h1 = (p1 - p2);
[INFO] [stdout] 1694 +     let h1 = p1 - p2 ;
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around assigned value
[INFO] [stdout]     --> src/bem/integ.rs:1695:14
[INFO] [stdout]      |
[INFO] [stdout] 1695 |     let h2 = (p2 - p3);
[INFO] [stdout]      |              ^       ^
[INFO] [stdout]      |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]      |
[INFO] [stdout] 1695 -     let h2 = (p2 - p3);
[INFO] [stdout] 1695 +     let h2 = p2 - p3 ;
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `nalgebra::Dynamic`: use Dyn instead.
[INFO] [stdout]  --> src/bem/geom.rs:2:34
[INFO] [stdout]   |
[INFO] [stdout] 2 | use nalgebra::{DMatrix, DVector, Dynamic, OMatrix, Vector3, Vector6};
[INFO] [stdout]   |                                  ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `nalgebra::Dynamic`: use Dyn instead.
[INFO] [stdout]    --> src/bem/geom.rs:789:32
[INFO] [stdout]     |
[INFO] [stdout] 789 |     let mut arel :OMatrix<f64, Dynamic, U1> = DVector::zeros(nelm);
[INFO] [stdout]     |                                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `nalgebra::Dynamic`: use Dyn instead.
[INFO] [stdout]  --> src/bem/bem_for_ode.rs:4:34
[INFO] [stdout]   |
[INFO] [stdout] 4 | use nalgebra::{DMatrix, DVector, Dynamic, OMatrix, Quaternion, U1, UnitQuaternion, Vector3, Vector6};
[INFO] [stdout]   |                                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `nalgebra::Dynamic`: use Dyn instead.
[INFO] [stdout]   --> src/bem/bem_for_ode.rs:17:30
[INFO] [stdout]    |
[INFO] [stdout] 17 | type PhiState = OMatrix<f64, Dynamic, U1>;
[INFO] [stdout]    |                              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `nalgebra::Dynamic`: use Dyn instead.
[INFO] [stdout]  --> src/bem/geom.rs:2:34
[INFO] [stdout]   |
[INFO] [stdout] 2 | use nalgebra::{DMatrix, DVector, Dynamic, OMatrix, Vector3, Vector6};
[INFO] [stdout]   |                                  ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `nalgebra::Dynamic`: use Dyn instead.
[INFO] [stdout]    --> src/bem/geom.rs:789:32
[INFO] [stdout]     |
[INFO] [stdout] 789 |     let mut arel :OMatrix<f64, Dynamic, U1> = DVector::zeros(nelm);
[INFO] [stdout]     |                                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `nalgebra::Dynamic`: use Dyn instead.
[INFO] [stdout]  --> src/bem/bem_for_ode.rs:4:34
[INFO] [stdout]   |
[INFO] [stdout] 4 | use nalgebra::{DMatrix, DVector, Dynamic, OMatrix, Quaternion, U1, UnitQuaternion, Vector3, Vector6};
[INFO] [stdout]   |                                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated type alias `nalgebra::Dynamic`: use Dyn instead.
[INFO] [stdout]   --> src/bem/bem_for_ode.rs:17:30
[INFO] [stdout]    |
[INFO] [stdout] 17 | type PhiState = OMatrix<f64, Dynamic, U1>;
[INFO] [stdout]    |                              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::bem::stacking::Block`
[INFO] [stdout]  --> src/bem/geom.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::bem::stacking::Block;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_traits::Signed`
[INFO] [stdout]  --> src/bem/geom.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use num_traits::Signed;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ellipsoids/body.rs:225:13
[INFO] [stdout]     |
[INFO] [stdout] 225 |         let mut scaled_p0 = p0_body.imag();
[INFO] [stdout]     |             ----^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shape`
[INFO] [stdout]    --> src/ellipsoids/body.rs:219:13
[INFO] [stdout]     |
[INFO] [stdout] 219 |         let shape = self.shape;
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_shape`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ratio`
[INFO] [stdout]   --> src/system/system.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |         ratio: f64,
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_ratio`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::bem::stacking::Block`
[INFO] [stdout]  --> src/bem/geom.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::bem::stacking::Block;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `num_traits::Signed`
[INFO] [stdout]  --> src/bem/geom.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use num_traits::Signed;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/ellipsoids/body.rs:225:13
[INFO] [stdout]     |
[INFO] [stdout] 225 |         let mut scaled_p0 = p0_body.imag();
[INFO] [stdout]     |             ----^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `shape`
[INFO] [stdout]    --> src/ellipsoids/body.rs:219:13
[INFO] [stdout]     |
[INFO] [stdout] 219 |         let shape = self.shape;
[INFO] [stdout]     |             ^^^^^ help: if this is intentional, prefix it with an underscore: `_shape`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `axis_direction` is never read
[INFO] [stdout]    --> src/bem/geom.rs:300:30
[INFO] [stdout]     |
[INFO] [stdout] 300 |     let mut axis_direction = 0_f64;
[INFO] [stdout]     |                              ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `asm` is never read
[INFO] [stdout]    --> src/bem/integ.rs:390:5
[INFO] [stdout]     |
[INFO] [stdout] 390 |     asm = asm * cf;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bem/integ.rs:805:9
[INFO] [stdout]     |
[INFO] [stdout] 805 |     let mut vn = ddxi.cross(&ddet);
[INFO] [stdout]     |         ----^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `p` is never read
[INFO] [stdout]    --> src/bem/integ.rs:833:17
[INFO] [stdout]     |
[INFO] [stdout] 833 |     let mut p = Vector3::zeros();
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `f` is never read
[INFO] [stdout]    --> src/bem/integ.rs:834:17
[INFO] [stdout]     |
[INFO] [stdout] 834 |     let mut f = 0.0;
[INFO] [stdout]     |                 ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `df` is never read
[INFO] [stdout]    --> src/bem/integ.rs:835:18
[INFO] [stdout]     |
[INFO] [stdout] 835 |     let mut df = 0.0;
[INFO] [stdout]     |                  ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `area`
[INFO] [stdout]     --> src/bem/integ.rs:1145:20
[INFO] [stdout]      |
[INFO] [stdout] 1145 |         let (sdlp, area) =  grad_3d_integral_l1(p0,
[INFO] [stdout]      |                    ^^^^ help: if this is intentional, prefix it with an underscore: `_area`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f_p0`
[INFO] [stdout]     --> src/bem/integ.rs:1236:38
[INFO] [stdout]      |
[INFO] [stdout] 1236 |                   p0 :&Vector3<f64>, f_p0 :f64, dfdn_p0:f64) -> Vector3<f64> {
[INFO] [stdout]      |                                      ^^^^ help: if this is intentional, prefix it with an underscore: `_f_p0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `area`
[INFO] [stdout]     --> src/bem/integ.rs:1254:24
[INFO] [stdout]      |
[INFO] [stdout] 1254 |             let (sdlp, area) =  grad_3d_integral_l2(p0,
[INFO] [stdout]      |                        ^^^^ help: if this is intentional, prefix it with an underscore: `_area`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ratio`
[INFO] [stdout]   --> src/system/system.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |         ratio: f64,
[INFO] [stdout]    |         ^^^^^ help: if this is intentional, prefix it with an underscore: `_ratio`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `area`
[INFO] [stdout]     --> src/bem/integ.rs:1350:20
[INFO] [stdout]      |
[INFO] [stdout] 1350 |         let (sdlp, area) =  grad_3d_integral_l3_1(p0,
[INFO] [stdout]      |                    ^^^^ help: if this is intentional, prefix it with an underscore: `_area`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mint`
[INFO] [stdout]     --> src/bem/integ.rs:1363:38
[INFO] [stdout]      |
[INFO] [stdout] 1363 | ...                   k :usize, mint :usize,
[INFO] [stdout]      |                                 ^^^^ help: if this is intentional, prefix it with an underscore: `_mint`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f_int`
[INFO] [stdout]     --> src/bem/integ.rs:1406:28
[INFO] [stdout]      |
[INFO] [stdout] 1406 |         let (xvec, vn, hs, f_int, dfdn_int) = lsdlpp_3d_interp(p1, p2, p3, p4, p5, p6,
[INFO] [stdout]      |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_f_int`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dfdn_int`
[INFO] [stdout]     --> src/bem/integ.rs:1406:35
[INFO] [stdout]      |
[INFO] [stdout] 1406 |         let (xvec, vn, hs, f_int, dfdn_int) = lsdlpp_3d_interp(p1, p2, p3, p4, p5, p6,
[INFO] [stdout]      |                                   ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dfdn_int`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dg`
[INFO] [stdout]     --> src/bem/integ.rs:1413:14
[INFO] [stdout]      |
[INFO] [stdout] 1413 |         let (dg, mut dd_g) = d_lgf_3d_fs_full(&xvec, p0);
[INFO] [stdout]      |              ^^ help: if this is intentional, prefix it with an underscore: `_dg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `area_tot` is assigned to, but never used
[INFO] [stdout]     --> src/bem/integ.rs:1442:9
[INFO] [stdout]      |
[INFO] [stdout] 1442 |     let mut area_tot = 0.0;
[INFO] [stdout]      |         ^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_area_tot` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `area_tot` is never read
[INFO] [stdout]     --> src/bem/integ.rs:1457:9
[INFO] [stdout]      |
[INFO] [stdout] 1457 |         area_tot += area;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f_int`
[INFO] [stdout]     --> src/bem/integ.rs:1506:28
[INFO] [stdout]      |
[INFO] [stdout] 1506 |         let (xvec, vn, hs, f_int, dfdn_int) = lsdlpp_3d_interp(p1, p2, p3, p4, p5, p6,
[INFO] [stdout]      |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_f_int`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dfdn_int`
[INFO] [stdout]     --> src/bem/integ.rs:1506:35
[INFO] [stdout]      |
[INFO] [stdout] 1506 |         let (xvec, vn, hs, f_int, dfdn_int) = lsdlpp_3d_interp(p1, p2, p3, p4, p5, p6,
[INFO] [stdout]      |                                   ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dfdn_int`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `g`
[INFO] [stdout]     --> src/bem/integ.rs:1513:14
[INFO] [stdout]      |
[INFO] [stdout] 1513 |         let (g, mut d_g) = lgf_3d_fs(&xvec, p0);
[INFO] [stdout]      |              ^ help: if this is intentional, prefix it with an underscore: `_g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `area`
[INFO] [stdout]     --> src/bem/integ.rs:1543:20
[INFO] [stdout]      |
[INFO] [stdout] 1543 |         let (sdlp, area) =  grad_3d_integral_l5(p0,
[INFO] [stdout]      |                    ^^^^ help: if this is intentional, prefix it with an underscore: `_area`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dg1`
[INFO] [stdout]     --> src/bem/integ.rs:1577:14
[INFO] [stdout]      |
[INFO] [stdout] 1577 |     let (g1, dg1) = lgf_3d_fs(&p12, p0);
[INFO] [stdout]      |              ^^^ help: if this is intentional, prefix it with an underscore: `_dg1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dg2`
[INFO] [stdout]     --> src/bem/integ.rs:1578:14
[INFO] [stdout]      |
[INFO] [stdout] 1578 |     let (g2, dg2) = lgf_3d_fs(&p23, p0);
[INFO] [stdout]      |              ^^^ help: if this is intentional, prefix it with an underscore: `_dg2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `length`
[INFO] [stdout]     --> src/bem/integ.rs:1596:20
[INFO] [stdout]      |
[INFO] [stdout] 1596 |         let (sdlp, length) = grad_3d_integral_l4_1(p0,
[INFO] [stdout]      |                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_length`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `g1`
[INFO] [stdout]     --> src/bem/integ.rs:1627:10
[INFO] [stdout]      |
[INFO] [stdout] 1627 |     let (g1, dg1) = lgf_3d_fs(&p12, p0);
[INFO] [stdout]      |          ^^ help: if this is intentional, prefix it with an underscore: `_g1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `g2`
[INFO] [stdout]     --> src/bem/integ.rs:1628:10
[INFO] [stdout]      |
[INFO] [stdout] 1628 |     let (g2, dg2) = lgf_3d_fs(&p23, p0);
[INFO] [stdout]      |          ^^ help: if this is intentional, prefix it with an underscore: `_g2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `length`
[INFO] [stdout]     --> src/bem/integ.rs:1666:20
[INFO] [stdout]      |
[INFO] [stdout] 1666 |         let (sdlp, length) = grad_3d_integral_l4_2(p0,
[INFO] [stdout]      |                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_length`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `g1`
[INFO] [stdout]     --> src/bem/integ.rs:1697:10
[INFO] [stdout]      |
[INFO] [stdout] 1697 |     let (g1, dg1) = lgf_3d_fs(&p12, p0);
[INFO] [stdout]      |          ^^ help: if this is intentional, prefix it with an underscore: `_g1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `g2`
[INFO] [stdout]     --> src/bem/integ.rs:1698:10
[INFO] [stdout]      |
[INFO] [stdout] 1698 |     let (g2, dg2) = lgf_3d_fs(&p23, p0);
[INFO] [stdout]      |          ^^ help: if this is intentional, prefix it with an underscore: `_g2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/bem/integ.rs:1793:9
[INFO] [stdout]      |
[INFO] [stdout] 1793 |     let mut l4_1 = skew_symmetric_from_vec(&l4_1_vec);
[INFO] [stdout]      |         ----^^^^
[INFO] [stdout]      |         |
[INFO] [stdout]      |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nonsing_elms`
[INFO] [stdout]     --> src/bem/integ.rs:1775:48
[INFO] [stdout]      |
[INFO] [stdout] 1775 | pub fn grad_3d_all_lhs(sing_elms :&Vec<usize>, nonsing_elms :&Vec<usize>, mint :usize,
[INFO] [stdout]      |                                                ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_nonsing_elms`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f_p0`
[INFO] [stdout]     --> src/bem/integ.rs:1780:64
[INFO] [stdout]      |
[INFO] [stdout] 1780 |                        p0 :&Vector3<f64>, p0_n :&Vector3<f64>, f_p0 :f64, dfdn_p0 :f64) -> Matrix3<f64> {
[INFO] [stdout]      |                                                                ^^^^ help: if this is intentional, prefix it with an underscore: `_f_p0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dfdn_p0`
[INFO] [stdout]     --> src/bem/integ.rs:1780:75
[INFO] [stdout]      |
[INFO] [stdout] 1780 |                        p0 :&Vector3<f64>, p0_n :&Vector3<f64>, f_p0 :f64, dfdn_p0 :f64) -> Matrix3<f64> {
[INFO] [stdout]      |                                                                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dfdn_p0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `axis_direction` is never read
[INFO] [stdout]    --> src/bem/geom.rs:300:30
[INFO] [stdout]     |
[INFO] [stdout] 300 |     let mut axis_direction = 0_f64;
[INFO] [stdout]     |                              ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `split_axis_x`
[INFO] [stdout]   --> src/bem/bem_for_ode.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let split_axis_x = Vector3::new(1, 0, 0);
[INFO] [stdout]    |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_split_axis_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `split_axis_y`
[INFO] [stdout]   --> src/bem/bem_for_ode.rs:49:13
[INFO] [stdout]    |
[INFO] [stdout] 49 |         let split_axis_y = Vector3::new(0, 1, 0);
[INFO] [stdout]    |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_split_axis_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `split_axis_z`
[INFO] [stdout]   --> src/bem/bem_for_ode.rs:50:13
[INFO] [stdout]    |
[INFO] [stdout] 50 |         let split_axis_z = Vector3::new(0, 0, 1);
[INFO] [stdout]    |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_split_axis_z`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `asm` is never read
[INFO] [stdout]    --> src/bem/integ.rs:390:5
[INFO] [stdout]     |
[INFO] [stdout] 390 |     asm = asm * cf;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:470:17
[INFO] [stdout]     |
[INFO] [stdout] 470 |             let mut n_line  = if which_body == 1 {
[INFO] [stdout]     |                 ----^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:480:17
[INFO] [stdout]     |
[INFO] [stdout] 480 |             let mut sing_elms = if which_body == 1 {
[INFO] [stdout]     |                 ----^^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:492:17
[INFO] [stdout]     |
[INFO] [stdout] 492 |             let mut non_sing_elms = if which_body == 1 {
[INFO] [stdout]     |                 ----^^^^^^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bem/integ.rs:805:9
[INFO] [stdout]     |
[INFO] [stdout] 805 |     let mut vn = ddxi.cross(&ddet);
[INFO] [stdout]     |         ----^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:246:13
[INFO] [stdout]     |
[INFO] [stdout] 246 |         for mut i in &mut body2_elms_all {
[INFO] [stdout]     |             ----^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:247:17
[INFO] [stdout]     |
[INFO] [stdout] 247 |             for mut j in i {
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:248:21
[INFO] [stdout]     |
[INFO] [stdout] 248 |                 for mut k in j {
[INFO] [stdout]     |                     ----^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:254:13
[INFO] [stdout]     |
[INFO] [stdout] 254 |         for mut i in &mut body2_lines {
[INFO] [stdout]     |             ----^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:255:17
[INFO] [stdout]     |
[INFO] [stdout] 255 |             for mut j in i {
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:377:13
[INFO] [stdout]     |
[INFO] [stdout] 377 |         let mut linear_pressure1 = Vector3::new(0.0, 0.0, 0.0);
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:378:13
[INFO] [stdout]     |
[INFO] [stdout] 378 |         let mut angular_pressure1 = Vector3::new(0.0, 0.0, 0.0);
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:380:13
[INFO] [stdout]     |
[INFO] [stdout] 380 |         let mut linear_pressure2 = Vector3::new(0.0, 0.0, 0.0);
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:381:13
[INFO] [stdout]     |
[INFO] [stdout] 381 |         let mut angular_pressure2 = Vector3::new(0.0, 0.0, 0.0);
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `p` is never read
[INFO] [stdout]    --> src/bem/integ.rs:833:17
[INFO] [stdout]     |
[INFO] [stdout] 833 |     let mut p = Vector3::zeros();
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `f` is never read
[INFO] [stdout]    --> src/bem/integ.rs:834:17
[INFO] [stdout]     |
[INFO] [stdout] 834 |     let mut f = 0.0;
[INFO] [stdout]     |                 ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `df` is never read
[INFO] [stdout]    --> src/bem/integ.rs:835:18
[INFO] [stdout]     |
[INFO] [stdout] 835 |     let mut df = 0.0;
[INFO] [stdout]     |                  ^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `axis_index` is never read
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:459:18
[INFO] [stdout]     |
[INFO] [stdout] 459 | ...   let (mut axis_index, mut axis_direction) = (0_usize, 0_usize); //axis_index gives index of the axis. axis_direction = 0 if ne...
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `axis_direction` is never read
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:459:34
[INFO] [stdout]     |
[INFO] [stdout] 459 | ...   let (mut axis_index, mut axis_direction) = (0_usize, 0_usize); //axis_index gives index of the axis. axis_direction = 0 if ne...
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nelm1`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:163:14
[INFO] [stdout]     |
[INFO] [stdout] 163 |         let (nelm1, npts1, p1, n1,
[INFO] [stdout]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_nelm1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `npts1`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:163:21
[INFO] [stdout]     |
[INFO] [stdout] 163 |         let (nelm1, npts1, p1, n1,
[INFO] [stdout]     |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_npts1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p1`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:163:28
[INFO] [stdout]     |
[INFO] [stdout] 163 |         let (nelm1, npts1, p1, n1,
[INFO] [stdout]     |                            ^^ help: if this is intentional, prefix it with an underscore: `_p1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n1`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:163:32
[INFO] [stdout]     |
[INFO] [stdout] 163 |         let (nelm1, npts1, p1, n1,
[INFO] [stdout]     |                                ^^ help: if this is intentional, prefix it with an underscore: `_n1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nelm1`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:169:14
[INFO] [stdout]     |
[INFO] [stdout] 169 |         let (nelm1, npts1, p1, n1,
[INFO] [stdout]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_nelm1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `npts1`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:169:21
[INFO] [stdout]     |
[INFO] [stdout] 169 |         let (nelm1, npts1, p1, n1,
[INFO] [stdout]     |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_npts1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p1`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:169:28
[INFO] [stdout]     |
[INFO] [stdout] 169 |         let (nelm1, npts1, p1, n1,
[INFO] [stdout]     |                            ^^ help: if this is intentional, prefix it with an underscore: `_p1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n1`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:169:32
[INFO] [stdout]     |
[INFO] [stdout] 169 |         let (nelm1, npts1, p1, n1,
[INFO] [stdout]     |                                ^^ help: if this is intentional, prefix it with an underscore: `_n1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nelm2`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:209:14
[INFO] [stdout]     |
[INFO] [stdout] 209 |         let (nelm2, npts2, p2, n2,
[INFO] [stdout]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_nelm2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `npts2`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 |         let (nelm2, npts2, p2, n2,
[INFO] [stdout]     |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_npts2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p2`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:209:28
[INFO] [stdout]     |
[INFO] [stdout] 209 |         let (nelm2, npts2, p2, n2,
[INFO] [stdout]     |                            ^^ help: if this is intentional, prefix it with an underscore: `_p2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n2`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:209:32
[INFO] [stdout]     |
[INFO] [stdout] 209 |         let (nelm2, npts2, p2, n2,
[INFO] [stdout]     |                                ^^ help: if this is intentional, prefix it with an underscore: `_n2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nelm2`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:214:14
[INFO] [stdout]     |
[INFO] [stdout] 214 |         let (nelm2, npts2, p2, n2,
[INFO] [stdout]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_nelm2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `npts2`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:214:21
[INFO] [stdout]     |
[INFO] [stdout] 214 |         let (nelm2, npts2, p2, n2,
[INFO] [stdout]     |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_npts2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p2`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:214:28
[INFO] [stdout]     |
[INFO] [stdout] 214 |         let (nelm2, npts2, p2, n2,
[INFO] [stdout]     |                            ^^ help: if this is intentional, prefix it with an underscore: `_p2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n2`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:214:32
[INFO] [stdout]     |
[INFO] [stdout] 214 |         let (nelm2, npts2, p2, n2,
[INFO] [stdout]     |                                ^^ help: if this is intentional, prefix it with an underscore: `_n2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nelm`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:270:14
[INFO] [stdout]     |
[INFO] [stdout] 270 |         let (nelm, npts, p, n) = combiner(nelm1, nelm2, npts1, npts2, &p1, &p2, &n1, &n2);
[INFO] [stdout]     |              ^^^^ help: if this is intentional, prefix it with an underscore: `_nelm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `npts`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:270:20
[INFO] [stdout]     |
[INFO] [stdout] 270 |         let (nelm, npts, p, n) = combiner(nelm1, nelm2, npts1, npts2, &p1, &p2, &n1, &n2);
[INFO] [stdout]     |                    ^^^^ help: if this is intentional, prefix it with an underscore: `_npts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nelm`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:272:14
[INFO] [stdout]     |
[INFO] [stdout] 272 |         let (nelm, npts, n_xline, x_elms_pos, x_elms_neg) = combiner_splitter(nelm1, nelm2, npts1, npts2,
[INFO] [stdout]     |              ^^^^ help: if this is intentional, prefix it with an underscore: `_nelm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `npts`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:272:20
[INFO] [stdout]     |
[INFO] [stdout] 272 |         let (nelm, npts, n_xline, x_elms_pos, x_elms_neg) = combiner_splitter(nelm1, nelm2, npts1, npts2,
[INFO] [stdout]     |                    ^^^^ help: if this is intentional, prefix it with an underscore: `_npts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_xline`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:272:26
[INFO] [stdout]     |
[INFO] [stdout] 272 |         let (nelm, npts, n_xline, x_elms_pos, x_elms_neg) = combiner_splitter(nelm1, nelm2, npts1, npts2,
[INFO] [stdout]     |                          ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_xline`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x_elms_pos`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:272:35
[INFO] [stdout]     |
[INFO] [stdout] 272 |         let (nelm, npts, n_xline, x_elms_pos, x_elms_neg) = combiner_splitter(nelm1, nelm2, npts1, npts2,
[INFO] [stdout]     |                                   ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_x_elms_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x_elms_neg`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:272:47
[INFO] [stdout]     |
[INFO] [stdout] 272 |         let (nelm, npts, n_xline, x_elms_pos, x_elms_neg) = combiner_splitter(nelm1, nelm2, npts1, npts2,
[INFO] [stdout]     |                                               ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_x_elms_neg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nelm`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:277:14
[INFO] [stdout]     |
[INFO] [stdout] 277 |         let (nelm, npts, n_yline, y_elms_pos, y_elms_neg) = combiner_splitter(nelm1, nelm2, npts1, npts2,
[INFO] [stdout]     |              ^^^^ help: if this is intentional, prefix it with an underscore: `_nelm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `npts`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:277:20
[INFO] [stdout]     |
[INFO] [stdout] 277 |         let (nelm, npts, n_yline, y_elms_pos, y_elms_neg) = combiner_splitter(nelm1, nelm2, npts1, npts2,
[INFO] [stdout]     |                    ^^^^ help: if this is intentional, prefix it with an underscore: `_npts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_yline`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:277:26
[INFO] [stdout]     |
[INFO] [stdout] 277 |         let (nelm, npts, n_yline, y_elms_pos, y_elms_neg) = combiner_splitter(nelm1, nelm2, npts1, npts2,
[INFO] [stdout]     |                          ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_yline`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y_elms_pos`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:277:35
[INFO] [stdout]     |
[INFO] [stdout] 277 |         let (nelm, npts, n_yline, y_elms_pos, y_elms_neg) = combiner_splitter(nelm1, nelm2, npts1, npts2,
[INFO] [stdout]     |                                   ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_y_elms_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y_elms_neg`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:277:47
[INFO] [stdout]     |
[INFO] [stdout] 277 |         let (nelm, npts, n_yline, y_elms_pos, y_elms_neg) = combiner_splitter(nelm1, nelm2, npts1, npts2,
[INFO] [stdout]     |                                               ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_y_elms_neg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_zline`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:282:26
[INFO] [stdout]     |
[INFO] [stdout] 282 |         let (nelm, npts, n_zline, z_elms_pos, z_elms_neg) = combiner_splitter(nelm1, nelm2, npts1, npts2,
[INFO] [stdout]     |                          ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_zline`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `z_elms_pos`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:282:35
[INFO] [stdout]     |
[INFO] [stdout] 282 |         let (nelm, npts, n_zline, z_elms_pos, z_elms_neg) = combiner_splitter(nelm1, nelm2, npts1, npts2,
[INFO] [stdout]     |                                   ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_z_elms_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `z_elms_neg`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:282:47
[INFO] [stdout]     |
[INFO] [stdout] 282 |         let (nelm, npts, n_zline, z_elms_pos, z_elms_neg) = combiner_splitter(nelm1, nelm2, npts1, npts2,
[INFO] [stdout]     |                                               ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_z_elms_neg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ks`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:383:13
[INFO] [stdout]     |
[INFO] [stdout] 383 |         let ks = (0..nelm).collect::<Vec<usize>>();
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_ks`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `area`
[INFO] [stdout]     --> src/bem/integ.rs:1145:20
[INFO] [stdout]      |
[INFO] [stdout] 1145 |         let (sdlp, area) =  grad_3d_integral_l1(p0,
[INFO] [stdout]      |                    ^^^^ help: if this is intentional, prefix it with an underscore: `_area`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f_p0`
[INFO] [stdout]     --> src/bem/integ.rs:1236:38
[INFO] [stdout]      |
[INFO] [stdout] 1236 |                   p0 :&Vector3<f64>, f_p0 :f64, dfdn_p0:f64) -> Vector3<f64> {
[INFO] [stdout]      |                                      ^^^^ help: if this is intentional, prefix it with an underscore: `_f_p0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `area`
[INFO] [stdout]     --> src/bem/integ.rs:1254:24
[INFO] [stdout]      |
[INFO] [stdout] 1254 |             let (sdlp, area) =  grad_3d_integral_l2(p0,
[INFO] [stdout]      |                        ^^^^ help: if this is intentional, prefix it with an underscore: `_area`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `area`
[INFO] [stdout]     --> src/bem/integ.rs:1350:20
[INFO] [stdout]      |
[INFO] [stdout] 1350 |         let (sdlp, area) =  grad_3d_integral_l3_1(p0,
[INFO] [stdout]      |                    ^^^^ help: if this is intentional, prefix it with an underscore: `_area`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Dopri54` is never constructed
[INFO] [stdout]  --> src/ode/butcher_tableau.rs:8:19
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub(crate) struct Dopri54 {
[INFO] [stdout]   |                   ^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/ode/butcher_tableau.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl Dopri54 {
[INFO] [stdout]    | ------------ associated items in this implementation
[INFO] [stdout] 18 |     /// Initialize the structure with the coefficients of the method.
[INFO] [stdout] 19 |     pub fn new() -> Dopri54 {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn a<T: SubsetOf<f64>>(&self, i: usize, j: usize) -> T {
[INFO] [stdout]    |            ^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn c<T: SubsetOf<f64>>(&self, i: usize) -> T {
[INFO] [stdout]    |            ^
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub fn d<T: SubsetOf<f64>>(&self, i: usize) -> T {
[INFO] [stdout]    |            ^
[INFO] [stdout] ...
[INFO] [stdout] 87 |     pub fn e<T: SubsetOf<f64>>(&self, i: usize) -> T {
[INFO] [stdout]    |            ^
[INFO] [stdout] ...
[INFO] [stdout] 92 |     pub fn num_stages(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 97 |     pub fn order(&self) -> i32 {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `num_stages` and `order` are never read
[INFO] [stdout]    --> src/ode/butcher_tableau.rs:104:5
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub(crate) struct Dopri853 {
[INFO] [stdout]     |                   -------- fields in this struct
[INFO] [stdout] 104 |     num_stages: usize,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 105 |     order: i32,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `num_stages` and `order` are never used
[INFO] [stdout]    --> src/ode/butcher_tableau.rs:420:12
[INFO] [stdout]     |
[INFO] [stdout] 114 | impl Dopri853 {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 420 |     pub fn num_stages(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 425 |     pub fn order(&self) -> i32 {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mint`
[INFO] [stdout]     --> src/bem/integ.rs:1363:38
[INFO] [stdout]      |
[INFO] [stdout] 1363 | ...                   k :usize, mint :usize,
[INFO] [stdout]      |                                 ^^^^ help: if this is intentional, prefix it with an underscore: `_mint`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f_int`
[INFO] [stdout]     --> src/bem/integ.rs:1406:28
[INFO] [stdout]      |
[INFO] [stdout] 1406 |         let (xvec, vn, hs, f_int, dfdn_int) = lsdlpp_3d_interp(p1, p2, p3, p4, p5, p6,
[INFO] [stdout]      |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_f_int`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dfdn_int`
[INFO] [stdout]     --> src/bem/integ.rs:1406:35
[INFO] [stdout]      |
[INFO] [stdout] 1406 |         let (xvec, vn, hs, f_int, dfdn_int) = lsdlpp_3d_interp(p1, p2, p3, p4, p5, p6,
[INFO] [stdout]      |                                   ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dfdn_int`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dg`
[INFO] [stdout]     --> src/bem/integ.rs:1413:14
[INFO] [stdout]      |
[INFO] [stdout] 1413 |         let (dg, mut dd_g) = d_lgf_3d_fs_full(&xvec, p0);
[INFO] [stdout]      |              ^^ help: if this is intentional, prefix it with an underscore: `_dg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable `area_tot` is assigned to, but never used
[INFO] [stdout]     --> src/bem/integ.rs:1442:9
[INFO] [stdout]      |
[INFO] [stdout] 1442 |     let mut area_tot = 0.0;
[INFO] [stdout]      |         ^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: consider using `_area_tot` instead
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `area_tot` is never read
[INFO] [stdout]     --> src/bem/integ.rs:1457:9
[INFO] [stdout]      |
[INFO] [stdout] 1457 |         area_tot += area;
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f_int`
[INFO] [stdout]     --> src/bem/integ.rs:1506:28
[INFO] [stdout]      |
[INFO] [stdout] 1506 |         let (xvec, vn, hs, f_int, dfdn_int) = lsdlpp_3d_interp(p1, p2, p3, p4, p5, p6,
[INFO] [stdout]      |                            ^^^^^ help: if this is intentional, prefix it with an underscore: `_f_int`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dfdn_int`
[INFO] [stdout]     --> src/bem/integ.rs:1506:35
[INFO] [stdout]      |
[INFO] [stdout] 1506 |         let (xvec, vn, hs, f_int, dfdn_int) = lsdlpp_3d_interp(p1, p2, p3, p4, p5, p6,
[INFO] [stdout]      |                                   ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dfdn_int`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `g`
[INFO] [stdout]     --> src/bem/integ.rs:1513:14
[INFO] [stdout]      |
[INFO] [stdout] 1513 |         let (g, mut d_g) = lgf_3d_fs(&xvec, p0);
[INFO] [stdout]      |              ^ help: if this is intentional, prefix it with an underscore: `_g`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `area`
[INFO] [stdout]     --> src/bem/integ.rs:1543:20
[INFO] [stdout]      |
[INFO] [stdout] 1543 |         let (sdlp, area) =  grad_3d_integral_l5(p0,
[INFO] [stdout]      |                    ^^^^ help: if this is intentional, prefix it with an underscore: `_area`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dg1`
[INFO] [stdout]     --> src/bem/integ.rs:1577:14
[INFO] [stdout]      |
[INFO] [stdout] 1577 |     let (g1, dg1) = lgf_3d_fs(&p12, p0);
[INFO] [stdout]      |              ^^^ help: if this is intentional, prefix it with an underscore: `_dg1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dg2`
[INFO] [stdout]     --> src/bem/integ.rs:1578:14
[INFO] [stdout]      |
[INFO] [stdout] 1578 |     let (g2, dg2) = lgf_3d_fs(&p23, p0);
[INFO] [stdout]      |              ^^^ help: if this is intentional, prefix it with an underscore: `_dg2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `length`
[INFO] [stdout]     --> src/bem/integ.rs:1596:20
[INFO] [stdout]      |
[INFO] [stdout] 1596 |         let (sdlp, length) = grad_3d_integral_l4_1(p0,
[INFO] [stdout]      |                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_length`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `g1`
[INFO] [stdout]     --> src/bem/integ.rs:1627:10
[INFO] [stdout]      |
[INFO] [stdout] 1627 |     let (g1, dg1) = lgf_3d_fs(&p12, p0);
[INFO] [stdout]      |          ^^ help: if this is intentional, prefix it with an underscore: `_g1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `g2`
[INFO] [stdout]     --> src/bem/integ.rs:1628:10
[INFO] [stdout]      |
[INFO] [stdout] 1628 |     let (g2, dg2) = lgf_3d_fs(&p23, p0);
[INFO] [stdout]      |          ^^ help: if this is intentional, prefix it with an underscore: `_g2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `length`
[INFO] [stdout]     --> src/bem/integ.rs:1666:20
[INFO] [stdout]      |
[INFO] [stdout] 1666 |         let (sdlp, length) = grad_3d_integral_l4_2(p0,
[INFO] [stdout]      |                    ^^^^^^ help: if this is intentional, prefix it with an underscore: `_length`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `g1`
[INFO] [stdout]     --> src/bem/integ.rs:1697:10
[INFO] [stdout]      |
[INFO] [stdout] 1697 |     let (g1, dg1) = lgf_3d_fs(&p12, p0);
[INFO] [stdout]      |          ^^ help: if this is intentional, prefix it with an underscore: `_g1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `g2`
[INFO] [stdout]     --> src/bem/integ.rs:1698:10
[INFO] [stdout]      |
[INFO] [stdout] 1698 |     let (g2, dg2) = lgf_3d_fs(&p23, p0);
[INFO] [stdout]      |          ^^ help: if this is intentional, prefix it with an underscore: `_g2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/bem/integ.rs:1793:9
[INFO] [stdout]      |
[INFO] [stdout] 1793 |     let mut l4_1 = skew_symmetric_from_vec(&l4_1_vec);
[INFO] [stdout]      |         ----^^^^
[INFO] [stdout]      |         |
[INFO] [stdout]      |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nonsing_elms`
[INFO] [stdout]     --> src/bem/integ.rs:1775:48
[INFO] [stdout]      |
[INFO] [stdout] 1775 | pub fn grad_3d_all_lhs(sing_elms :&Vec<usize>, nonsing_elms :&Vec<usize>, mint :usize,
[INFO] [stdout]      |                                                ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_nonsing_elms`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `f_p0`
[INFO] [stdout]     --> src/bem/integ.rs:1780:64
[INFO] [stdout]      |
[INFO] [stdout] 1780 |                        p0 :&Vector3<f64>, p0_n :&Vector3<f64>, f_p0 :f64, dfdn_p0 :f64) -> Matrix3<f64> {
[INFO] [stdout]      |                                                                ^^^^ help: if this is intentional, prefix it with an underscore: `_f_p0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dfdn_p0`
[INFO] [stdout]     --> src/bem/integ.rs:1780:75
[INFO] [stdout]      |
[INFO] [stdout] 1780 |                        p0 :&Vector3<f64>, p0_n :&Vector3<f64>, f_p0 :f64, dfdn_p0 :f64) -> Matrix3<f64> {
[INFO] [stdout]      |                                                                           ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_dfdn_p0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `split_axis_x`
[INFO] [stdout]   --> src/bem/bem_for_ode.rs:48:13
[INFO] [stdout]    |
[INFO] [stdout] 48 |         let split_axis_x = Vector3::new(1, 0, 0);
[INFO] [stdout]    |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_split_axis_x`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `split_axis_y`
[INFO] [stdout]   --> src/bem/bem_for_ode.rs:49:13
[INFO] [stdout]    |
[INFO] [stdout] 49 |         let split_axis_y = Vector3::new(0, 1, 0);
[INFO] [stdout]    |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_split_axis_y`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `split_axis_z`
[INFO] [stdout]   --> src/bem/bem_for_ode.rs:50:13
[INFO] [stdout]    |
[INFO] [stdout] 50 |         let split_axis_z = Vector3::new(0, 0, 1);
[INFO] [stdout]    |             ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_split_axis_z`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:470:17
[INFO] [stdout]     |
[INFO] [stdout] 470 |             let mut n_line  = if which_body == 1 {
[INFO] [stdout]     |                 ----^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:480:17
[INFO] [stdout]     |
[INFO] [stdout] 480 |             let mut sing_elms = if which_body == 1 {
[INFO] [stdout]     |                 ----^^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:492:17
[INFO] [stdout]     |
[INFO] [stdout] 492 |             let mut non_sing_elms = if which_body == 1 {
[INFO] [stdout]     |                 ----^^^^^^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:246:13
[INFO] [stdout]     |
[INFO] [stdout] 246 |         for mut i in &mut body2_elms_all {
[INFO] [stdout]     |             ----^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:247:17
[INFO] [stdout]     |
[INFO] [stdout] 247 |             for mut j in i {
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:248:21
[INFO] [stdout]     |
[INFO] [stdout] 248 |                 for mut k in j {
[INFO] [stdout]     |                     ----^
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:254:13
[INFO] [stdout]     |
[INFO] [stdout] 254 |         for mut i in &mut body2_lines {
[INFO] [stdout]     |             ----^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:255:17
[INFO] [stdout]     |
[INFO] [stdout] 255 |             for mut j in i {
[INFO] [stdout]     |                 ----^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:377:13
[INFO] [stdout]     |
[INFO] [stdout] 377 |         let mut linear_pressure1 = Vector3::new(0.0, 0.0, 0.0);
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:378:13
[INFO] [stdout]     |
[INFO] [stdout] 378 |         let mut angular_pressure1 = Vector3::new(0.0, 0.0, 0.0);
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:380:13
[INFO] [stdout]     |
[INFO] [stdout] 380 |         let mut linear_pressure2 = Vector3::new(0.0, 0.0, 0.0);
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:381:13
[INFO] [stdout]     |
[INFO] [stdout] 381 |         let mut angular_pressure2 = Vector3::new(0.0, 0.0, 0.0);
[INFO] [stdout]     |             ----^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `axis_index` is never read
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:459:18
[INFO] [stdout]     |
[INFO] [stdout] 459 | ...   let (mut axis_index, mut axis_direction) = (0_usize, 0_usize); //axis_index gives index of the axis. axis_direction = 0 if ne...
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `axis_direction` is never read
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:459:34
[INFO] [stdout]     |
[INFO] [stdout] 459 | ...   let (mut axis_index, mut axis_direction) = (0_usize, 0_usize); //axis_index gives index of the axis. axis_direction = 0 if ne...
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: maybe it is overwritten before being read?
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nelm1`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:163:14
[INFO] [stdout]     |
[INFO] [stdout] 163 |         let (nelm1, npts1, p1, n1,
[INFO] [stdout]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_nelm1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `npts1`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:163:21
[INFO] [stdout]     |
[INFO] [stdout] 163 |         let (nelm1, npts1, p1, n1,
[INFO] [stdout]     |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_npts1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p1`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:163:28
[INFO] [stdout]     |
[INFO] [stdout] 163 |         let (nelm1, npts1, p1, n1,
[INFO] [stdout]     |                            ^^ help: if this is intentional, prefix it with an underscore: `_p1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n1`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:163:32
[INFO] [stdout]     |
[INFO] [stdout] 163 |         let (nelm1, npts1, p1, n1,
[INFO] [stdout]     |                                ^^ help: if this is intentional, prefix it with an underscore: `_n1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nelm1`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:169:14
[INFO] [stdout]     |
[INFO] [stdout] 169 |         let (nelm1, npts1, p1, n1,
[INFO] [stdout]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_nelm1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `npts1`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:169:21
[INFO] [stdout]     |
[INFO] [stdout] 169 |         let (nelm1, npts1, p1, n1,
[INFO] [stdout]     |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_npts1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p1`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:169:28
[INFO] [stdout]     |
[INFO] [stdout] 169 |         let (nelm1, npts1, p1, n1,
[INFO] [stdout]     |                            ^^ help: if this is intentional, prefix it with an underscore: `_p1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n1`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:169:32
[INFO] [stdout]     |
[INFO] [stdout] 169 |         let (nelm1, npts1, p1, n1,
[INFO] [stdout]     |                                ^^ help: if this is intentional, prefix it with an underscore: `_n1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nelm2`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:209:14
[INFO] [stdout]     |
[INFO] [stdout] 209 |         let (nelm2, npts2, p2, n2,
[INFO] [stdout]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_nelm2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `npts2`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:209:21
[INFO] [stdout]     |
[INFO] [stdout] 209 |         let (nelm2, npts2, p2, n2,
[INFO] [stdout]     |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_npts2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p2`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:209:28
[INFO] [stdout]     |
[INFO] [stdout] 209 |         let (nelm2, npts2, p2, n2,
[INFO] [stdout]     |                            ^^ help: if this is intentional, prefix it with an underscore: `_p2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n2`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:209:32
[INFO] [stdout]     |
[INFO] [stdout] 209 |         let (nelm2, npts2, p2, n2,
[INFO] [stdout]     |                                ^^ help: if this is intentional, prefix it with an underscore: `_n2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nelm2`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:214:14
[INFO] [stdout]     |
[INFO] [stdout] 214 |         let (nelm2, npts2, p2, n2,
[INFO] [stdout]     |              ^^^^^ help: if this is intentional, prefix it with an underscore: `_nelm2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `npts2`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:214:21
[INFO] [stdout]     |
[INFO] [stdout] 214 |         let (nelm2, npts2, p2, n2,
[INFO] [stdout]     |                     ^^^^^ help: if this is intentional, prefix it with an underscore: `_npts2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `p2`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:214:28
[INFO] [stdout]     |
[INFO] [stdout] 214 |         let (nelm2, npts2, p2, n2,
[INFO] [stdout]     |                            ^^ help: if this is intentional, prefix it with an underscore: `_p2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n2`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:214:32
[INFO] [stdout]     |
[INFO] [stdout] 214 |         let (nelm2, npts2, p2, n2,
[INFO] [stdout]     |                                ^^ help: if this is intentional, prefix it with an underscore: `_n2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nelm`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:270:14
[INFO] [stdout]     |
[INFO] [stdout] 270 |         let (nelm, npts, p, n) = combiner(nelm1, nelm2, npts1, npts2, &p1, &p2, &n1, &n2);
[INFO] [stdout]     |              ^^^^ help: if this is intentional, prefix it with an underscore: `_nelm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `npts`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:270:20
[INFO] [stdout]     |
[INFO] [stdout] 270 |         let (nelm, npts, p, n) = combiner(nelm1, nelm2, npts1, npts2, &p1, &p2, &n1, &n2);
[INFO] [stdout]     |                    ^^^^ help: if this is intentional, prefix it with an underscore: `_npts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nelm`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:272:14
[INFO] [stdout]     |
[INFO] [stdout] 272 |         let (nelm, npts, n_xline, x_elms_pos, x_elms_neg) = combiner_splitter(nelm1, nelm2, npts1, npts2,
[INFO] [stdout]     |              ^^^^ help: if this is intentional, prefix it with an underscore: `_nelm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `npts`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:272:20
[INFO] [stdout]     |
[INFO] [stdout] 272 |         let (nelm, npts, n_xline, x_elms_pos, x_elms_neg) = combiner_splitter(nelm1, nelm2, npts1, npts2,
[INFO] [stdout]     |                    ^^^^ help: if this is intentional, prefix it with an underscore: `_npts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_xline`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:272:26
[INFO] [stdout]     |
[INFO] [stdout] 272 |         let (nelm, npts, n_xline, x_elms_pos, x_elms_neg) = combiner_splitter(nelm1, nelm2, npts1, npts2,
[INFO] [stdout]     |                          ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_xline`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x_elms_pos`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:272:35
[INFO] [stdout]     |
[INFO] [stdout] 272 |         let (nelm, npts, n_xline, x_elms_pos, x_elms_neg) = combiner_splitter(nelm1, nelm2, npts1, npts2,
[INFO] [stdout]     |                                   ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_x_elms_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `x_elms_neg`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:272:47
[INFO] [stdout]     |
[INFO] [stdout] 272 |         let (nelm, npts, n_xline, x_elms_pos, x_elms_neg) = combiner_splitter(nelm1, nelm2, npts1, npts2,
[INFO] [stdout]     |                                               ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_x_elms_neg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `nelm`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:277:14
[INFO] [stdout]     |
[INFO] [stdout] 277 |         let (nelm, npts, n_yline, y_elms_pos, y_elms_neg) = combiner_splitter(nelm1, nelm2, npts1, npts2,
[INFO] [stdout]     |              ^^^^ help: if this is intentional, prefix it with an underscore: `_nelm`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `npts`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:277:20
[INFO] [stdout]     |
[INFO] [stdout] 277 |         let (nelm, npts, n_yline, y_elms_pos, y_elms_neg) = combiner_splitter(nelm1, nelm2, npts1, npts2,
[INFO] [stdout]     |                    ^^^^ help: if this is intentional, prefix it with an underscore: `_npts`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_yline`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:277:26
[INFO] [stdout]     |
[INFO] [stdout] 277 |         let (nelm, npts, n_yline, y_elms_pos, y_elms_neg) = combiner_splitter(nelm1, nelm2, npts1, npts2,
[INFO] [stdout]     |                          ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_yline`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y_elms_pos`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:277:35
[INFO] [stdout]     |
[INFO] [stdout] 277 |         let (nelm, npts, n_yline, y_elms_pos, y_elms_neg) = combiner_splitter(nelm1, nelm2, npts1, npts2,
[INFO] [stdout]     |                                   ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_y_elms_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `y_elms_neg`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:277:47
[INFO] [stdout]     |
[INFO] [stdout] 277 |         let (nelm, npts, n_yline, y_elms_pos, y_elms_neg) = combiner_splitter(nelm1, nelm2, npts1, npts2,
[INFO] [stdout]     |                                               ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_y_elms_neg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_zline`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:282:26
[INFO] [stdout]     |
[INFO] [stdout] 282 |         let (nelm, npts, n_zline, z_elms_pos, z_elms_neg) = combiner_splitter(nelm1, nelm2, npts1, npts2,
[INFO] [stdout]     |                          ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_zline`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `z_elms_pos`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:282:35
[INFO] [stdout]     |
[INFO] [stdout] 282 |         let (nelm, npts, n_zline, z_elms_pos, z_elms_neg) = combiner_splitter(nelm1, nelm2, npts1, npts2,
[INFO] [stdout]     |                                   ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_z_elms_pos`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `z_elms_neg`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:282:47
[INFO] [stdout]     |
[INFO] [stdout] 282 |         let (nelm, npts, n_zline, z_elms_pos, z_elms_neg) = combiner_splitter(nelm1, nelm2, npts1, npts2,
[INFO] [stdout]     |                                               ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_z_elms_neg`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ks`
[INFO] [stdout]    --> src/bem/bem_for_ode.rs:383:13
[INFO] [stdout]     |
[INFO] [stdout] 383 |         let ks = (0..nelm).collect::<Vec<usize>>();
[INFO] [stdout]     |             ^^ help: if this is intentional, prefix it with an underscore: `_ks`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `num_stages`, `order`, `a`, `c`, and `d` are never read
[INFO] [stdout]   --> src/ode/butcher_tableau.rs:9:5
[INFO] [stdout]    |
[INFO] [stdout]  8 | pub(crate) struct Dopri54 {
[INFO] [stdout]    |                   ------- fields in this struct
[INFO] [stdout]  9 |     num_stages: usize,
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 10 |     order: i32,
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 11 |     a: Vec<Vec<f64>>,
[INFO] [stdout]    |     ^
[INFO] [stdout] 12 |     c: Vec<f64>,
[INFO] [stdout]    |     ^
[INFO] [stdout] 13 |     d: Vec<f64>,
[INFO] [stdout]    |     ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `a`, `c`, `d`, `num_stages`, and `order` are never used
[INFO] [stdout]   --> src/ode/butcher_tableau.rs:72:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | impl Dopri54 {
[INFO] [stdout]    | ------------ methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn a<T: SubsetOf<f64>>(&self, i: usize, j: usize) -> T {
[INFO] [stdout]    |            ^
[INFO] [stdout] ...
[INFO] [stdout] 77 |     pub fn c<T: SubsetOf<f64>>(&self, i: usize) -> T {
[INFO] [stdout]    |            ^
[INFO] [stdout] ...
[INFO] [stdout] 82 |     pub fn d<T: SubsetOf<f64>>(&self, i: usize) -> T {
[INFO] [stdout]    |            ^
[INFO] [stdout] ...
[INFO] [stdout] 92 |     pub fn num_stages(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 97 |     pub fn order(&self) -> i32 {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `num_stages` and `order` are never read
[INFO] [stdout]    --> src/ode/butcher_tableau.rs:104:5
[INFO] [stdout]     |
[INFO] [stdout] 103 | pub(crate) struct Dopri853 {
[INFO] [stdout]     |                   -------- fields in this struct
[INFO] [stdout] 104 |     num_stages: usize,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 105 |     order: i32,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `num_stages` and `order` are never used
[INFO] [stdout]    --> src/ode/butcher_tableau.rs:420:12
[INFO] [stdout]     |
[INFO] [stdout] 114 | impl Dopri853 {
[INFO] [stdout]     | ------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 420 |     pub fn num_stages(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 425 |     pub fn order(&self) -> i32 {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DMatrix`, `DVector`, `Matrix3`, and `UnitQuaternion`
[INFO] [stdout]  --> src/main.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 | use nalgebra::{DMatrix, DVector, Matrix3, Quaternion, UnitQuaternion, Vector3, Vector6};
[INFO] [stdout]   |                ^^^^^^^  ^^^^^^^  ^^^^^^^              ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `multi_ellip::bem::potentials::*`
[INFO] [stdout]   --> src/main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use multi_ellip::bem::potentials::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]   --> src/main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::time::Instant;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `indicatif::ParallelProgressIterator`
[INFO] [stdout]   --> src/main.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use indicatif::ParallelProgressIterator;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `plotters::prelude::LogScalable`
[INFO] [stdout]   --> src/main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use plotters::prelude::LogScalable;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `abc_vec`, `combiner`, `ellip_gridder`, `elm_geom`, `gauss_leg`, and `gauss_trgl`
[INFO] [stdout]   --> src/main.rs:16:30
[INFO] [stdout]    |
[INFO] [stdout] 16 | use multi_ellip::bem::geom::{abc_vec, combiner, ellip_gridder, elm_geom, gauss_leg, gauss_trgl};
[INFO] [stdout]    |                              ^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `multi_ellip::bem::integ::*`
[INFO] [stdout]   --> src/main.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use multi_ellip::bem::integ::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DMatrix`, `DVector`, `Matrix3`, and `UnitQuaternion`
[INFO] [stdout]  --> src/main.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 | use nalgebra::{DMatrix, DVector, Matrix3, Quaternion, UnitQuaternion, Vector3, Vector6};
[INFO] [stdout]   |                ^^^^^^^  ^^^^^^^  ^^^^^^^              ^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `multi_ellip::bem::potentials::*`
[INFO] [stdout]   --> src/main.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use multi_ellip::bem::potentials::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::time::Instant`
[INFO] [stdout]   --> src/main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use std::time::Instant;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `indicatif::ParallelProgressIterator`
[INFO] [stdout]   --> src/main.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use indicatif::ParallelProgressIterator;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `plotters::prelude::LogScalable`
[INFO] [stdout]   --> src/main.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use plotters::prelude::LogScalable;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `abc_vec`, `combiner`, `ellip_gridder`, `elm_geom`, `gauss_leg`, and `gauss_trgl`
[INFO] [stdout]   --> src/main.rs:16:30
[INFO] [stdout]    |
[INFO] [stdout] 16 | use multi_ellip::bem::geom::{abc_vec, combiner, ellip_gridder, elm_geom, gauss_leg, gauss_trgl};
[INFO] [stdout]    |                              ^^^^^^^  ^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `multi_ellip::bem::integ::*`
[INFO] [stdout]   --> src/main.rs:17:5
[INFO] [stdout]    |
[INFO] [stdout] 17 | use multi_ellip::bem::integ::*;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::iter`
[INFO] [stdout]   --> src/main.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use rayon::iter::*;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::iter`
[INFO] [stdout]   --> src/main.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use rayon::iter::*;
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ang_mom_q`
[INFO] [stdout]   --> src/main.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |     let ang_mom_q = Quaternion::from_imag(init_ang_mom);
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ang_mom_q`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `q0`
[INFO] [stdout]   --> src/main.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |     let q0 = Quaternion::from_real(0.0);
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_q0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dx`
[INFO] [stdout]   --> src/main.rs:98:9
[INFO] [stdout]    |
[INFO] [stdout] 98 |     let dx = (4.0 * PI) / npts_circ;
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_dx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ang_mom_q`
[INFO] [stdout]   --> src/main.rs:45:9
[INFO] [stdout]    |
[INFO] [stdout] 45 |     let ang_mom_q = Quaternion::from_imag(init_ang_mom);
[INFO] [stdout]    |         ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ang_mom_q`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `q0`
[INFO] [stdout]   --> src/main.rs:46:9
[INFO] [stdout]    |
[INFO] [stdout] 46 |     let q0 = Quaternion::from_real(0.0);
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_q0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `dx`
[INFO] [stdout]   --> src/main.rs:98:9
[INFO] [stdout]    |
[INFO] [stdout] 98 |     let dx = (4.0 * PI) / npts_circ;
[INFO] [stdout]    |         ^^ help: if this is intentional, prefix it with an underscore: `_dx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `comment`
[INFO] [stdout]    --> src/main.rs:222:5
[INFO] [stdout]     |
[INFO] [stdout] 222 |     comment: &str,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_comment`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `comment`
[INFO] [stdout]    --> src/main.rs:222:5
[INFO] [stdout]     |
[INFO] [stdout] 222 |     comment: &str,
[INFO] [stdout]     |     ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_comment`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 34.49s
[INFO] running `Command { std: "docker" "inspect" "df228bcc23ea6a18b8797a9592a137577fb0c754db9887022c484278913da679", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "df228bcc23ea6a18b8797a9592a137577fb0c754db9887022c484278913da679", kill_on_drop: false }`
[INFO] [stdout] df228bcc23ea6a18b8797a9592a137577fb0c754db9887022c484278913da679
