Scilab/C2/Getting-Started/Bengali

From Script | Spoken-Tutorial
Revision as of 12:30, 29 November 2012 by 10.102.152.95 (Talk)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

View here Reviews of Spoken Tutorials

নমস্কার বন্ধুগণ| আপনাদের স্বাগত জানাই আমাদের এই ‘গেটিং স্টার্টড উইথ সাইল্যাব’নামক স্পোকেন টিউটোরিয়াল -এ | এখানে আমরা scilab-র ব্যবহার সম্পর্কে জ্ঞান লাভ করব| এই টিউটোরিয়ালটি ব্যবহার করার জন্য সর্বপ্রথম আপনাকে scilab আপনার কম্পিউটার সিস্টেম এ সংস্থাপন করেত হবে | এর পর ডেস্কটপ -এ scilab-র যে আইকনিট আসেব তাতে আপনাকে দুবার ক্লিক করতে হবে অথবা আপনি সোজা স্টার্ট মেনু তে গিয়ে ও সেটিকে সেলেক্ট করেত পারেন | এতে scilab কনসোল উইন্ড টি খুলবে | খেয়াল রাখবেন যে কার্সার টি যেন কমান্ড প্রম্পটের ওপর থাকে |আমি একটি notepad ফাইল বানিয়েছি ,যেটি বানাতে আমি সেই সমস্ত কমান্ড গুলি ব্যবহার করেছি , যেগুলি এই টিউটোরিয়ালটি তে ব্যবহার করা হয়েছে |সময়ের সাশ্রয়ের জন্যে কমান্ড গুলিকে বার বার type না করে সুধু মাত্র কাট ও পেস্ট করব এই কনসোলে | scilab টিকে ক্যালকুলেটর এর মতন ব্যবহার করা যায় | আপনি যদি ---> 42+4^2-64/4 লেখেন তবে উত্তর পেয়ে যাবেন 42 |

 ---> 42+4^2-64/4
 Ans= 42.

লক্ষ্য করুন যে আপনার উত্তর টি অর্থাৎ 42 উত্তর টি জমা হয়েছে অনুস্থাপেন পরিবর্তনশীল উত্তর হিসাবে যাকে সংক্ষেপে 'ans'হিসাবে দেখন হয়েছে | এখন থেকে আমরা শুধুমাত্র কমান্ড দেব আর উত্তর নিজেই এসে যাবে | এখন এই উপরের গণনায় আমরা উত্তরিটেক জমা করেছি অনুস্থাপনে পরিবর্তনশীল উত্তর হিসাবে | আমরা এই একই উদ্দ্যেশে পরিবর্তনশীল সংখ্যা তৈরী করতে পারি |

 --->a =1 ,b=2 , c= 3
 a=1
 b =2
 c= 3
 a=1, b=2, c=3 –এর েথেক আমরা েয 1, 2 এবং 3 মূল্যগুিল পাচ্ছি  তা জমা অর্থাৎ  সেভ করা আছে যথাক্রমে 

পরিবর্তনশীল a , b and c -এ এখন আমরা এই পরিবর্তনশীল পরিসংখ্যান গুলিকে কাজে লাগিয়ে কিছু গাণিতিক ক্রিয়া সম্পাদন করব |

যেমন -

 a +b+ c থেকে পাব 
 ans = 6 
 ---> a*(b+c) থেকে পাই 
 ans = 5

অথবা আবার সরাসরি এই উত্তরটিকে আরো একটি পরিবর্তনশীল পরিসংখ্যান 'd ' type করে লিখতে পারি -

 ---> d = a+b+c
      d = 6


অথবা এই পরিবর্তনশীল পরিসংখ্যানের মূল্যগুলি সঠিক কিনা তা মিলিয়ে দেখতে পারি ওই পরিসংখ্যানগুলির নাম টাইপের দ্বারা, যেগুলি একে অপরের থেকে পৃথক করা হয়েছে কমান্ড লাইনে ‘কমা’-র সাহায্যে| যেমন-


 ---> a, b, c, d থেকে
 a= 1
 b= 2
 c= 3
 d= 6

