[Scilab-users] [EXTERNAL] Re: acos leads to complex values

Federico Miyara fmiyara at fceia.unr.edu.ar
Tue Jan 29 21:35:30 CET 2019


This is an improved version of the acos function with input argument check:

function  y=acos1(x)
     // Check if components are real
     is_real  =  imag(x)==0;
     // Leave real-only components
     x1  =  is_real.*x;
     // Check if components are real and belong to [-1, 1]
     in_domain  =  is_real  &  (-1<=x1  &  x1<=1);
     // Imaginary part of acos(x) is accepted only if
     // x does not belong to [-1, 1]
     y  =  in_domain.*real(acos(x))  +  (~in_domain).*acos(x);
endfunction


This works on vectors and arrays as well. Unfortunately i couldn't find 
a component-wise isreal() function, otherwise it would have been simpler!

Federico Miyara


On 29/01/2019 12:58, Stéphane Mottelet wrote:
> It is the same if x is slightly > 1:
>
> --> x=1+%eps
>  x  =
>
>    1.
>
>
> --> acos(x)
>  ans  =
>
>    2.107D-08i
>
> --> format(25); x
>  x  =
>
>    1.0000000000000002220446
>
> Le 29/01/2019 à 16:55, Carrico, Paul a écrit :
>>
>> When I scroll to the list, the lowest (positive) value is 8.4^E -08 
>> (works fine) and no %eps .
>>
>> How Can I check if %eps is in?
>>
>> *De :*users [mailto:users-bounces at lists.scilab.org] *De la part de* 
>> Stéphane Mottelet
>> *Envoyé :* mardi 29 janvier 2019 16:50
>> *À :* users at lists.scilab.org
>> *Objet :* [EXTERNAL] Re: [Scilab-users] acos leads to complex values
>>
>> Le 29/01/2019 à 16:45, Carrico, Paul a écrit :
>>
>>     Dear All
>>
>>     I spent some time in looking for a mistake in my code ; finally
>>     I’ve found that the ACOS of a real vector leads to some complex
>>     values (???)
>>
>>     acos(Scar_P(:,1)./CM_x_CN(:,1))
>>
>> Are your really sure, because we may have
>>
>> --> x=-1-%eps
>>  x  =
>>
>>   -1.
>>
>>
>> --> acos(x)
>>  ans  =
>>
>>    3.1415927 - 2.107D-08i
>>
>> S.
>>
>>     (the formula worked so far)
>>
>>     I checked that the input values are correct:
>>
>>     -Comprised between [-1; 1] using MIN and MAX
>>
>>     -Composed only of real values using ISREAL (all the vectors are
>>     correct)
>>
>>     Thus I do not understand why complex values appear ?
>>
>>     May it come from the vectorization ?
>>
>>     Paul
>>
>>
>>
>>     _______________________________________________
>>
>>     users mailing list
>>
>>     users at lists.scilab.org <mailto:users at lists.scilab.org>
>>
>>     https://antispam.utc.fr/proxy/1/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/lists.scilab.org/mailman/listinfo/users
>>     <https://antispam.utc.fr/proxy/2/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/urldefense.proofpoint.com/v2/url?u=https-3A__antispam.utc.fr_proxy_1_c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy_lists.scilab.org_mailman_listinfo_users&d=DwMG-g&c=0hKVUfnuoBozYN8UvxPA-w&r=4TCz--8bXfJhZZvIxJAemAJyz7Vfx78XvgYu3LN7eLo&m=rN8DsnGalih7CBHModSb9evOi3rmZRFFYcBFHTC71gU&s=RgKyyESZ7uSTxlU7V0nR42XTJybjC0Ar5fDcrouQThE&e=>
>>
>> -- 
>> Stéphane Mottelet
>> Ingénieur de recherche
>> EA 4297 Transformations Intégrées de la Matière Renouvelable
>> Département Génie des Procédés Industriels
>> Sorbonne Universités - Université de Technologie de Compiègne
>> CS 60319, 60203 Compiègne cedex
>> Tel : +33(0)344234688
>> http://www.utc.fr/~mottelet 
>> <https://antispam.utc.fr/proxy/2/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/urldefense.proofpoint.com/v2/url?u=http-3A__www.utc.fr_-7Emottelet&d=DwMG-g&c=0hKVUfnuoBozYN8UvxPA-w&r=4TCz--8bXfJhZZvIxJAemAJyz7Vfx78XvgYu3LN7eLo&m=rN8DsnGalih7CBHModSb9evOi3rmZRFFYcBFHTC71gU&s=34gC0H3RYWxwcKp7fr4bR5XFfy1acxO72YI9AYJJFhA&e=>
>>
>> _______________________________________________
>> users mailing list
>> users at lists.scilab.org
>> https://antispam.utc.fr/proxy/1/c3RlcGhhbmUubW90dGVsZXRAdXRjLmZy/lists.scilab.org/mailman/listinfo/users
>
>
> -- 
> Stéphane Mottelet
> Ingénieur de recherche
> EA 4297 Transformations Intégrées de la Matière Renouvelable
> Département Génie des Procédés Industriels
> Sorbonne Universités - Université de Technologie de Compiègne
> CS 60319, 60203 Compiègne cedex
> Tel : +33(0)344234688
> http://www.utc.fr/~mottelet
>
>
> _______________________________________________
> users mailing list
> users at lists.scilab.org
> http://lists.scilab.org/mailman/listinfo/users



------------------------------------------------------------------------
Avast logo <https://www.avast.com/antivirus> 	

El software de antivirus Avast ha analizado este correo electrónico en 
busca de virus.
www.avast.com <https://www.avast.com/antivirus>


<#DAB4FAD8-2DD7-40BB-A1B8-4E2AA1F9FDF2>


---
El software de antivirus Avast ha analizado este correo electrónico en busca de virus.
https://www.avast.com/antivirus
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.scilab.org/pipermail/users/attachments/20190129/fc672505/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: avast-mail-stamp.png
Type: image/png
Size: 1308 bytes
Desc: not available
URL: <https://lists.scilab.org/pipermail/users/attachments/20190129/fc672505/attachment.png>
-------------- next part --------------
_______________________________________________
users mailing list
users at lists.scilab.org
http://lists.scilab.org/mailman/listinfo/users



More information about the users mailing list