001    /**
002     * Sequential Vector Scalar Multiplication. 
003     * @author Heinz Kredel.
004     */
005    
006    
007    public class SeqVSMult implements VSMInf {
008    
009    /**
010     * Computes the scalar multiplication of two vectors.
011     * @param A Vector.
012     * @param B Vector.
013     */
014        public double multiply(double[] A, double[] B) {
015          double c = 0.0;
016          for (int i=0; i < Math.min(A.length,B.length); i++) {
017              c += A[i] * B[i];
018          }
019          return c;
020        }
021    
022    /**
023     * Computes the norm of a vector.
024     * @param A Vector.
025     */
026        public double norm(double[] A) {
027          double c = 0.0;
028          for (int i=0; i < A.length; i++) {
029              c += A[i] * A[i];
030          }
031          return Math.sqrt(c);
032        }
033    
034    }