#include "mbconfig.h"
#include <stdlib.h>
#include <stdio.h>
#include <ctype.h>
#include <string.h>
Go to the source code of this file.
      
        
          | int get_line | ( | FILE * | fin, | 
        
          |  |  | char * | buf, | 
        
          |  |  | int | buf_size | 
        
          |  | ) |  |  | 
      
 
Definition at line 38 of file deriv.c.
References buf, and c.
Referenced by main().
   43    while ((c = fgetc(fin)) != 
'\n') {
 
   48       if (s >= 
buf+buf_size-1) {
 
static std::stack< cleanup * > c
static doublereal buf[BUFSIZE]
 
 
 
      
        
          | char* get_word | ( | char * | buf, | 
        
          |  |  | char ** | next | 
        
          |  | ) |  |  | 
      
 
Definition at line 57 of file deriv.c.
References buf.
Referenced by main().
   77    while (!isspace(*s)) {
 
static doublereal buf[BUFSIZE]
 
 
 
      
        
          | int main | ( | int | argn, | 
        
          |  |  | const char *const | argv[] | 
        
          |  | ) |  |  | 
      
 
Definition at line 91 of file deriv.c.
References buf, BUFSIZE, get_line(), and get_word().
  116    if (argn == 1 || argn > 3) {
 
  117       fprintf(stderr, 
"usage: %s <file> <dt>\n", argv[0]);
 
  119    } 
else if (argn == 2) {
 
  123       if (!strcmp(argv[1], 
"-")) {
 
  126          fin = fopen(argv[1], 
"r");
 
  128             fprintf(stderr, 
"%s: file <%s> doesn't exist\n", argv[0], argv[1]);
 
  137       fprintf(stderr, 
"%s: illegal dt = %f\n", argv[0], dt);
 
  143       fprintf(stderr, 
"%s: line 1 is longer that %d in file <%s>\n", 
 
  150       fprintf(stderr, 
"%s: unable to read first label in file <%s>\n",
 
  156    while ((s = 
get_word(next, &next))) {
 
  163          fprintf(stderr, 
"%s: line %d is longer that %d in file <%s>\n", 
 
  164                  argv[0], nrows+1, 
BUFSIZE, argv[1]);
 
  168       if (sscanf(buf, 
"%d", &icurr) < 1) {
 
  169          fprintf(stderr, 
"%s: unable to read label %d in file <%s>\n",
 
  170                  argv[0], nrows+1, argv[1]);
 
  173       if (icurr == ifirst) {
 
  179    pd = (
double*)malloc(
sizeof(
double)*(ncols*nrows*3));
 
  180    pdv = (
double**)malloc(
sizeof(
double*)*(nrows*3));
 
  181    pi = (
int*)malloc(
sizeof(
int)*nrows);
 
  183    if (pd == NULL || pdv == NULL) {
 
  184       fprintf(stderr, 
"%s: out of memory?\n", argv[0]);
 
  188    for (i = 3*nrows; i-- > 0; ) {
 
  196    for (i = 0; i < nrows; i++) {
 
  201       for (j = 0; j < ncols; j++) {
 
  203          pdv[i1*nrows+i][j] = atof(s);
 
  207    for (i = 0; i < nrows; i++) {      
 
  211       printf(
"%8d", pi[i]);
 
  212       for (j = 0; j < ncols; j++) {
 
  214          pdv[i2*nrows+i][j] = atof(s);
 
  215          printf(
"%16.8e", (pdv[i2*nrows+i][j]-pdv[i1*nrows+i][j])/dt);
 
  221       for (i = 0; i < nrows; i++) {      
 
  227          printf(
"%8d", pi[i]);
 
  228          for (j = 0; j < ncols; j++) {
 
  230             pdv[i3*nrows+i][j] = atof(s);
 
  231             printf(
"%16.8e", (pdv[i3*nrows+i][j]-pdv[i1*nrows+i][j])/dt2);
 
  242    for (i = 0; i < nrows; i++) {
 
  243       printf(
"%8d", pi[i]);
 
  244       for (j = 0; j < ncols; j++) {     
 
  245          printf(
"%16.8e", (pdv[i2*nrows+i][j]-pdv[i1*nrows+i][j])/dt);
 
char * get_word(char *buf, char **next)
int get_line(FILE *fin, char *buf, int buf_size)
static doublereal buf[BUFSIZE]