⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 stats.c

📁 MPICH是MPI的重要研究,提供了一系列的接口函数,为并行计算的实现提供了编程环境.
💻 C
字号:
/*   Simple stats stuff   Ed Karrels   Argonne National Laboratory*/#if !defined(HAVE_STDLIB_H)#include <stdlib.h>#else#if HAVE_STDLIB_H#include <stdlib.h>#endif#endif#include <stdio.h>#include <math.h>#include "stats.h"#ifdef NEEDS_STDLIB_PROTOTYPES#include "protofix.h"#endifstatData *Stats_Create() {  statData *stats;  stats = (statData*)malloc( sizeof( statData ) );  if (!stats) {    fprintf( stderr, "%s:%d Out of memory initializing stats\n",	     __FILE__, __LINE__ );    return 0;  }  stats->sum = 0;  stats->sum_sq = 0;  stats->n = 0;  return stats;}  int Stats_Add( stats, x )statData *stats;double x;{  if (!stats->n) {    stats->max = stats->min = x;  } else {    if (x < stats->min) {      stats->min = x;    } else if (x > stats->max) {      stats->max = x;    }  }  stats->sum += x;  stats->sum_sq += x*x;  return ++stats->n;}int Stats_AddArray( stats, nums, n )statData *stats;double *nums;int n;{  if (!stats->n) {    stats->max = stats->min = *nums;  }  stats->n += n;  for (; n>0; n--,nums++) {    if (*nums < stats->min) {      stats->min = *nums;    } else if (*nums > stats->max) {      stats->max = *nums;    }    stats->sum += *nums;    stats->sum_sq += *nums * *nums;  }  return stats->n;}int Stats_N( stats )statData *stats;{  return stats->n;}double Stats_Sum( stats )statData *stats;{  return stats->sum;}double Stats_Max( stats )statData *stats;{  return stats->max;}double Stats_Min( stats )statData *stats;{  return stats->min;}double Stats_Av( stats )statData *stats;{  if (!stats->n) return 0;  return stats->sum / stats->n;}double Stats_StdDev( stats )statData *stats;{  double av;  if (!stats->n) return 0;  av = stats->sum / stats->n;  return sqrt( (stats->sum_sq - 2 * stats->sum * av + stats->n * av * av ) /		stats->n );}int Stats_Reset( stats )statData *stats;{  stats->sum = 0;  stats->sum_sq = 0;  stats->n = 0;  return 0;}int Stats_Close( stats )statData *stats;{  free( (void*)stats );  return 0;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -