public void calculando_a_magnitude_de_um_vetor_5d() { var vetor = new[] { 1.0, 2.0, 3.0, 4.0, 5.0 }; var magnitude = vetor.Magnitude(); magnitude.Should().Be(Math.Sqrt(55.0)); }
public void calculando_o_angulo_entre_dois_vetores_4d() { var vetor1 = new[] { 1.0, 2.0, 3.0, 4.0 }; var vetor2 = new[] { 2.0, 3.0, 1.0, 5.0 }; var angulo = vetor1.AnguloAte(vetor2); var produto = vetor1.ProdutoCom(vetor2); var magnitude = vetor1.Magnitude() * vetor2.Magnitude(); angulo.Should().Be(Math.Acos(produto / magnitude)); }
public void normalizando_um_vetor() { var vetor = new[] { 8.9, 1.0, 10.3, 5.6, 7.02 }; var vetorNormalizado = vetor.Normalizado(); var magnitudeDoVetor = vetor.Magnitude(); var vetorNormalizadoEsperado = new double[vetor.Length]; for (var i = 0; i < vetorNormalizadoEsperado.Length; i++) vetorNormalizadoEsperado[i] = vetor[i] / magnitudeDoVetor; vetorNormalizado.Should().ContainInOrder(vetorNormalizadoEsperado); }