1//<-- CLI SHELL MODE --> 2// ============================================================================= 3// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab 4// Copyright (C) 2013 - S/E - Sylvestre Ledru 5// 6// This file is distributed under the same license as the Scilab package. 7// ============================================================================= 8assert_checkalmostequal(erfc(1 + 2*%i), 1.536643565778565033991795559314192749442 + 5.049143703447034669543036958614140565553*%i, 1.e-10); 9assert_checkalmostequal(erfc(-1 + 2*%i), 0.4633564342214349660082044406858072505579 + 5.049143703447034669543036958614140565553*%i, 1.e-10); 10assert_checkalmostequal(erfc(1 + -2*%i), 1.536643565778565033991795559314192749442 + -5.049143703447034669543036958614140565553*%i, 1.e-10); 11assert_checkalmostequal(erfc(-1 + -2*%i), 0.4633564342214349660082044406858072505579 + -5.049143703447034669543036958614140565553*%i, 1.e-10); 12assert_checkalmostequal(erfc(9 + -28*%i), -0.3359473673830576996788000505817956637777e304 + 0.1999896139679880888755589794455069208455e304*%i, 1.e-10); 13assert_checkalmostequal(erfc(21 + -33*%i), -0.3584459971462946066523939204836760283645e278 + -0.3818954885257184373734213077678011282505e280*%i, 1.e-10); 14assert_checkalmostequal(erfc(1e3 + 1e3*%i), 0.0003979577342851360897849852457775473112748 + -0.00002801044116908227889681753993542916894856*%i, 1.e-10); 15assert_checkalmostequal(erfc(-3001 + -1000*%i), 2 + 0*%i, 1.e-10); 16assert_checkalmostequal(erfc(1e160 + -1e159*%i), 0 + 0*%i, 1.e-10); 17assert_checkalmostequal(erfc(5.1e-3 + 1e-8*%i), 0.9942453161409651998655870094589234450651 + -0.1128349818335058741511924929801267822634e-7*%i, 1.e-10); 18assert_checkalmostequal(erfc(0 + 2e-6*%i), 1 + -0.2256758334194034158904576117253481476197e-5*%i, 1.e-10); 19assert_checkalmostequal(erfc(0 + 2*%i), 1 + -18.56480241457555259870429191324101719886*%i, 1.e-10); 20assert_checkalmostequal(erfc(0 + 20*%i), 1 + -0.1474797539628786202447733153131835124599e173*%i, 1.e-10); 21assert_checkalmostequal(erfc(0 + 200*%i), complex(1, -%inf), 1.e-10); 22assert_checkalmostequal(erfc(2e-6 + 0*%i), 0.9999977432416658119838633199332831406314 + 0*%i, 1.e-10); 23assert_checkalmostequal(erfc(2 + 0*%i), 0.004677734981047265837930743632747071389108 + 0*%i, 1.e-10); 24assert_checkalmostequal(erfc(20 + 0*%i), 0.5395865611607900928934999167905345604088e-175 + 0*%i, 1.e-10); 25assert_checkalmostequal(erfc(200 + 0*%i), 0 + 0*%i, 1.e-10); 26assert_checkalmostequal(erfc(%inf + 0*%i), 0 + 0*%i, 1.e-10); 27assert_checkalmostequal(erfc(-%inf + 0*%i), 2 + 0*%i, 1.e-10); 28assert_checkalmostequal(erfc(0 + %inf*%i), complex(%nan, %nan), 1.e-10); 29assert_checkalmostequal(erfc(0 + -%inf*%i), complex(%nan, %nan), 1.e-10); 30assert_checkalmostequal(erfc(%inf + %inf*%i), %nan + %nan*%i, 1.e-10); 31assert_checkalmostequal(erfc(%inf + -%inf*%i), %nan + %nan*%i, 1.e-10); 32assert_checkalmostequal(erfc(%nan + %nan*%i), %nan + %nan*%i, 1.e-10); 33assert_checkalmostequal(erfc(%nan + 0*%i), %nan + 0*%i, 1.e-10); 34assert_checkalmostequal(erfc(0 + %nan*%i), 1 + %nan*%i, 1.e-10); 35assert_checkalmostequal(erfc(%nan + %inf*%i), %nan + %nan*%i, 1.e-10); 36assert_checkalmostequal(erfc(%inf + %nan*%i), %nan + %nan*%i, 1.e-10); 37assert_checkalmostequal(erfc(88 + 0*%i ), 0 + 0*%i, 1.e-10); 38assert_checkerror("erfc(''foo'')",[],999); 39assert_checkerror("erfc(sparse([1,2;4,5;3,10],[1,2,3]))",[],999); 40