تكنولوجيا المعلومات++
IT++ هي مكتبة C++ تضم فئات ووظائف للجبر الخطي ، والتحسين العددي ، ومعالجة الإشارات ، والاتصالات، والإحصاء . [ 1 ] يجري تطويرها من قبل باحثين في هذه المجالات، وتُستخدم على نطاق واسع من قبل الباحثين، سواء في قطاع الاتصالات أو الجامعات. [ 2 ] [ 3 ] تعود أصول مكتبة IT++ إلى قسم نظرية المعلومات السابق في جامعة تشالمرز للتكنولوجيا، غوتنبرغ، السويد.
تتكون نواة مكتبة IT++ من فئات المتجهات والمصفوفات المُنمّطة ، ومجموعة من الدوال المصاحبة. هذه النواة تجعل مكتبة IT++ مشابهة لمكتبتي Matlab و Octave . ولزيادة الوظائف والسرعة والدقة، يمكن لـ IT++ الاستفادة بشكل كبير من المكتبات المجانية والمفتوحة المصدر ، وخاصة مكتبات BLAS و LAPACK و FFTW . وبدلاً من BLAS وLAPACK، يمكن استخدام بعض المكتبات المُحسّنة الخاصة بالمنصات، مثل:
- ATLAS (برنامج الجبر الخطي المضبوط تلقائيًا) - يتضمن BLAS وCBLAS المحسّنة ومجموعة محدودة من إجراءات LAPACK؛
- MKL (مكتبة نواة الرياضيات من إنتل) - تتضمن جميع إجراءات BLAS وCBLAS وLAPACK وFFT المطلوبة (FFTW غير مطلوب)؛
- ACML (مكتبة الرياضيات الأساسية AMD) - تتضمن BLAS و LAPACK وروتينات FFT (FFTW غير مطلوب).
يمكن تجميع واستخدام IT++ بدون أي من المكتبات المذكورة أعلاه، ولكن ستكون وظائفها محدودة. يعمل IT++ على أنظمة التشغيل Linux و Solaris و Windows (مع Cygwin أو MinGW/MSYS أو Microsoft Visual C++ ) و OS X.
مثال
إليكم مثال بسيط يوضح وظائف برنامج IT++ المشابهة لبرنامجي Matlab/Octave،
استيراد < itpp / itbase.h > ؛ استيراد std ؛باستخدام itpp :: Mat ؛ باستخدام itpp :: Vec ؛int main () { Vec < double > a = itpp :: linspace ( 0.0 , 2.0 , 2 ); Vec < double > b ( "1.0 2.0" ); Vec < double > c = 2 * a + 3 * b ; std :: println ( "c = {}" , c );Mat <double> A ( "1.0 2.0; 3.0 4.0" ) ; Mat <double> B ( " 0.0 1.0; 1.0 0.0" ); Mat <double> C = A * B + 2 * A ; std :: println ( "C = {}" , C ) ; std :: println ( " معكوس B = {}" , itpp :: inv ( B ) );return 0 ; }انظر أيضاً
مراجع
- ↑ IT++، دليل البرمجيات الحرة ، مؤسسة البرمجيات الحرة ، http://directory.fsf.org
- ↑ بوغدان كريستيا. 2009. أجهزة استقبال توربو مع IT++. في وقائع المؤتمر الدولي الثاني حول أدوات وتقنيات المحاكاة (Simutools '09). معهد علوم الحاسوب والمعلوماتية الاجتماعية وهندسة الاتصالات (ICST)، بروكسل، بلجيكا، doi : 10.4108/ICST.SIMUTOOLS2009.5564
- ↑ دي ليما، سي إتش إم؛ ستانكانيللي، إي إم جي؛ رودريغز، إي بي؛ دا إس. ماسيل، جي إم؛ كافالكانتي، إف آر بي، إطار عمل لتطوير البرمجيات قائم على لغة البرمجة الكائنية C++ لأدوات محاكاة مستوى الربط، ندوة الاتصالات الدولية لعام 2006، فورتاليزا، البرازيل، doi : 10.1109/ITS.2006.4433344
روابط خارجية
- مكتبات C++ العددية
- جامعة تشالمرز للتكنولوجيا
- برامج علمية مجانية
- برنامج يستخدم رخصة جنو العمومية العامة
