Skip to content

Commit

Permalink
Merge pull request #288 from VirtualPlanetaryLaboratory/ConstXUV
Browse files Browse the repository at this point in the history
Const xuv
  • Loading branch information
RoryBarnes committed Apr 15, 2024
2 parents 6b5a94d + 91476d9 commit 95b0b1b
Show file tree
Hide file tree
Showing 14 changed files with 190 additions and 489 deletions.
3 changes: 3 additions & 0 deletions .github/workflows/tests-linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,9 @@ jobs:
files: junit/test-*.xml

- name: CodeCov
if: ${{ matrix.os }} == ubuntu-22.04 && ${{ matrix.python-version }} == '3.9'
uses: codecov/codecov-action@v4
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
with:
files: ./.coverage
3 changes: 2 additions & 1 deletion src/control.c
Original file line number Diff line number Diff line change
Expand Up @@ -1086,8 +1086,9 @@ void fsUnitsEnergy(UNITS *units, char cUnit[]) {
}

double fdUnitsEnergy(int iTime, int iMass, int iLength) {
return fdUnitsMass(iMass) * fdUnitsLength(iLength) * fdUnitsLength(iLength) /
double dConversion = fdUnitsMass(iMass) * fdUnitsLength(iLength) * fdUnitsLength(iLength) /
(fdUnitsTime(iTime) * fdUnitsTime(iTime));
return dConversion;
}

