void show_stats_t(int y, int x, char *header, stats_t *data, char abbreviate) { if (data -> valid) { char *cur_str = format_value(data -> cur, 6, 2, abbreviate); char *min_str = format_value(data -> min, 6, 2, abbreviate); char *avg_str = format_value(data -> avg / (double)data -> n, 6, 2, abbreviate); char *max_str = format_value(data -> max, 6, 2, abbreviate); char *sd_str = format_value(calc_sd(data), 6, 2, abbreviate); myprintloc(w_stats, y, x, "%s: %s %s %s %s %s", header, data -> cur_valid ? cur_str : gettext(" n/a"), min_str, avg_str, max_str, sd_str); free(sd_str); free(max_str); free(avg_str); free(min_str); free(cur_str); } else { myprintloc(w_stats, y, x, gettext("%s: n/a"), header); } }
int main(void) { short buf[N]; float sd1, sd2; adc_open(2*N); printf("Starting!\n"); while(1) { while(adc1_read(buf, N) == -1); sd1 = calc_sd(buf, N); while(adc2_read(buf, N) == -1); sd2 = calc_sd(buf, N); printf("adc1: %5.1f adc2: %5.1f\n", (double)sd1, (double)sd2); } }
var sd(const Eigen::Matrix<var,R,C>& m) { stan::math::check_nonzero_size("sd", "m", m); if (m.size() == 1) return 0; return calc_sd(m.size(), &m(0)); }
/** * Return the sample standard deviation of the specified standard * vector. Raise domain error if size is not greater than zero. * * @param[in] v a vector * @return sample standard deviation of specified vector */ var sd(const std::vector<var>& v) { stan::math::check_nonzero_size("sd", "v", v); if (v.size() == 1) return 0; return calc_sd(v.size(), &v[0]); }