Examples of GVector2d


Examples of gaia.cu1.tools.numeric.algebra.GVector2d

      double[] vector;

      vector = new double[valueDimension];
      for ( int i=0; i < refTransits.size(); i++ ) {
       
        GVector2d fieldAngles = model.getFieldAngles(refTransits.get(i));
       
        if ( useAc ) {
          vector[2*i]   = fieldAngles.getX();
          vector[2*i+1] = fieldAngles.getY();
        } else {
          vector[i]   = fieldAngles.getX();
        }
       
      }
     
      // Save evaluation
View Full Code Here

Examples of gaia.cu1.tools.numeric.algebra.GVector2d

        vector[ 2 * i     ] = transitInfo[i].getCentroidPosAl();
        vector[ 2 * i + 1 ] = transitInfo[i].getCentroidPosAc();
       
        // Some debugging output checking conversion functions
        double scanAngle = transitInfo[i].getScanPosAngle()*GaiaParam.Nature.DEGREE_RADIAN; // NOTE: Documentation wrong, scan angle is returned in deg
        GVector2d lsc = new GVector2d(transitInfo[i].getCentroidPosAl(), transitInfo[i].getCentroidPosAc());
        GVector2d lpc = Conversion.fromLSCtoLPC ( lsc, scanAngle );
        //StellarAstrometry ast = ((StellarAstrometry) star.getAstrometry());
        //GVector3d pos = Conversion.fromLSCtoCoMRS ( lsc, ast.getAlpha(), ast.getDelta(), scanAngle );
        GaiaSimuTime gst = new GaiaSimuTime(transitInfo[i].getObsTime(), SimuTimeScale.UM_TIME);
       
        //GVector3d comrsRef = ast.getCoMRSPosition(gst, false);
        //GVector2d lpcRef = Conversion.fromCoMRStoLPC(comrsRef, ast.getAlpha(), ast.getDelta());
       
        GVector2d lscZero = new GVector2d(transitInfoZero[i].getCentroidPosAl(), transitInfoZero[i].getCentroidPosAc());
        GVector2d lpcZero = Conversion.fromLSCtoLPC(lscZero, transitInfoZero[i].getScanPosAngle()*GaiaParam.Nature.DEGREE_RADIAN);
       
        System.out.printf("%20.14e %20.14e %20.14e %20.14e %20.14e %20.14e %20.14e %20.14e %20.14e %20.14e\n",
            gst.getJD(),
            lpc.getX(), lpc.getY(),
            lpcZero.getX(), lpcZero.getY(),
            lsc.getX(), lsc.getY(),
            lscZero.getX(), lscZero.getY(),
            scanAngle);
        //*/
      }
 
View Full Code Here

Examples of gaia.cu1.tools.numeric.algebra.GVector2d

      boolean relativity = false;
     
      // Get observational data of transit
      GaiaSimuTime time = tr.getTime();
      double scanAngle = tr.getScanAngle();
      GVector2d lsc = tr.getLSC();
      GVector2d lscError = tr.getLSCError();
     
      // Convert to LPC
      GVector2d lpc = tr.getLPC();
      GVector2d lpcError = tr.getLPCError();
     
      // Calculate reference position
      GVector2d lpcRef = Conversion.fromCoMRStoLPC ( astroRef.getCoMRSPosition ( time, relativity ), astroRef.getAlpha(), astroRef.getDelta() );
      GVector2d lscRef = Conversion.fromLPCtoLSC(lpcRef, scanAngle);
     
      String outString = String.format("%20.12e %20.12e %20.12e %20.12e %20.12e %20.12e %20.12e %20.12e %20.12e %20.12e %20.12e %20.12e %20.12e %20.12e\n",
          lpc.getX(), lpc.getY(),
          lpcError.getX(), lpcError.getY(),
          lpcRef.getX(), lpcRef.getY(),
          lsc.getX(), lsc.getY(),
          lscError.getX(), lscError.getY(),
          lscRef.getX(), lscRef.getY(),
          scanAngle, time.getJD());
     
      out.write(outString);
     
    }
View Full Code Here

