Skip to main content
. 2020 Jun 22;20(12):3534. doi: 10.3390/s20123534
Algorithm 1 Joint axis estimation
Require: Data DN={yωN,yaN}, initial estimate x^(0), tolerance Vtol, residual weights wω and wa.
  • 1:

    fori{1,2}do

  • 2:

        k0.                      ▹ Begin Gauss–Newton.

  • 3:

        ΔVVtol.

  • 4:

        V(0)V(x^(0)).                 ▹V(x) defined by (23).

  • 5:

        while ΔVVtol do

  • 6:

            Compute the Jacobian J(x^(k)) and the residuals e(x^(k)) according to (31) and (32).

  • 7:

            Δx(k)J(x^(k))J(x^(k))1J(x^(k))e(x^(k)).

  • 8:

            Obtain step length α using backtracking line search.

  • 9:

            x^(k+1)x^(k)αΔx(k).

  • 10:

            kk+1.

  • 11:

            V(k)V(x^(k)).

  • 12:

            ΔV|V(k1)V(k)|.

  • 13:

        end while

  • 14:

        x^x^(k).                     ▹ End Gauss–Newton.

  • 15:

        x^(i)=θ^1(i)ϕ^1(i)θ^2(i)ϕ^2(i)x^.

  • 16:

        x^(0)θ^1(i)ϕ^1(i)θ^2(i)ϕ^2(i)+π.        ▹ Initialize at j^2.

  • 17:

    end for

  • 18:

    x^arg minx{x^(1),x^(2)}V(x).               ▹Correct sign pairing.

  • 19:

    returnj(x^).