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

📄 dnrm2.c

📁 最著名最快的分子模拟软件
💻 C
字号:
#include <math.h>#include <types/simple.h>#include "gmx_blas.h"doubleF77_FUNC(dnrm2,DNRM2)(int  *     n__,                      double *    x,                      int    *    incx__){    int ix,max_ix;    double ssq,scale,absxi,t;        int n = *n__;    int incx = *incx__;        if(n<1 || incx<1)        return 0;    else if (n==1) {        t = x[0];        if(t>=0)            return t;        else             return -t;    }        scale = 0.0;    ssq   = 1.0;        max_ix = 1+(n-1)*(incx);    for(ix=1;ix<=max_ix;ix+=incx) {        t = x[ix-1];        if(fabs(t)>GMX_DOUBLE_MIN) {            absxi = (t>=0) ? t : (-t);            if(scale<absxi) {                t = scale/absxi;                t = t*t;                ssq = ssq*t + 1.0;                scale = absxi;            } else {                t = absxi/scale;                ssq += t*t;            }        }    }    return scale*sqrt(ssq);    } 

⌨️ 快捷键说明

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