Commit 68c5520b authored by Alexander Lapshin's avatar Alexander Lapshin

.

Merge branch 'master' of https://gitlab.ancprotek.ru/alapshin/common
parents a44bef54 b240e007
......@@ -19,7 +19,7 @@
//-----------------------------------------------------------------------------
OpticDelayMeasurement::OpticDelayMeasurement() : OpticMeasurement()
{
TimePrec = 0.01e-3; // По умолчанию назначем точность определения времени
TimePrec = 0.01e-4; // По умолчанию назначем точность определения времени
// распространения сигнала равной одной сотой секунды
}
......
......@@ -2,14 +2,22 @@
#include <utility>
#include "XMLFunctions.h"
PropInfoBase::PropInfoBase(std::string lightModel, EarthModel earthModel, AtmModel atmModel, const bool sun, const bool moon, const int type)
PropInfoBase::PropInfoBase(
std::string lightModel,
EarthModel earthModel,
AtmModel atmModel,
const bool sun,
const bool moon,
const bool prec_itrf,
const int type)
:
m_atmModel(std::move(atmModel)),
m_earthModel(std::move(earthModel)),
m_lightModel(std::move(lightModel)),
m_sun(sun),
m_moon(moon),
m_type(type)
m_type(type),
m_prec_itrf(prec_itrf)
{
}
......@@ -37,6 +45,9 @@ bool PropInfoBase::Load(myXML::Contain* parent)
LoadXML(con, "AtmModel", m_atmModel, false);
LoadXML(con, "Id", m_id, false, &idloaded);
m_prec_itrf = false;
LoadXML(con, "prec_itrf", m_prec_itrf, false);
return true;
}
......@@ -58,6 +69,9 @@ void PropInfoBase::load(const jsonval& parent)
loadjson(parent, "light", m_lightModel);
loadjson(parent, "earth", m_earthModel);
loadjson(parent, "atm", m_atmModel, false);
m_prec_itrf = false;
loadjson(parent, "prec_itrf", m_prec_itrf, false);
}
std::string PropInfoBase::GetAsXML() const
......@@ -73,6 +87,7 @@ std::string PropInfoBase::GetAsXML() const
PutValue(outs, "Sun", m_sun);
PutValue(outs, "Moon", m_moon);
PutValue(outs, "LightModel", m_lightModel);
PutValue(outs, "prec_itrf", m_prec_itrf);
outs << "<EarthModel>";
PutValue(outs, "Model", m_earthModel.GetModel());
......
......@@ -21,13 +21,21 @@ public:
PropInfoBase()
{
};
PropInfoBase(std::string lightModel, EarthModel earthModel, AtmModel atmModel, bool sun, bool moon, int type);
PropInfoBase(
std::string lightModel,
EarthModel earthModel,
AtmModel atmModel,
const bool sun,
const bool moon,
const bool prec_itrf,
const int type);
bool Load(myXML::Contain* parent);
void load(const jsonval& parent);
bool IsSun() const { return m_sun; }
bool IsMoon() const { return m_moon; }
int GetType() const { return m_type; }
bool is_prec_itrf() const { return m_prec_itrf; }
const AtmModel& GetAtmModel() const { return m_atmModel; }
const EarthModel& GetEarthModel() const { return m_earthModel; }
std::string GetLightModel() const { return m_lightModel; }
......@@ -35,7 +43,7 @@ public:
void ToXml(std::ostream& outs) const;
private:
static std::string TypeConvert(int value);
static std::string TypeConvert(int value) ;
static int TypeConvert(const std::string& value);
AtmModel m_atmModel;
......@@ -45,6 +53,7 @@ private:
bool m_moon;
int m_type;
int m_id;
bool m_prec_itrf {false};
};
typedef std::map<int, PropInfoBase> PropInfoBases;
......
......@@ -28,7 +28,7 @@ static double get_step(const SInitOrbit& orbit)
{
const double period = orbit.GetKeplerData().GetPeriod() * 1000 / 60;
const double ecc = orbit.GetKeplerData().GetEccentricity();
return get_step(period, ecc);
return get_step(period, ecc) / 3;
}
XInterpolator::XInterpolator() = default;
......@@ -198,7 +198,7 @@ Vect6 XInterpolator::get_pos(const TimeJD& date, const bool tks) const
if (ircode != 0) {
throw Exp() << "interpolation fail\n";
}
if (!tks) {
return {
outvec[0],
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment