def calc_arr_dot( u,v ) : if ( len(u) != len(v) ) : raise TypeError( 'Unequal lengths.' ) return fsum([ x[0]*x[1] for x in zip(u,v) ])