Python Forum

Full Version: norm
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
I am writing a program that takes a vector as parameter and returns the corresponding normalized vector.
The first part of the program attempts this task manually (without the function 'norm') and the second part is with the 'norm' function.
I have written them both and the program runs but I cannot understand why I get different outcomes.
I get 1.06 in the fist part and 3.74 in the second.
why?
(both parts are separated by #------------------------------------)
import numpy as np
from numpy import array
from scipy.linalg import norm

"""
V=[1,2,3]

n_vec=sqrt(V[0]**2+V[1]**2+V[2]**3)

    
def v_vector(V):
    return ((V[0]/n_vec)+(V[1]/n_vec)+(V[2]/n_vec))

print(v_vector(V))
"""
#-----------------------------------------------------------


V=[1,2,3]

def v_vector(V):
    return (linalg.norm(V))

print(v_vector(V))

I solved this issue myself, but I am not sure how to remove this post.
So what was the solution?
the second step is actually correct but incomplete as it merely calculated the norm instead of the whole unit vector.