diff options
| author | Phillip Lord <phillip.lord@russet.org.uk> | 2019-06-13 20:35:51 +0100 |
|---|---|---|
| committer | Phillip Lord <phillip.lord@russet.org.uk> | 2019-06-13 20:35:51 +0100 |
| commit | 644b0a5cbce87c7d159d5c6bcee537bce9a40567 (patch) | |
| tree | 9ae907f9fe23483b5dc2e815bfa6cbc6cb45749a /org-drill.el | |
| parent | ba0a346583231c5450759a0cf86fe2c896762352 (diff) | |
| download | org-drill-644b0a5cbce87c7d159d5c6bcee537bce9a40567.tar.gz org-drill-644b0a5cbce87c7d159d5c6bcee537bce9a40567.zip | |
Remove org-learn as a separate package
Diffstat (limited to 'org-drill.el')
| -rw-r--r-- | org-drill.el | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/org-drill.el b/org-drill.el index 2132de4..69a109d 100644 --- a/org-drill.el +++ b/org-drill.el @@ -55,9 +55,12 @@ (require 'hi-lock) (require 'org) (require 'org-id) -(require 'org-learn) (require 'savehist) +(eval-when-compile + (require 'cl)) + + (require 'seq) (defgroup org-drill nil @@ -1131,7 +1134,24 @@ Returns a list: (INTERVAL REPEATS EF FAILURES MEAN TOTAL-REPEATS OFMATRIX), wher ;;; SM5 Algorithm ============================================================= +(defun modify-e-factor (ef quality) + (if (< ef 1.3) + 1.3 + (+ ef (- 0.1 (* (- 5 quality) (+ 0.08 (* (- 5 quality) 0.02))))))) +(defun modify-of (of q fraction) + (let ((temp (* of (+ 0.72 (* q 0.07))))) + (+ (* (- 1 fraction) of) (* fraction temp)))) + +(defun set-optimal-factor (n ef of-matrix of) + (let ((factors (assoc n of-matrix))) + (if factors + (let ((ef-of (assoc ef (cdr factors)))) + (if ef-of + (setcdr ef-of of) + (push (cons ef of) (cdr factors)))) + (push (cons n (list (cons ef of))) of-matrix))) + of-matrix) (defun initial-optimal-factor-sm5 (n ef) (if (= 1 n) |
