[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[lmi-commits] [lmi] master 5dd0420 5/5: Use unrounded deductions for lis
From: |
Greg Chicares |
Subject: |
[lmi-commits] [lmi] master 5dd0420 5/5: Use unrounded deductions for list bills |
Date: |
Tue, 13 Jun 2017 12:03:02 -0400 (EDT) |
branch: master
commit 5dd04205f28442462c5832c4e4e524ead7f552cd
Author: Gregory W. Chicares <address@hidden>
Commit: Gregory W. Chicares <address@hidden>
Use unrounded deductions for list bills
---
ihs_basicval.cpp | 13 ++++++-------
1 file changed, 6 insertions(+), 7 deletions(-)
diff --git a/ihs_basicval.cpp b/ihs_basicval.cpp
index 0311fcf..43392c9 100644
--- a/ihs_basicval.cpp
+++ b/ihs_basicval.cpp
@@ -1371,11 +1371,10 @@ double BasicValues::GetModalPremMlyDedEr
/// next age iff that is less than the maturity age, otherwise
/// assuming that deductions are zero after maturity.
///
-/// The discounting specified in all GetModalPremMlyDed* functions
-/// results in an annuity factor of unity for monthly mode, so call
-/// those functions with monthly mode for the nonce to get
-/// undiscounted deductions. This isn't quite what's wanted because
-/// those functions perform rounding.
+/// Any once-a-year monthly deduction is deliberately ignored for
+/// simplicity. Such charges are extraordinary (e.g., a fee to
+/// offset underwriting costs for private placements), and occur
+/// only on products for which list bills would not be wanted.
double BasicValues::GetListBillPremMlyDed
(int year
@@ -1383,11 +1382,11 @@ double BasicValues::GetListBillPremMlyDed
,double specamt
) const
{
- double const p0 = GetModalPremMlyDed(year, mce_monthly, specamt);
+ double const p0 = approx_mly_ded(year, specamt).second;
int const next_year = 1 + year;
double const p1 =
(next_year < GetLength())
- ? GetModalPremMlyDed(next_year, mce_monthly, specamt)
+ ? approx_mly_ded(next_year, specamt).second
: 0.0
;
double const z = list_bill_premium