-এতক্ষন যে একটা ধারা চলে আসছিল তাতে আমরা একটা ব্যাঘাত সৃষ্টি করব এবং একটা নতুন কমান্ড পরিবেশন করব যেটা আমাদের পূর্ববর্তী ব্যবহৃত কমান্ডগুলি এবং তারফলে যে উত্তর, তা মনে করতে সাহায্য করে| প্রথমেই আমরা কমান্ড cd টাইপ করি-

 ---> cd 
      ans = 
      /users/guest.
       

এটি হচ্ছে বর্তমান কাজের নির্দেশিকা| এবারে ডাইরি কমান্ড ব্যবহার করা হোক নিন্মলিখিতটি টাইপের মাধ্যমে –

 --->diary(‘myrecord.txt’) তারপর enter press করুন|

এখন এই কমান্ডটি একটি file তৈরী করবে “myrecord.txt”নামে, আমাদের বর্তমান কাজের নির্দেশিকাতে| বর্তমান scilab session-র একটি প্রতিলিপি এই file-র মাধ্যমে save হয়ে থাকবে| আসুন এই scilab ব্যবহারের মাধ্যমে আমরা আরো কিছু কামান্ড টাইপের দ্বারা আমরা এর সুবিধা হাতেকলমে দেখে নিই| এবার দেখি scilab কেমন করে জটিল সংখ্যা নিয়ন্ত্রন করে|মনে করুন এই জটিল সংখ্যাগুলি সূচিত হয়েছে ‘i’-র দ্বারা| প্রথমে দেখি ‘i’-র জন্য কী মূল্য নির্ধারণ করা হয়েছে-

 ---> i 
 করা i ---error 4
 undefined variable: i

এটা ভুল বা error দেখাচ্ছে| Scilab-এ পূর্বনির্ধারিত অপরিবর্তীত সংখ্যাসূচকগুলি পাওয়া যায় পারসেনটেজ সাইনের দ্বারা আগে থেকে নির্ধারিত করে| যেমন আমরা নিন্মলিখিতটিতে দেখতে পাচ্ছি –

 ---> %i 
 % i= i 

আমরা ‘I’-কে বস্তুতই একটি জটিল সংখ্যা ধরে তাকে স্কোয়ার (square) করে তার যথার্থতা যাচাই করতে পারি| যেমন –

 ---> % i * %i 
 ans= -1 

তাহলে উত্তর হল -1. আর অবশেষে -1 এর স্কোয়ার রুট (square root)করলে আমরা উত্তর পাবো = i. অর্থাৎ -

 ---> sqrt (-1)
 ans=
 i

আসুন এবার কিছু গণনা বা ক্যালকুলেশন করি ‘ i’-কে ব্যবহার করে|


 --->5*% i েথেক পায়
 ans=
 5.i
 --->(10+5*%i)
 *(2*%i)
 ans=
 -10.+20.i

চলুন দেখি আরো কিছু পূর্বনির্ধারিত অপরিবর্তিত সংখ্যাসূচকগুলি, যেগুলি scilab-এ আছে| যেমন ‘I’-এর ক্ষেত্রে, তাদের নামগুলি শুরু হয় ‘%’(পারসেনটেজ)সাইনের দ্বারা

 ---> %pi
 % pi= 3.1415927

এখানে pf pi-এর মূল্য দেখানো হয়েছে| আমরা এখন হাতেকলমে দেখব pi-এর ব্যবহার, কিছু ট্রিগোনোমেট্রিক(trigonometric)কাজে|

 ---> sin(%pi/2),and cos(%pi/2)enter
 ans= 1
 ans= 6.1 2 3 D - 1 7


লক্ষ্য করুন যে দ্বিতীয় উত্তরটি হচ্ছে শূণ্য (zero),সব ব্যবহারিক উদ্দেশ্যে|এটি ‘machine epsilon’ নামক একটি সংখ্যা বা number-র সঙ্গে সম্পর্কিত, যেটির সম্বন্ধে অন্য একটি স্পোকেন টিউটোরিয়ালে বলা হয়েছে|

ন্যাচরল লোগারিথাম-এর মূল ভিত্তি হল আর একটি পূর্বনির্ধারিত অপরিবর্তিত সংখ্যাসূচী|


 --->%e
 %e= 2.7182818


