|
LAMMP 4.2.0
Lamina High-Precision Arithmetic Library
|
#include "../../../include/lammp/impl/inlines.h"#include "../../../include/lammp/impl/mparam.h"#include "../../../include/lammp/impl/tmp_alloc.h"#include "../../../include/lammp/lmmpn.h"
bninv.c 的引用(Include)关系图:函数 | |
| void | lmmp_bninv_ (mp_ptr restrict dstq, mp_srcptr restrict numa, mp_size_t na, mp_size_t ni) |
| static void | lmmp_bninv_appr_newton_ (mp_ptr restrict dstq, mp_srcptr restrict numa, mp_size_t na, mp_size_t ni) |
| Copyright (C) 2026 HJimmyK(Jericho Knox) | |
引用了 B, bn, LIMB_BITS, lmmp_bninv_appr_newton_(), lmmp_copy, lmmp_div_(), lmmp_div_1_(), lmmp_div_2_(), lmmp_leading_zeros_, lmmp_param_assert, lmmp_shl_(), lmmp_shr_(), lmmp_zero, n, TALLOC_TYPE, TEMP_DECL , 以及 TEMP_FREE.
函数调用图:
|
static |
Copyright (C) 2026 HJimmyK(Jericho Knox)
This file is part of LAMMP.
LAMMP is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License (LGPL) as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.
This program is distributed WITHOUT ANY WARRANTY.
See https://www.gnu.org/licenses/.
牛顿法求精确逆元(至多产生1的误差)
引用了 BNINV_NEWTON_THRESHOLD, LIMB_B_2, lmmp_bninv_appr_newton_(), lmmp_div_basecase_(), lmmp_inv_2_1_(), lmmp_mul_(), lmmp_param_assert, lmmp_shl_(), lmmp_sqr_, lmmp_sub_n_(), lmmp_zero, n, TALLOC_TYPE, TEMP_DECL , 以及 TEMP_FREE.
被这些函数引用 lmmp_bninv_() , 以及 lmmp_bninv_appr_newton_().
函数调用图:
这是这个函数的调用关系图: