Hi, I am implenting a turbo decoder for a channel coding scheme. In that I have to implement a SISO(Soft Input Soft Output) decoder for my system. In SISO, I have to compute loglikelihood ratios which invloves formulas involving arctanh(x). I am facing the problem when x= 1 or -1 then matlab is giving me inf and -inf respectively and it is giving erroroneous result. Any help in this regard is highly appreciated. Best Regards, -SaiRamesh. |
|
Problem with atanh
Started by ●October 13, 2004
Reply by ●October 13, 20042004-10-13
Let us look at the formula for hyperbolic tan inverse arctanh(x) = 0.5 * log ((1+x)/(1-x)) Substituting the value of x as 1 or -1, you would expect to get some wierd answer, isn't it? > Hi, > I am implenting a turbo decoder for a channel coding scheme. In > that I have to implement a SISO(Soft Input Soft Output) decoder for my > system. In SISO, I have to compute loglikelihood ratios which > invloves formulas involving arctanh(x). I am facing the problem when x= > 1 or -1 then matlab is giving me inf and -inf respectively and it is > giving erroroneous result. > Any help in this regard is highly appreciated. > > Best Regards, > -SaiRamesh. > > _____________________________________ > Note: If you do a simple "reply" with your email client, only the author > of this message will receive your answer. You need to do a "reply all" > if you want your answer to be distributed to the entire group. > > _____________________________________ > About this discussion group: > > To Join: > > To Post: > > To Leave: > > Archives: http://www.yahoogroups.com/group/matlab > > More DSP-Related Groups: http://www.dsprelated.com/groups.php3 > Yahoo! Groups Links > > -- V Ravi Chander, Research Engineer, Emerging Technologies and Services Group, Reliance Infocomm Ltd. |
|
Reply by ●October 13, 20042004-10-13
Hi, Thanks for your reply! It is obvious that it will give inf when x= 1. I asked in this type of cases, how to tackle the problem in Matlab, I can not approximate as the graph of atanh(x)is very sensitive as x close to 1 or -1. My algorithm has to use atanh(x). Any help in this regard in MATLAB is highly appreciated. Regards, -SaiRamesh. --- wrote: > Let us look at the formula for hyperbolic tan > inverse > > arctanh(x) = 0.5 * log ((1+x)/(1-x)) > > Substituting the value of x as 1 or -1, you would > expect to get some wierd > answer, isn't it? > > > > > > > > Hi, > > I am implenting a turbo decoder for a channel > coding scheme. In > > that I have to implement a SISO(Soft Input Soft > Output) decoder for my > > system. In SISO, I have to compute loglikelihood > ratios which > > invloves formulas involving arctanh(x). I am > facing the problem when x= > > 1 or -1 then matlab is giving me inf and -inf > respectively and it is > > giving erroroneous result. > > Any help in this regard is highly appreciated. > > > > Best Regards, > > -SaiRamesh. > > > > > > > > > > > > > > > > > > ------------------------ Yahoo! Groups Sponsor > > > > _____________________________________ > > Note: If you do a simple "reply" with your email > client, only the author > > of this message will receive your answer. You > need to do a "reply all" > > if you want your answer to be distributed to the > entire group. > > > > _____________________________________ > > About this discussion group: > > > > To Join: > > > > To Post: > > > > To Leave: > > > > Archives: http://www.yahoogroups.com/group/matlab > > > > More DSP-Related Groups: > http://www.dsprelated.com/groups.php3 > > Yahoo! Groups Links > > > > > > > > > > -- > V Ravi Chander, > Research Engineer, > Emerging Technologies and Services Group, > Reliance Infocomm Ltd. > _______________________________ |
|
Reply by ●October 13, 20042004-10-13
Sairamesh, How about doing something like clamping. I mean catch all the values above a particular maximum or minimum value, lets say above +/- 10000 ( select a more reasonable value here) and say its +/-10000. It will definately introduce some error but the algorithm shud work. Hope this helps. Tarang On Wed, 13 Oct 2004 08:50:46 -0700 (PDT), nammi sairamesh <> wrote: > > Hi, > Thanks for your reply! It is obvious that it will > give inf when x= 1. I asked in this type of cases, > how to tackle the problem in Matlab, I can not > approximate as the graph of atanh(x)is very sensitive > as x close to 1 or -1. My algorithm has to use > atanh(x). Any help in this regard in MATLAB is highly > appreciated. > Regards, > -SaiRamesh. > --- wrote: > > > Let us look at the formula for hyperbolic tan > > inverse > > > > arctanh(x) = 0.5 * log ((1+x)/(1-x)) > > > > Substituting the value of x as 1 or -1, you would > > expect to get some wierd > > answer, isn't it? > > > > > > > > > > > > > > > > Hi, > > > I am implenting a turbo decoder for a channel > > coding scheme. In > > > that I have to implement a SISO(Soft Input Soft > > Output) decoder for my > > > system. In SISO, I have to compute loglikelihood > > ratios which > > > invloves formulas involving arctanh(x). I am > > facing the problem when x= > > > 1 or -1 then matlab is giving me inf and -inf > > respectively and it is > > > giving erroroneous result. > > > Any help in this regard is highly appreciated. > > > > > > Best Regards, > > > -SaiRamesh. > > > > > > > > > > > > > > > > > > > > > > > > > > > ------------------------ > ________________________________ > Yahoo! Groups Links > > To |
Reply by ●October 13, 20042004-10-13
For example, if x=1 & x=-1 y=0; %or whatever value is resonable in your calculations else y=atan(x); end |
Reply by ●October 14, 20042004-10-14
Hi again! I dont know what is the step size that you are using for x. I tried this in MATLAB atanh(0.999999) ans = 7.25432861924767 so even if you have a step size as small as 0.000001, the value doesn't really shoot up for the value of x just before 1 or -1. You can approximate the value at (x = 1) to 10 (or whatever you think is suitable in your work). regards, Ravi > > > Hi, > Thanks for your reply! It is obvious that it will > give inf when x= 1. I asked in this type of cases, > how to tackle the problem in Matlab, I can not > approximate as the graph of atanh(x)is very sensitive > as x close to 1 or -1. My algorithm has to use > atanh(x). Any help in this regard in MATLAB is highly > appreciated. > Regards, > -SaiRamesh. > --- wrote: > >> Let us look at the formula for hyperbolic tan >> inverse >> >> arctanh(x) = 0.5 * log ((1+x)/(1-x)) >> >> Substituting the value of x as 1 or -1, you would >> expect to get some wierd >> answer, isn't it? >> >> >> > >> > >> > >> > Hi, >> > I am implenting a turbo decoder for a channel >> coding scheme. In >> > that I have to implement a SISO(Soft Input Soft >> Output) decoder for my >> > system. In SISO, I have to compute loglikelihood >> ratios which >> > invloves formulas involving arctanh(x). I am >> facing the problem when x= >> > 1 or -1 then matlab is giving me inf and -inf >> respectively and it is >> > giving erroroneous result. >> > Any help in this regard is highly appreciated. >> > >> > Best Regards, >> > -SaiRamesh. >> > >> > >> > >> > >> > >> > >> > >> > >> > ------------------------ Yahoo! Groups Sponsor >> > >> > _____________________________________ >> > Note: If you do a simple "reply" with your email >> client, only the author >> > of this message will receive your answer. You >> need to do a "reply all" >> > if you want your answer to be distributed to the >> entire group. >> > >> > _____________________________________ >> > About this discussion group: >> > >> > To Join: >> > >> > To Post: >> > >> > To Leave: >> > >> > Archives: http://www.yahoogroups.com/group/matlab >> > >> > More DSP-Related Groups: >> http://www.dsprelated.com/groups.php3 >> > Yahoo! Groups Links >> > >> > >> > >> > >> > >> >> >> -- >> V Ravi Chander, >> Research Engineer, >> Emerging Technologies and Services Group, >> Reliance Infocomm Ltd. >> >> > > > > _______________________________ > > _____________________________________ > Note: If you do a simple "reply" with your email client, only the author > of this message will receive your answer. You need to do a "reply all" > if you want your answer to be distributed to the entire group. > > _____________________________________ > About this discussion group: > > To Join: > > To Post: > > To Leave: > > Archives: http://www.yahoogroups.com/group/matlab > > More DSP-Related Groups: http://www.dsprelated.com/groups.php3 > Yahoo! Groups Links > > -- V Ravi Chander, Research Engineer, Emerging Technologies and Services Group, Reliance Infocomm Ltd. |
|
Reply by ●October 14, 20042004-10-14
L Bhusal- > You can use if else loop to avoid calculations at x=1,-1. > > For example, > > if x=1 & x=-1 > > y=0; %or whatever value is resonable in your calculations > > else > > y=atan(x); Or just add a small value to adjust magnitude: y = arctanh(x - sign(x)*eps); Then the formula becomes: arctanh(x) = 0.5 * log((1+x+sign(x)*eps)/(1-x-sign(x)*eps)) Values for x=1, x=-1 will not be invalid and results should be fairly accurate. -Jeff > >From: nammi sairamesh <> > >To: > >CC: > >Subject: Re: [matlab] Problem with atanh > >Date: Wed, 13 Oct 2004 08:50:46 -0700 (PDT) > > > > > >Hi, > > Thanks for your reply! It is obvious that it will > >give inf when x= 1. I asked in this type of cases, > >how to tackle the problem in Matlab, I can not > >approximate as the graph of atanh(x)is very sensitive > >as x close to 1 or -1. My algorithm has to use > >atanh(x). Any help in this regard in MATLAB is highly > >appreciated. > >Regards, > >-SaiRamesh. > > > > > > > > > > > >--- wrote: > > > > > Let us look at the formula for hyperbolic tan > > > inverse > > > > > > arctanh(x) = 0.5 * log ((1+x)/(1-x)) > > > > > > Substituting the value of x as 1 or -1, you would > > > expect to get some wierd > > > answer, isn't it? > > > > > > > > > > > > > > > > > > > > > > Hi, > > > > I am implenting a turbo decoder for a channel > > > coding scheme. In > > > > that I have to implement a SISO(Soft Input Soft > > > Output) decoder for my > > > > system. In SISO, I have to compute loglikelihood > > > ratios which > > > > invloves formulas involving arctanh(x). I am > > > facing the problem when x= > > > > 1 or -1 then matlab is giving me inf and -inf > > > respectively and it is > > > > giving erroroneous result. > > > > Any help in this regard is highly appreciated. > > > > > > > > Best Regards, > > > > -SaiRamesh. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > ------------------------ > [click here] > --------------------------- > Yahoo! Groups Links > > * To |
Reply by ●October 15, 20042004-10-15
Hi, Thanks for ur reply! I also tried that, but as I mentioned the value is very sensitive as x tends to 1 or -1 , ! so if u try for .9999999 we can see drastic change, ! but as for .999....9(fifteen 9s) its value is around 18.57 , after that it becomes inf. so i approximated the value to that .999....9. with a little error. anyhow i solved the problem , thanks for giving inputs! Best Regards, -SaiRamesh. --- V Ravi Chander <> wrote: > > Hi again! > I dont know what is the step size that you are using > for x. > I tried this in MATLAB > > atanh(0.999999) > > ans = > > 7.25432861924767 > > so even if you have a step size as small as > 0.000001, the value doesn't > really shoot up for the value of x just before 1 or > -1. > > You can approximate the value at (x = 1) to 10 (or > whatever you think is > suitable in your work). > > regards, > Ravi > > > > > > Hi, > > Thanks for your reply! It is obvious that it > will > > give inf when x= 1. I asked in this type of cases, > > how to tackle the problem in Matlab, I can not > > approximate as the graph of atanh(x)is very > sensitive > > as x close to 1 or -1. My algorithm has to use > > atanh(x). Any help in this regard in MATLAB is > highly > > appreciated. > > Regards, > > -SaiRamesh. > > > > > > > > > > > > --- wrote: > > > >> Let us look at the formula for hyperbolic tan > >> inverse > >> > >> arctanh(x) = 0.5 * log ((1+x)/(1-x)) > >> > >> Substituting the value of x as 1 or -1, you would > >> expect to get some wierd > >> answer, isn't it? > >> > >> > >> > > >> > > >> > > >> > Hi, > >> > I am implenting a turbo decoder for a > channel > >> coding scheme. In > >> > that I have to implement a SISO(Soft Input Soft > >> Output) decoder for my > >> > system. In SISO, I have to compute > loglikelihood > >> ratios which > >> > invloves formulas involving arctanh(x). I am > >> facing the problem when x= > >> > 1 or -1 then matlab is giving me inf and -inf > >> respectively and it is > >> > giving erroroneous result. > >> > Any help in this regard is highly appreciated. > >> > > >> > Best Regards, > >> > -SaiRamesh. > >> > > >> > > >> > > >> > > >> > > >> > > >> > > >> > > >> > ------------------------ Yahoo! Groups Sponsor > >> > > >> > _____________________________________ > >> > Note: If you do a simple "reply" with your > >> client, only the author > >> > of this message will receive your answer. You > >> need to do a "reply all" > >> > if you want your answer to be distributed to > the > >> entire group. > >> > > >> > _____________________________________ > >> > About this discussion group: > >> > > >> > To Join: > >> > > >> > To Post: > >> > > >> > To Leave: > >> > > >> > Archives: > http://www.yahoogroups.com/group/matlab > >> > > >> > More DSP-Related Groups: > >> http://www.dsprelated.com/groups.php3 > >> > Yahoo! Groups Links > >> > > >> > > >> > > >> > > >> > > >> > >> > >> -- > >> V Ravi Chander, > >> Research Engineer, > >> Emerging Technologies and Services Group, > >> Reliance Infocomm Ltd. > >> > >> > >> > > > > > > > > > > _______________________________ > > > > > > > > > > > > > > _____________________________________ > > Note: If you do a simple "reply" with your email > client, only the author > > of this message will receive your answer. You > need to do a "reply all" > > if you want your answer to be distributed to the > entire group. > > > > _____________________________________ > > About this discussion group: > > > > To Join: > > > > To Post: > > > > To Leave: > > > > Archives: http://www.yahoogroups.com/group/matlab > > > > More DSP-Related Groups: > http://www.dsprelated.com/groups.php3 > > Yahoo! Groups Links > > > > > > > > -- > V Ravi Chander, > Research Engineer, > Emerging Technologies and Services Group, > Reliance Infocomm Ltd. > _______________________________ |