এখানে e-এর মূল্য দেখানো হয়েছে| আমরা একই ফল বা result পেতে পারি exponential function-এর দ্বারা|


 exp of 1.
 ---> exp(1) 
 ans=
    2.7182818


আপনি লক্ষ্য করুন দুটি উত্তরই এক| যদিও


 exp(2)যে উত্তরিট দেয় অর্থাত
 ans = 
     7.3890561


এই উপরের উত্তরটি আমরা আবার পেতে পারি %e square-র দ্বারা|

 ---> %e^2
 ans = 
     7.3890561


মনে করে দেখুন যে আমরা আমাদের কার্যবিবরণী লিপিবদ্ধ করেছিলাম myrecord.txt নামক ফাইলে diary কমান্ডের সাহায্যে| এবার আমরা এই diary ফাইলটি বন্ধ করি|


 --->diary(O) diary of zero

এই কমান্ডটি myrecord.txt ফাইলটি বন্ধ করবে ও সেই সঙ্গে ফাইলটি save করবে| আবার মনে করে দেখুন যে এই ফাইলটি তৈরী করা হয়েছিল বর্তমান কাজের নির্দেশিকাতে| চলুন এই ফাইলটিকে আবার খুলি ও c/users/anuradha/myrecord.txt-এটিতে চোখ বোলায়| লক্ষ্য করুন যে সমস্ত কার্য বিবরণী কমান্ড ও তার সঙ্গতিপূর্ণ উত্তর দুটোই, যেগুলি আমরা scilab থেকে পেয়েছি, এই ফাইলে সংরক্ষিত আছে| যখন কোনো program ধীরে ধীরে গড়ে ওঠে, তখন তার জন্য অনেক গবেষণা করতে হয় একটা যথোপযুক্ত সংকেতলিপি (code) পাবার জন্য|মোটের ওপর শতকরা 5 ভাগ প্রচেষ্টিত সংকেতলিপি হল ব্যবহারযোগ্য| যদি diary কমান্ডটি ব্যবহার করা না হয়, তাহলে কোন্ কোন্ কমান্ডগুলি কাজ করছে বা করছে না তা অনুসরণ করা খুবই মুশকিল হয়| আর তাইজন্য diary কমান্ডটি হল সর্বত্তম উপায় ই বিষয়টি সম্বোধন করার জন্য| এই diary কামান্ডটি ব্যবহারের মাধ্যমে যে ফাইলটি সৃষ্টি করা হয়েছে, সেটি প্রয়োজন মত edit করা ও দরকার হলে যে সমস্ত লাইনগুলি অপ্রয়োজনীয় সেগুলিকে delete করে দিতে পারি একটা ভালো কাজের সংকেতলিপি তৈরী করার জন্য|

আমরা যদি একবার ফাইলটিকে বন্ধ করে দিই diary command (0) ব্যবহারের মাধ্যমে, তবে অতিরিক্ত কোনো কার্য বিবরণী আর ঐ ফাইলে সংরক্ষণ করা যাবেনা| আমরা যদি আর একবার ঐ session টি কে সংরক্ষণ করতে চায় তবে আবার আমাদের ঐ diary command-টি চালু করতে হবে| মনে রাখবেন যে এতে diary command-টি ফাইলটিকে ওভাররাইট করতে পারে| সেইজন্য এই ফাইলটিতে গুরুত্বপূর্ণ ব্যবহারযোগ্য কোনো তথ্য থাকে তাহলে ভালো হয় যদি অন্য ফাইল নাম ব্যবহার করা হয় diary command-এ



আমি এবারে ফাইলটি বন্ধ করছি|browser scroll down করুন নোটপ্যাড ফাইলে| scilab-এ ম্যাটরিক্স তৈরী করা খুবই সহজ| চলুন আমরা 3x3ম্যাটরিক্সটি নিরুপন করি|-

 --->A =[1 2 3 ; 4 5 /2 6; 7 8 +5*%i 0 ]
     A=
      1. 2. 3.
      4. 2.5 6.
      7. 8+5.i  0


