TDengine/deps/lua/test/bisect.lua

28 lines
645 B
Lua
Raw Permalink Normal View History

Hotfix/sangshuduo/m2d 20210702 (#6719) * [TD-4132]<test>: add taosdump-testcase of boundary value testing * [TD-3952]<test>: add taodemo-testcase that query with restful connector * merge master * modify taosdemo-testcase * add testcase of async subscirbe and max sql num * testcase-subscribe of super table * testcase-modify sub * modify subscribe testcase * [TD-4238]<test>: add taodemo-testcase that records of number in request sql less than 32767 * add taosdemo-subscribe-testcase * update taosdemo testcase * temp commit * temp commit * temp commit * temp1 * temp * [TD-4835] add lua lib * [TD-4369]<test>: add testcase of resubscibe * [TD-4826]<fix>: new error code 0x0406 (Dnode is exiting) for tsc * [TD-4369]<test>: add testcase of resubscibe and json file * temp * update master to develop's version * Update boundary2.py * [TD-4912]<hotfix>: fix coredump when drop vnode * Hotfix/sangshuduo/td 3801 taosdump coverity scan issue (#6642) * [TD-3801]<fix>: taosdump coverity scan issue. * merge from commit: 069169e7c1 and fix coverity scan issue. Co-authored-by: Shuduo Sang <sdsang@taosdata.com> * [TD-4932]fix jenkins errors on master branch (#6645) * [TD-4932]fix jenkins errors on master branch * fix * fix * fix * fix * [TD-4132]<test>:modify taosdump-testcase of column length * [TD-4918]<fix>: taosdemo subscribe endAfterResume. (#6653) * [TD-4915]<fix> fix show-create-database except * Hotfix/sangshuduo/td 4892 taosdemo sub fetch (#6669) * [TD-4892]<fix>: taosdemo subscribe fetch result. * fix stbname length. * restrict prefix length. * submit empty * fix minor code. * fix crash if no result file. * decrease few debug print level. * fix offset issue * [TD-4987]<fix>: issues memory sanitizier detected. (#6675) * [TD-4826]<fix>: no extra sleep if no message in vwqueue * [TD-4593]<fix>: fix vnode cannnot close while syncing * Hotfix/sangshuduo/td 4918 taosdemo sub afterconsume (#6685) * [TD-4918]<fix>: taosdemo subscribe endAfterResume. * fix mask length. * fix heap use-after-free. * Hotfix/sangshuduo/td 4987 detected by mem sanitizer (#6684) * [TD-4987]<fix>: issues memory sanitizier detected. * fix mask width issue. * [TD-4828]<fix> handle dnode exit code * Hotfix/sangshuduo/td 3973 use jemalloc for master (#6702) * [TD-3973]<feature>: add jemalloc as submodule. * [TD-3973]<feature>: add jemalloc as submodule. * [TD-3973]<feature>: use jemalloc. build works as following instructions: cmake .. -DJEMALLOC_ENABLED=true make * fix jemalloc at tag 5.2.1 * fix conflicts * make install works. * fix conflicts. * release script works. * fix typo Co-authored-by: Shuduo Sang <sdsang@taosdata.com> * TD-4835 * only compile in lua * [td-4748]<fix>:fix the temp file generate buf on windows platform. * change cmake options * [TD-5007]<fix>: use build directory's taosdump to test. (#6710) btw, solve two taosdemo test cases too. * Hotfix/sangshuduo/td 4838 taosdump binary len bug (#6713) * [TD-4838]<fix>: taosdump binary length bug. * taosdump code refactoring. * fix arm32 compile issue. Co-authored-by: tomchon <haoran920c@163.com> Co-authored-by: Shengliang Guan <slguan@taosdata.com> Co-authored-by: Minglei Jin <mljin@taosdata.com> Co-authored-by: Baosheng Chang <changb9@mcmaster.ca> Co-authored-by: Hongze Cheng <hzcheng@taosdata.com> Co-authored-by: Shuduo Sang <sdsang@taosdata.com> Co-authored-by: Yiqing Liu <yqliu@taosdata.com> Co-authored-by: Hui Li <52318143+plum-lihui@users.noreply.github.com> Co-authored-by: yihaoDeng <yhdeng@taosdata.com> Co-authored-by: wpan <wpan@taosdata.com> Co-authored-by: Haojun Liao <hjxilinx@users.noreply.github.com> Co-authored-by: Haojun Liao <hjliao@taosdata.com>
2021-07-02 09:31:12 +00:00
-- bisection method for solving non-linear equations
delta=1e-6 -- tolerance
function bisect(f,a,b,fa,fb)
local c=(a+b)/2
io.write(n," c=",c," a=",a," b=",b,"\n")
if c==a or c==b or math.abs(a-b)<delta then return c,b-a end
n=n+1
local fc=f(c)
if fa*fc<0 then return bisect(f,a,c,fa,fc) else return bisect(f,c,b,fc,fb) end
end
-- find root of f in the inverval [a,b]. needs f(a)*f(b)<0
function solve(f,a,b)
n=0
local z,e=bisect(f,a,b,f(a),f(b))
io.write(string.format("after %d steps, root is %.17g with error %.1e, f=%.1e\n",n,z,e,f(z)))
end
-- our function
function f(x)
return x*x*x-x-1
end
-- find zero in [1,2]
solve(f,1,2)