void fsUnitsPower(UNITS *units, char cUnit[]) {
Expand Down
32 changes: 25 additions & 7 deletions src/distrot.c
Original file line number Diff line number Diff line change
Expand Up @@ -1028,7 +1028,11 @@ void WriteOblTimeDistRot(BODY *body, CONTROL *control, OUTPUT *output,
dObldz * (*(update[iBody].padDZoblDtDistRot[iPert]));
}

if (dDeriv == 0) {
*dTmp = -1;
} else {
*dTmp = fabs(PI / dDeriv);
}

if (output->bDoNeg[iBody]) {
*dTmp *= output->dNeg;
Expand Down Expand Up @@ -1065,7 +1069,11 @@ void WritePrecATimeDistRot(BODY *body, CONTROL *control, OUTPUT *output,
dpAdy * (*(update[iBody].padDYoblDtDistRot[iPert]));
}

*dTmp = fabs(2 * PI / dDeriv);
if (dDeriv == 0) {
dDeriv = -1;
} else {
*dTmp = fabs(2 * PI / dDeriv);
}

if (output->bDoNeg[iBody]) {
*dTmp *= output->dNeg;
Expand Down Expand Up @@ -1146,8 +1154,6 @@ void WriteBodyDYoblDtDistRot(BODY *body, CONTROL *control, OUTPUT *output,

/* Ensure that we don't overwrite derivative */
dDeriv = 0;
dDeriv = pow(10, 300);
dDeriv *= dDeriv;
for (iPert = 0; iPert <= body[iBody].iGravPerts; iPert++) {
dDeriv += *(update[iBody].padDYoblDtDistRot[iPert]);
}
Expand Down Expand Up @@ -1198,7 +1204,11 @@ void WriteXoblTimeDistRot(BODY *body, CONTROL *control, OUTPUT *output,
dDeriv += *(update[iBody].padDXoblDtDistRot[iPert]);
}

*dTmp = fabs(1. / dDeriv);
if (dDeriv == 0) {
*dTmp = -1;
} else {
*dTmp = fabs(1. / dDeriv);
}

if (output->bDoNeg[iBody]) {
*dTmp *= output->dNeg;
Expand All @@ -1221,7 +1231,11 @@ void WriteYoblTimeDistRot(BODY *body, CONTROL *control, OUTPUT *output,
dDeriv += *(update[iBody].padDYoblDtDistRot[iPert]);
}

*dTmp = fabs(1. / dDeriv);
if (dDeriv == 0) {
*dTmp = -1;
} else {
*dTmp = fabs(1. / dDeriv);
}

if (output->bDoNeg[iBody]) {
*dTmp *= output->dNeg;
Expand All @@ -1244,8 +1258,12 @@ void WriteZoblTimeDistRot(BODY *body, CONTROL *control, OUTPUT *output,
dDeriv += *(update[iBody].padDZoblDtDistRot[iPert]);
}

*dTmp = fabs(1. / dDeriv);

if (dDeriv == 0) {
*dTmp = -1;
} else {
*dTmp = fabs(1. / dDeriv);
}

if (output->bDoNeg[iBody]) {
*dTmp *= output->dNeg;
strcpy(cUnit, output->cNeg);
Expand Down
3 changes: 2 additions & 1 deletion src/output.c
Original file line number Diff line number Diff line change
Expand Up @@ -676,7 +676,8 @@ void WriteLostEng(BODY *body, CONTROL *control, OUTPUT *output, SYSTEM *system,
*dTmp *= output->dNeg;
strcpy(cUnit, output->cNeg);
} else {
*dTmp /= fdUnitsEnergy(units->iTime, units->iMass, units->iLength);
double dConversion = fdUnitsEnergy(units->iTime, units->iMass, units->iLength);
*dTmp /= dConversion;
fsUnitsEnergy(units, cUnit);
}
}
Expand Down
2 changes: 2 additions & 0 deletions src/vplanet.c
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,8 @@ int main_impl(int argc, char *argv[]) {
// feenableexcept(FE_INVALID | FE_OVERFLOW);
_MM_SET_EXCEPTION_MASK(_MM_GET_EXCEPTION_MASK() & ~_MM_MASK_INVALID);
_MM_SET_EXCEPTION_MASK(_MM_GET_EXCEPTION_MASK() & ~_MM_MASK_OVERFLOW);
_MM_SET_EXCEPTION_MASK(_MM_GET_EXCEPTION_MASK() & ~_MM_MASK_DIV_ZERO);
//_MM_SET_EXCEPTION_MASK(_MM_GET_EXCEPTION_MASK() & ~_MM_MASK_UNDERFLOW);
fprintf(stderr, "INFO: Floating point trapping enabled.\n");
#else
fprintf(stderr,
Expand Down
13 changes: 2 additions & 11 deletions tests/Distorb/LL2/earth.in
Original file line number Diff line number Diff line change
@@ -1,19 +1,10 @@
sName Earth
saModules distorb distrot
saModules distorb
dMass 3.0018090452e-06
dRadius -1.
dRotPeriod -1
dObliquity 23.44 #no Moons yet in vplanet....
dSemi 1.00000321
dEcc 0.01671327
dInc 5e-5
dLongP 102.948601
dLongA 348.73936
bGRCorr 1
saOutputOrder Time Ecce Inc ArgP LongA Obliq PrecA -TotEn -TotAngMom
dDynEllip 3.28e-3
dPrecA 0.0
bForcePrecRate 1
bCalcDynEllip 0
#bOverrideMaxEcc 1
#dHaltMaxEcc 0.4
saOutputOrder Time Ecce Inc ArgP LongA -TotEn -TotAngMom
11 changes: 2 additions & 9 deletions tests/Distorb/LL2/mars.in
Original file line number Diff line number Diff line change
@@ -1,17 +1,10 @@
sName Mars
saModules distorb distrot
saModules distorb
dMass 3.2253768844e-07
dRadius -0.53202
dRotPeriod -1.0259233
dObliquity 25.189417 #obliquity, dynell from Armstrong 2004, Bouquillon & Souchay 1999
dSemi 1.52366290
dEcc 0.09341266
dInc 1.85061
dLongP 336.040919
dLongA 49.57854
bGRCorr 1
saOutputOrder Time Ecce Inc ArgP LongA Obliq PrecA PrecFNat
dDynEllip 5.363e-3
dPrecA 0.0
#bOverrideMaxEcc 1
#dHaltMaxEcc 0.4
saOutputOrder Time Ecce Inc ArgP LongA
Loading

0 comments on commit 95b0b1b

Please sign in to comment.