লক্ষ্য করে দেখুন যে সেমিকোলনগুলি ব্যবহৃত হয়েছে একএকটি লাইনের শেষ বোঝানোর জন্য|scilab-র সবথেকে বড় সুবিধা হল যে আমাদেরকে ম্যাটরিক্স A-র কোনো মাপ সুনির্দিষ্টিত করে বলে দিতে হবে না বা এর type বা নমুনা নির্ধারণ করে দিতে হবে না| ম্যাটরিক্সকে আবার লাইন বাই লাইনও enter করা যায়- --->c = [1 2 enter --->3 4] enter দাবান C =

  1. 2.
  3. 4.


আগেই দেখানো হয়েছে সেমিকোলন ব্যবহার করা হয় ম্যাটরিক্সের ক্ষেত্রে|এটির অর্থাৎ সেমিকোলনের ব্যবহারের আরো একটি গুরুত্বপূর্ণ উদ্দেশ্য সাধন করে| আর সেটি হল এটি গণনার ফলের পুনরাবৃত্তি ঘটায় না | যেমন—


 --->B= 1+2; enter 


এখানে লক্ষ্য করুন যে B- এর ফলটির পুনরাবৃত্তি হয় নি| এটা একমাত্র সেমিকোলন ব্যবহারের জন্যই ঘটেছে|আমরা B-এর ফল দেখতে পারি এটিকে সুনির্দিষ্টিত ভাবে টাইপ করে|-

 ---> B enter
      B= 
       3. 


মনে রাখবেন যে এই সেমিকোলনের ব্যবহার খুবই জনপ্রিয় কারণ এতে বিশালায়তনের আউটপুটকে কমানো অর্থাৎ সাপরেস করা সম্ভব হয় |


আমরা আমাদের এই ম্যাটরিক্সের গণনার ওপর আলোচনা এখানে স্থগিত রাখছি| এই বিষয়টি অন্য একটি স্পোকেন টিউটোরিয়ালে বিষদে আলোচনা করা হয়েছে| কিছুকিছু ক্ষেত্রে আপনি যদি কোনো সাহায্য চান এ বিষয়ে , তবে scilab –র মেনুবারে গিয়ে help command-টি ব্যবহার করতে পারেন| এবারে আমি help browser-টি বন্ধ করলাম|

Clc command –টি scilab-র screen clear অর্থাৎ পরিষ্কার করতে সাহায্য করবে | যেমনটি দেখানো হয়েছে

 --->clc

উপরের বা নীচের অর্থাৎ up-down arrow key ব্যবহার করা যেতে পারে আগের কার্যকর করা কমান্ড গুলিকে দেখবার জন্য| এই up-down arrow ব্যবহার করার সময় আপনি যেকোনো command-এ দাঁড়াতে পারেন ও return key press –করে তা চালু রাখতে পারেন| আপনি প্রয়োজনমত কোনো command-এডিট্ ও করতে পারেন| Tab key ব্যবহারের মাধ্যমে command-গুলি অটোকমপ্লিট্ হয় এবং আমরা অনেক প্রাপ্তিসাধ্য অপশন্ পেয়ে যায় বেছে নেবার জন্য| এর সঙ্গে এখানই আমাদের এই স্পোকেন টিউটোরিয়াল “ গেটিং স্টার্টেড উইথ্ সাইলল্যব” সমাপ্ত হল| scilab –র আরো অনেক প্রয়োগ আছে যেগুলো সম্পর্কে অন্যান্য স্পোকেন টিউটোরিয়ালে আলোচনা করা হয়েছে| এর জন্য scilab-র link-এ নজর রাখুন|

Scilab-র ওপর স্পোকেন টিউটোরিয়ালটি হল “talk to a teacher” নামক প্রযেক্টের অংশবিষেশ যেটি National Mission on Education through ICT –এর দ্বারা সহায়ক | এবিষয়ে আরো তথ্য পাওয়া যাবে নিন্মলিখিত link-এ

http://spoken-tutorial.org/ NMEICT-Intro

আমি নীলাঞ্জনা চৌধুরী মুম্বাই থেকে আপনাদের অসংখ্য ধন্যবাদ জানাই আমাদের সাথে থাকার জন্যে | নমস্কার |

Contributors and Content Editors

Kaushik Datta, Satarupadutta