IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Dec 7, 2008, 3:31:01 PM (18 years ago)
Author:
eugene
Message:

big update from eam_branch_20081124 with updates to Opihi math

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/Ohana/src/opihi/lib.data/PlotVectors.c

    r13479 r20936  
    11# include "display.h"
    22
    3 int PlotVectorPair (int kapa, int Npts, float *xValues, float *yValues, Graphdata *graphmode) {
     3int PlotVectorSingle (int kapa, Vector *vec, char *mode) {
    44
    5   KapaPrepPlot (kapa, Npts, graphmode);
    6   KapaPlotVector (kapa, Npts, xValues, "x");
    7   KapaPlotVector (kapa, Npts, yValues, "y");
     5  int i, Npts;
     6  float *temp;
     7
     8  Npts = vec->Nelements;
     9  ALLOCATE (temp, float, Npts);
     10
     11  if (vec->type == OPIHI_FLT) {
     12    opihi_flt *value = vec->elements.Flt;
     13    for (i = 0; i < Npts; i++) {
     14      temp[i] = value[i];
     15    }
     16  } else {
     17    opihi_int *value = vec->elements.Int;
     18    for (i = 0; i < Npts; i++) {
     19      temp[i] = value[i];
     20    }
     21  }
     22  KapaPlotVector (kapa, Npts, temp, mode);
     23
     24  free (temp);
    825
    926  return (TRUE);
    1027}
    1128
    12 int PlotVectorTriplet (int kapa, int Npts, float *xValues, float *yValues, float *zValues, Graphdata *graphmode) {
     29int PlotVectorPair (int kapa, Vector *xVec, Vector *yVec, Graphdata *graphmode) {
    1330
    14   KapaPrepPlot   (kapa, Npts, graphmode);
    15   KapaPlotVector (kapa, Npts, xValues, "x");
    16   KapaPlotVector (kapa, Npts, yValues, "y");
    17   KapaPlotVector (kapa, Npts, zValues, "z");
     31  int i, Npts;
     32  float *temp;
     33
     34  if (xVec->Nelements != yVec->Nelements) return (FALSE);
     35  Npts = xVec->Nelements;
     36
     37  ALLOCATE (temp, float, Npts);
     38
     39  KapaPrepPlot (kapa, Npts, graphmode);
     40
     41  if (xVec->type == OPIHI_FLT) {
     42    opihi_flt *value = xVec->elements.Flt;
     43    for (i = 0; i < Npts; i++) {
     44      temp[i] = value[i];
     45    }
     46  } else {
     47    opihi_int *value = xVec->elements.Int;
     48    for (i = 0; i < Npts; i++) {
     49      temp[i] = value[i];
     50    }
     51  }
     52  KapaPlotVector (kapa, Npts, temp, "x");
     53
     54  if (yVec->type == OPIHI_FLT) {
     55    opihi_flt *value = yVec->elements.Flt;
     56    for (i = 0; i < Npts; i++) {
     57      temp[i] = value[i];
     58    }
     59  } else {
     60    opihi_int *value = yVec->elements.Int;
     61    for (i = 0; i < Npts; i++) {
     62      temp[i] = value[i];
     63    }
     64  }
     65  KapaPlotVector (kapa, Npts, temp, "y");
     66
     67  free (temp);
    1868
    1969  return (TRUE);
    2070}
     71
     72int PlotVectorTriplet (int kapa, Vector *xVec, Vector *yVec, Vector *zVec, Graphdata *graphmode) {
     73
     74  int i, Npts;
     75  float *temp;
     76
     77  if (xVec->Nelements != yVec->Nelements) return (FALSE);
     78  if (xVec->Nelements != zVec->Nelements) return (FALSE);
     79  Npts = xVec->Nelements;
     80
     81  ALLOCATE (temp, float, Npts);
     82
     83  KapaPrepPlot (kapa, Npts, graphmode);
     84
     85  if (xVec->type == OPIHI_FLT) {
     86    opihi_flt *value = xVec->elements.Flt;
     87    for (i = 0; i < Npts; i++) {
     88      temp[i] = value[i];
     89    }
     90  } else {
     91    opihi_int *value = xVec->elements.Int;
     92    for (i = 0; i < Npts; i++) {
     93      temp[i] = value[i];
     94    }
     95  }
     96  KapaPlotVector (kapa, Npts, temp, "x");
     97
     98  if (yVec->type == OPIHI_FLT) {
     99    opihi_flt *value = yVec->elements.Flt;
     100    for (i = 0; i < Npts; i++) {
     101      temp[i] = value[i];
     102    }
     103  } else {
     104    opihi_int *value = yVec->elements.Int;
     105    for (i = 0; i < Npts; i++) {
     106      temp[i] = value[i];
     107    }
     108  }
     109  KapaPlotVector (kapa, Npts, temp, "y");
     110
     111  if (zVec->type == OPIHI_FLT) {
     112    opihi_flt *value = zVec->elements.Flt;
     113    for (i = 0; i < Npts; i++) {
     114      temp[i] = value[i];
     115    }
     116  } else {
     117    opihi_int *value = zVec->elements.Int;
     118    for (i = 0; i < Npts; i++) {
     119      temp[i] = value[i];
     120    }
     121  }
     122  KapaPlotVector (kapa, Npts, temp, "z");
     123
     124  free (temp);
     125
     126  return (TRUE);
     127}
     128
     129int PlotVectorPairErrors (int kapa, Vector *xVec, Vector *yVec, Vector *dyVec, Graphdata *graphmode) {
     130
     131  int i, Npts;
     132  float *temp;
     133
     134  if (xVec->Nelements != yVec->Nelements) return (FALSE);
     135  if (xVec->Nelements != dyVec->Nelements) return (FALSE);
     136  Npts = xVec->Nelements;
     137
     138  ALLOCATE (temp, float, Npts);
     139
     140  KapaPrepPlot (kapa, Npts, graphmode);
     141
     142  if (xVec->type == OPIHI_FLT) {
     143    opihi_flt *value = xVec->elements.Flt;
     144    for (i = 0; i < Npts; i++) {
     145      temp[i] = value[i];
     146    }
     147  } else {
     148    opihi_int *value = xVec->elements.Int;
     149    for (i = 0; i < Npts; i++) {
     150      temp[i] = value[i];
     151    }
     152  }
     153  KapaPlotVector (kapa, Npts, temp, "x");
     154
     155  if (yVec->type == OPIHI_FLT) {
     156    opihi_flt *value = yVec->elements.Flt;
     157    for (i = 0; i < Npts; i++) {
     158      temp[i] = value[i];
     159    }
     160  } else {
     161    opihi_int *value = yVec->elements.Int;
     162    for (i = 0; i < Npts; i++) {
     163      temp[i] = value[i];
     164    }
     165  }
     166  KapaPlotVector (kapa, Npts, temp, "y");
     167
     168  if (dyVec->type == OPIHI_FLT) {
     169    opihi_flt *value = dyVec->elements.Flt;
     170    for (i = 0; i < Npts; i++) {
     171      temp[i] = value[i];
     172    }
     173  } else {
     174    opihi_int *value = dyVec->elements.Int;
     175    for (i = 0; i < Npts; i++) {
     176      temp[i] = value[i];
     177    }
     178  }
     179  KapaPlotVector (kapa, Npts, temp, "dym");
     180  KapaPlotVector (kapa, Npts, temp, "dyp");
     181
     182  free (temp);
     183
     184  return (TRUE);
     185}
     186
Note: See TracChangeset for help on using the changeset viewer.