示例#1
0
文件: getcpe.c 项目: kywe665/ECEn-324
/* Do dot product of two vectors, abstract version */
void dotproduct1(vec_ptr u, vec_ptr v, data_t *dest)
{
    long int i;
    *dest = 1.0;
    for (i = 0; i < vec_length(u); i++) {
	    data_t val1;
	    data_t val2;
	    get_vec_element(u, i, &val1);
	    get_vec_element(v, i, &val2);
	    *dest = *dest + val1 * val2;
    }
}
示例#2
0
/* Move call to vec_length out of loop */
void combine2(vec_ptr v, data_t *dest)
{
    long int i;
    long int length = vec_length(v);

    *dest = IDENT;
    for (i = 0; i < length; i++) {
	data_t val;
	get_vec_element(v, i, &val);
	*dest = *dest OP val;
    }
}
示例#3
0
/* Implementation with maximum use of data abstraction */
void combine1(vec_ptr v, data_t *dest)
{
    long int i;

    *dest = IDENT;
    for (i = 0; i < vec_length(v); i++) {
	data_t val;
	get_vec_element(v, i, &val);
	/* $begin combineline */
	*dest = *dest OP val;
	/* $end combineline */
    }
}