Examples of gaia.cu1.tools.numeric.algebra.GVector2d

    synchronized(gaia) {
      scanAngle = gaia.getAttitude().getScanAngle(comrs, time);
    }
   
    StellarAstrometry astro = (refAstro != null)? refAstro: astrometry;
    GVector2d lsc = Conversion.fromCoMRStoLSC(comrs, astro.getAlpha(), astro.getDelta(), scanAngle);
   
    // Return field angles
    return lsc;
   
  }
View Full Code Here

Examples of gaia.cu1.tools.numeric.algebra.GVector2d

    ObservationalDataSet obsData = new ObservationalDataSet();
   
    for(Transit tr: model.getFilteredTransits()) {
     
      // Obtain field angles
      GVector2d fieldAngles = model.getFieldAngles(tr);
      if(!useAc)
        fieldAngles = new GVector2d(fieldAngles.getX(), 0.0);
     
      // Add noise if boolean switch is true
      GVector2d errors = new GVector2d ( sigTraAl, sigTraAc );
      if(addNoise) {
        GVector2d randomOffset = new GVector2d(sigTraAl * random.nextGaussian(), useAc? sigTraAc * random.nextGaussian() : 0);
        fieldAngles.add(randomOffset);
      }
     
      // Calculate scanning angle
      double scanAngle;
View Full Code Here

Examples of gaia.cu1.tools.numeric.algebra.GVector2d

      boolean relativity = false;
      GaiaSimuTime gst = new GaiaSimuTime(new GaiaTime());
      gst.setJD(timeJD);
      GVector3d comrs = model.getStar().getAstrometry().getCoMRSPosition(gst, relativity);
      GVector3d comrsRef = model.getAstrometry().getCoMRSPosition(gst, relativity);
      GVector2d lpc = Conversion.fromCoMRStoLPC(comrs, comrsRef.getLongitude(), comrsRef.getLatitude());
     
      orbit.addTransit ( new TransitData ( lpc, new GVector2d(), true, gst, 0.0, false ) );
     
    }
   
    // Return the orbit
    return orbit;
View Full Code Here

Examples of gaia.cu1.tools.numeric.algebra.GVector2d

  private void plotTrajectory ( Writer out ) throws IOException, SimuException {
   
    for ( TransitData tr: getTransits() ) {
     
      double timeJD = tr.getTime().getJD();
      GVector2d lpc = tr.getLPC();
     
      // Assemble output string
      String str = String.format("%20.13e %20.13e %20.13e\n",
          timeJD,
          lpc.getX(), lpc.getY());
     
      // Write to writer
      out.write ( str );
     
    }
View Full Code Here

Examples of gaia.cu1.tools.numeric.algebra.GVector2d

    // Calculate local celestial coordinates via gnonomic projection with reference triad (GAIA-LL-061 eq. 2)
    GVector3d[] triad = getReferenceTriad(refAlpha0, refDelta0);
    double  a = triad[0].dot(comrs) / triad[2].dot(comrs) * GaiaParam.Nature.RADIAN_MILLIARCSECOND,
        d = triad[1].dot(comrs) / triad[2].dot(comrs) * GaiaParam.Nature.RADIAN_MILLIARCSECOND;
   
    return new GVector2d(a,d);
   
  }
View Full Code Here

Examples of gaia.cu1.tools.numeric.algebra.GVector2d

   
    // Get reference triad
    GVector3d[] triad = getReferenceTriad(refAlpha0, refDelta0);
   
    // Perform inverse transformation to CoMRS coordinates using the triad
    GVector2d lpcRad = GVector2d.scale(GaiaParam.Nature.MILLIARCSECOND_RADIAN, lpc);
   
    GVector3d pos = new GVector3d(triad[2]);
    pos.add(GVector3d.scale(lpcRad.getX(), triad[0]));
    pos.add(GVector3d.scale(lpcRad.getY(), triad[1]));
    pos.scale(1/Math.sqrt(1+lpcRad.normSquared()));
   
    return pos;
   
  }
View Full Code Here

Examples of gaia.cu1.tools.numeric.algebra.GVector2d

   
    // Transform to local plane coordinates
    double st = Math.sin(scanAngle);
    double ct = Math.cos(scanAngle);
   
    return new GVector2d( lsc.getX()*st - lsc.getY()*ct, lsc.getX()*ct + lsc.getY()*st );
   
  }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.