Using Irregular Terrain Propagation Model (Longley-Rice)

138 views
Skip to first unread message

Aykut

unread,
Jan 17, 2017, 8:49:29 AM1/17/17
to ns-3-users
Dear ns3 community,

In order to be have a more accurate propagation model, I was planning to use an ITM model instead of other models that are currently installed in release 3.26

What I've found a wiki page which references this patch set website but I could not find a way to download the code for integrating in the current ns 3.26 release. Although it was stated for ns 3.13 this was a feature there is no terrain libary in ns 3.26 now (at least the one i've downloaded)

I would like to ask whether there is a repository so that i can reach to this terrain model.

If not we can try to integrate this model to the library as well

Reference wiki: https://www.nsnam.org/wiki/Ns-3.18

https://codereview.appspot.com/6192052/#ps1

Kindly regards.
Aykut

Tommaso Pecorella

unread,
Jan 19, 2017, 7:58:33 PM1/19/17
to ns-3-users
Hi Aykut,

to the best of my knowledge the model didn't make it to the main codebase, and I have no idea why (most probably lack of revisions).
Sadly, in the meantime a LOT of things did change. As a consequence, it's not possible to simply download the code and place it in the ns-3 source tree: some work have to be done.
If you're lucky, only the wscript and some headers will have to be fixed. If you're unlucky... well, who knows.

If you want to take the burden of revamping the code and post a 3.26 (or later) compatible version, and maybe to carry the code through the review process, well, that would be great.

Cheers,

T.

Aykut

unread,
Jan 20, 2017, 6:08:12 AM1/20/17
to ns-3-users
Hello Tommaso,

Thanks for your input, currently i am trying to make the integration but as you have said it is not straightforward. Even in the wscript definitions there are incompatible declarations (cuz i think newer version of waf can scan the things automatically etc.).

My initial observations are as follows;

Within the patched code all the module was written with another namespace that comes after ns3 it's like this;

namespace ns3{
namespace terrain{

our code...

}

}

Do you think we should remove this specific namespace ? because there is no such methodology in other modules.

Lastly, do you have any suggestion to trace the actual build failure when we have huge failed messages in the terminal sometimes it is quite huge that it is impossible to see the first error which starts the chain reaction in the build failure.

Kindly regards
Aykut

Aykut

unread,
Jan 20, 2017, 7:50:48 AM1/20/17
to ns-3-users
Dear Tommaso,

You may discard my previous comment as I only have a linker problem now (library is compiling) apparently.

I'm adding the wscript in the attachment for your information, I think once we solve this issue it would work.

[2306/2338] Linking build/bindings/python/ns/traffic_control.so
./libns3.26-terrain-debug.so: undefined reference to `ns3::terrain::ItmlrPointPropagationLossModel::DoAssignStreams(long)'
./libns3.26-terrain-debug.so: undefined reference to `ns3::terrain::ItuPropagationLossModel::DoAssignStreams(long)'
./libns3.26-terrain-debug.so: undefined reference to `ns3::terrain::ItmlrAreaPropagationLossModel::DoAssignStreams(long)'
./libns3.26-terrain-debug.so: undefined reference to `typeinfo for ns3::terrain::ItmlrPointPropagationCalculator'
./libns3.26-terrain-debug.so: undefined reference to `vtable for ns3::terrain::ItmlrPointPropagationCalculator'
./libns3.26-terrain-debug.so: undefined reference to `vtable for ns3::terrain::ItmlrAreaPropagationCalculator'
./libns3.26-terrain-debug.so: undefined reference to `ns3::terrain::__errno_location()'
./libns3.26-terrain-debug.so: undefined reference to `typeinfo for ns3::terrain::ItmlrAreaPropagationCalculator'
collect2: error: ld returned 1 exit status

./libns3.26-terrain-debug.so: undefined reference to `ns3::terrain::ItmlrPointPropagationLossModel::DoAssignStreams(long)'
./libns3.26-terrain-debug.so: undefined reference to `ns3::terrain::ItuPropagationLossModel::DoAssignStreams(long)'
./libns3.26-terrain-debug.so: undefined reference to `ns3::terrain::ItmlrAreaPropagationLossModel::DoAssignStreams(long)'
./libns3.26-terrain-debug.so: undefined reference to `typeinfo for ns3::terrain::ItmlrPointPropagationCalculator'
./libns3.26-terrain-debug.so: undefined reference to `vtable for ns3::terrain::ItmlrPointPropagationCalculator'
./libns3.26-terrain-debug.so: undefined reference to `vtable for ns3::terrain::ItmlrAreaPropagationCalculator'
./libns3.26-terrain-debug.so: undefined reference to `ns3::terrain::__errno_location()'
./libns3.26-terrain-debug.so: undefined reference to `typeinfo for ns3::terrain::ItmlrAreaPropagationCalculator'
collect2: error: ld returned 1 exit status

Many thanks
Aykut
wscript

Tommaso Pecorella

unread,
Jan 20, 2017, 8:46:04 AM1/20/17
to ns-3-users
Hi,

it seems an "internal" linking problem. If you did remove the namespace, then make sure that there are no more references to it in the code.

Cheers,

T.

PS: I would have kept the namespace.

Alex Poylisher

unread,
Jul 19, 2017, 10:42:23 PM7/19/17
to ns-3-users
Aykut,

Did it work for you in the end?  If so, would you mind sharing the modified code?

Regards,

Alex
Reply all
Reply to author
Forward
0 new messages