//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void testRecoverOrginal() public virtual void testRecoverOrginal() { //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final com.opengamma.strata.math.impl.matrix.MatrixAlgebra algebra = getAlgebra(); MatrixAlgebra algebra = Algebra; //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final com.opengamma.strata.math.linearalgebra.DecompositionResult result = getSVD().apply(A); DecompositionResult result = SVD.apply(A); assertTrue(result is SVDecompositionResult); //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final SVDecompositionResult svd_result = (SVDecompositionResult) result; SVDecompositionResult svd_result = (SVDecompositionResult)result; //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final com.opengamma.strata.collect.array.DoubleMatrix u = svd_result.getU(); DoubleMatrix u = svd_result.U; //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final com.opengamma.strata.collect.array.DoubleMatrix w = com.opengamma.strata.collect.array.DoubleMatrix.diagonal(com.opengamma.strata.collect.array.DoubleArray.copyOf(svd_result.getSingularValues())); DoubleMatrix w = DoubleMatrix.diagonal(DoubleArray.copyOf(svd_result.SingularValues)); //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final com.opengamma.strata.collect.array.DoubleMatrix vt = svd_result.getVT(); DoubleMatrix vt = svd_result.VT; //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final com.opengamma.strata.collect.array.DoubleMatrix a = (com.opengamma.strata.collect.array.DoubleMatrix) algebra.multiply(algebra.multiply(u, w), vt); DoubleMatrix a = (DoubleMatrix)algebra.multiply(algebra.multiply(u, w), vt); checkEquals(A, a); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void testRecoverOrginal() public virtual void testRecoverOrginal() { //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final com.opengamma.strata.math.linearalgebra.DecompositionResult result = LU.apply(A); DecompositionResult result = LU.apply(A); assertTrue(result is LUDecompositionResult); //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final LUDecompositionResult lu = (LUDecompositionResult) result; LUDecompositionResult lu = (LUDecompositionResult)result; //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final com.opengamma.strata.collect.array.DoubleMatrix a = (com.opengamma.strata.collect.array.DoubleMatrix) ALGEBRA.multiply(lu.getL(), lu.getU()); DoubleMatrix a = (DoubleMatrix)ALGEBRA.multiply(lu.L, lu.U); checkEquals((DoubleMatrix)ALGEBRA.multiply(lu.P, A), a); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void testRecoverOrginal() public virtual void testRecoverOrginal() { //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final com.opengamma.strata.math.linearalgebra.DecompositionResult result = CH.apply(A); DecompositionResult result = CH.apply(A); assertTrue(result is CholeskyDecompositionResult); //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final CholeskyDecompositionResult ch = (CholeskyDecompositionResult) result; CholeskyDecompositionResult ch = (CholeskyDecompositionResult)result; //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final com.opengamma.strata.collect.array.DoubleMatrix a = (com.opengamma.strata.collect.array.DoubleMatrix) ALGEBRA.multiply(ch.getL(), ch.getLT()); DoubleMatrix a = (DoubleMatrix)ALGEBRA.multiply(ch.L, ch.LT); checkEquals(A, a); }
//------------------------------------------------------------------------- private double[] weights(double forward, double strike, double[] strikes, double timeToExpiry, double atmVol) { //JAVA TO C# CONVERTER NOTE: The following call to the 'RectangularArrays' helper class reproduces the rectangular array initialization that is automatic in Java: //ORIGINAL LINE: double[][] mat = new double[3][3]; double[][] mat = RectangularArrays.ReturnRectangularDoubleArray(3, 3); double[] vec = new double[3]; for (int i = 0; i < 3; ++i) { mat[0][i] = BlackFormulaRepository.vega(forward, strikes[i], timeToExpiry, atmVol); mat[1][i] = BlackFormulaRepository.vanna(forward, strikes[i], timeToExpiry, atmVol); mat[2][i] = BlackFormulaRepository.volga(forward, strikes[i], timeToExpiry, atmVol); } vec[0] = BlackFormulaRepository.vega(forward, strike, timeToExpiry, atmVol); vec[1] = BlackFormulaRepository.vanna(forward, strike, timeToExpiry, atmVol); vec[2] = BlackFormulaRepository.volga(forward, strike, timeToExpiry, atmVol); DecompositionResult res = SVD.apply(DoubleMatrix.ofUnsafe(mat)); return(res.solve(vec)); }
//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes: //ORIGINAL LINE: @Test public void testRecoverOrginal() public virtual void testRecoverOrginal() { //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final com.opengamma.strata.math.linearalgebra.DecompositionResult result = QR.apply(A); DecompositionResult result = QR.apply(A); assertTrue(result is QRDecompositionResult); //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final QRDecompositionResult qr = (QRDecompositionResult) result; QRDecompositionResult qr = (QRDecompositionResult)result; //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final com.opengamma.strata.collect.array.DoubleMatrix q = qr.getQ(); DoubleMatrix q = qr.Q; //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final com.opengamma.strata.collect.array.DoubleMatrix r = qr.getR(); DoubleMatrix r = qr.R; //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final com.opengamma.strata.collect.array.DoubleMatrix a = (com.opengamma.strata.collect.array.DoubleMatrix) ALGEBRA.multiply(q, r); DoubleMatrix a = (DoubleMatrix)ALGEBRA.multiply(q, r); checkEquals(A, a); }