[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lmi-commits] [5316] Improve documentation, describing some planned chan
From: |
Greg Chicares |
Subject: |
[lmi-commits] [5316] Improve documentation, describing some planned changes |
Date: |
Tue, 29 Nov 2011 15:11:21 +0000 |
Revision: 5316
http://svn.sv.gnu.org/viewvc/?view=rev&root=lmi&revision=5316
Author: chicares
Date: 2011-11-29 15:11:20 +0000 (Tue, 29 Nov 2011)
Log Message:
-----------
Improve documentation, describing some planned changes
Modified Paths:
--------------
lmi/trunk/ihs_acctval.cpp
Modified: lmi/trunk/ihs_acctval.cpp
===================================================================
--- lmi/trunk/ihs_acctval.cpp 2011-11-29 12:07:48 UTC (rev 5315)
+++ lmi/trunk/ihs_acctval.cpp 2011-11-29 15:11:20 UTC (rev 5316)
@@ -451,6 +451,14 @@
}
}
+// The following two comment blocks will soon be expunged.
+// - Irc7702_ and Irc7702A_ are appropriately initialized together
+// here, soon after PerformSpecAmtStrategy() is called.
+// - GLP and GSP seem to be correct when specamt is determined by a
+// strategy or a solve.
+// - Perhaps the 7702A class should have accessors like RoundedGLP();
+// that would better be noted in that class.
+
// TODO ?? We need to reconsider where the Irc7702 object gets created.
// Perhaps it should be when initial DB is first known? No, needed for
// solves. Then maybe we only need to move the call to Initialize7702?
@@ -957,6 +965,17 @@
ActualSpecAmt = InvariantValues().SpecAmt[Year];
TermSpecAmt = InvariantValues().TermSpecAmt[Year];
+ // Target premium is annual only. Using a different mode seems
+ // conceivable, but if the ee and er both pay, and on different
+ // modes, then it would be unclear which mode to choose.
+ //
+ // SOMEDAY !! DATABASE !! Add code to recalculate minimum and
+ // target premiums as needed--e.g., after specamt increases,
+ // specamt decreases, withdrawals, and DBO changes--and database
+ // rules to govern which such events trigger recalculation. Until
+ // that's done, such changes affect these premiums only at the
+ // next anniversary. Minimum no-lapse premium is likely to require
+ // recalculation even if target is set immutably at issue.
int target_year = Year;
if(Database_->Query(DB_TgtPremFixedAtIssue))
{
@@ -974,6 +993,12 @@
);
AnnualTargetPrem = UnusedTargetPrem;
+// The following comment block will soon be expunged. At present,
+// BasicValues::GetTgtPrem() is used only by FindSpecAmt::operator().
+// Forgoing the specamt argument to GetTgtPrem() would require moving
+// it into class AccountValue, which would make it unsuitable for its
+// sole present purpose.
+
/*
// TODO ?? This code might be preferable if it worked correctly.
//
@@ -992,9 +1017,6 @@
,mce_monthly
);
- // Target premium is annual mode. Using a different mode seems
- // conceivable, but if the ee and er both pay, and on different
- // modes, then it would be unclear which mode to choose.
UnusedTargetPrem = GetTgtPrem
(Year
,InvariantValues().SpecAmt[Year]
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [lmi-commits] [5316] Improve documentation, describing some planned changes,
Greg Chicares <=