Commit 2e849e31 authored by Philipp Schäfer's avatar Philipp Schäfer
Browse files

ART - Tests

- added Eigenray Test with source at ground level
parent 32c030be
......@@ -108,6 +108,37 @@ void TestReceiverNearGroundSourceAzimuth(const CStratifiedAtmosphere& atmosphere
runTestReceiverNearGround(atmosphere, theta, sourceAzimuth, atmosphereSuffix);
}
void TestSourceAtGround(const CStratifiedAtmosphere& atmosphere, const string& atmosphereSuffix)
{
VistaVector3D sourcePosition = VistaVector3D(0, 0, 0);
VistaVector3D receiverPosition = VistaVector3D(6500, 0, 1.8);
const string filename = "SourceAtGround" + atmosphereSuffix;
//runTest(atmosphere, sourcePosition, receiverPosition, filename);
EigenraySearch::CEngine engine;
engine.eigenraySettings.rayAdaptation.abort.maxNAdaptations = 30;
engine.eigenraySettings.rayAdaptation.abort.minAngleResolutionDeg = 0.0001;
engine.eigenraySettings.rayAdaptation.accuracy.maxReceiverRadius = 1;
engine.eigenraySettings.rayAdaptation.accuracy.maxSourceReceiverAngle = 1;
engine.eigenraySettings.rayAdaptation.accuracy.maxAngleForGeomSpreading = 0.01;
engine.eigenraySettings.rayAdaptation.advancedRayZooming.bActive = false;
//engine.eigenraySettings.rayAdaptation.advancedRayZooming.threshold = 1.0;
engine.eigenraySettings.rayTracing.bAbortOnReceiverDistIncrease = false;
engine.eigenraySettings.rayTracing.maxReflectionOrder = 1;
engine.eigenraySettings.rayTracing.maxTime = 30;
cout << filename << ":" << endl;
cout << "Starting Simulation-Engine..." << endl;
std::vector<std::shared_ptr<CRay>> eigenrays = engine.Run(atmosphere, sourcePosition, receiverPosition);
}
CStratifiedAtmosphere GetHomogeneousAtmosphere()
{
auto humidProfile = std::make_shared<HumidityProfiles::CConstant>(50);
......@@ -145,6 +176,8 @@ int main(int iNumInArgs, char* pcInArgs[])
const CStratifiedAtmosphere homAtmosphere = GetHomogeneousAtmosphere();
const CStratifiedAtmosphere inhomAtmosphere = GetInhomogeneousAtmosphere();
TestSourceAtGround(inhomAtmosphere, "Inhomogeneous");
TestReceiverNearGroundSourceElevation(homAtmosphere, "Homogeneous");
TestReceiverNearGroundSourceElevation(inhomAtmosphere, "Inhomogeneous");
TestReceiverNearGroundSourceAzimuth(inhomAtmosphere, "Inhomogeneous");
......
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