OpenModelica/C3/Modelica-Packages/Bengali

From Script | Spoken-Tutorial
Revision as of 15:44, 11 September 2018 by Kaushik Datta (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Time Narration
00:01 Packages এর স্পোকেন টিউটোরিয়ালে আপনাদের স্বাগত।
00:05 এখানে আমরা শিখতে যাচ্ছি: Modelica তে classes এর একটি package বানানো।
00:12 একটি package এ classes রেফারেন্স করা।
00:16 একটি package ইম্পোর্ট করা বং Modelica Library ব্যবহার করা।
00:22 টিউটোরিয়ালটি রেকর্ড করতে ব্যবহার করছি: OpenModelica 1.9.2 এবং Ubuntu অপারেটিং সিস্টেম সংস্করণ 14.04 এবং gedit.
00:35 Windows ইউসার gedit এর বদলে Notepad বা অন্য কোন টেক্সট এডিটর ব্যবহার করতে পারেন।
00:42 টিউটোরিয়ালটি বুঝতে এবং অনুশীলন করতে, Modelica তে class এবং type definition সম্পর্কে জানা প্রয়োজন।
00:51 পূর্বের টিউটোরিয়াল আমাদের ওয়েবসাইটে উল্লিখিত। সেগুলি দেখুন।
00:56 একটি Package, Modelica তে একটি বিশেষ class.
01:01 এটি classes এর একটি সংগ্রহ।
01:04 এটি single file বা directory হিসাবে সংরক্ষণ করা যায়।
01:08 প্রথমে আমরা single file storage সম্পর্কে শিখব।
01:12 single file storage এ package সম্পর্কিত সকল classes একটি single file এ লেখা হয়।
01:20 এটির সুপারিশ করা হয় না কারণ কিছু ক্ষেত্রে এটি অনেক লম্বা হতে পারে।
01:24 এখন একটি package এর জন্য single file storage প্রদর্শন করতে OMEdit এ যান।
01:31 আমাদের ওয়েবসাইটে উপলব্ধ সকল ফাইল ডাউনলোড এবং সংরক্ষণ করুন।
01:36 আপনি দেখেন যে সেখানে spokenTutorialExamples নামের একটি ফাইল এবং একটি ফোল্ডার রয়েছে।
01:43 তাদের উভয় ডাউনলোড করুন।
01:46 এখন OMEdit এ প্রয়োজনীয় ফাইল খুলুন।
01:51 Ctrl + O টিপুন।
01:54 আপনার সিস্টেমে সঠিক স্থানে যান এবং spokenTutorialExamples.mo,
02:02 bouncingBallWithUserTypes.mo এবং bouncingBallWithImport চয়ন করুন।
02:08 আপনি তাদের প্রতিটি আলাদাভাবে খুলতে পারেন।
02:12 মনে রাখবেন আমি spokenTutorialExamples ফোল্ডার চয়ন করিনি।
02:17 আমরা ডাইরেক্টরি স্টোরেজে গেলে এটির সম্পর্কে আরো আলোচনা করব।
02:23 Open এ ক্লিক করুন।
02:25 আপনি দেখেন যে spokenTutorialExamples প্যাকেজ এখন Libraries Browser এ দেখাচ্ছে।
02:32 spokenTutorialExamples আইকনে ডবল ক্লিক করুন।
02:37 ফাইল Icon/Diagram View তে খুললে Text View তে যান।
02:42 এখন spokenTutorialExamples সম্পর্কে আলোচনা করি।
02:47 প্রথম লাইন package এর নাম সংজ্ঞায়িত করে।
02:51 স্পষ্টতই, এই প্যাকেজের নাম spokenTutorialExamples.
02:56 এই প্যাকেজে freefall class bouncingBall মডেল এবং bouncingBallWithUserTypes মডেল রয়েছে।
03:08 end statement প্যাকেজের সমাপ্তি সংজ্ঞায়িত করে।
03:13 আমরা এই প্যাকেজের সকল classes এবং models এক জায়গায় দেখেছি।
03:19 এখন, শিখব যে একটি প্যাকেজে আলাদা আলাদা classes দেখা।
03:24 Libraries Browser এ spokenTutorialExamples এর পাশে (+) বোতামে ক্লিক করুন।
03:31 এটি এই প্যাকেজে স্থিত classes এর নাম প্রদর্শন করে।
03:36 Libraries Browser এ freeFall এ ডাবল ক্লিক করুন।
03:40 এখন freeFall class খুলেছে।
03:43 একটি প্যাকেজের সকল classes সিমুলেট হতে পারে।
03:47 কিন্তু প্যাকেজ নিজে সিমুলেট হতে পারে না।
03:52 এখন spokenTutorialExamples ট্যাবে ফিরে যাই।
03:57 লক্ষ্য করুন Simulate বোতাম টুলবারে দেখায় না যা দেখায় যে প্যাকেজ সিমুলেট হবে না।
04:06 এখন OMEdit থেকে spokenTutorialExamples আনলোড করি।
04:12 ডান ক্লিক করুন এবং unload চয়ন করুন। Yes চয়ন করুন।
04:18 ডাইরেক্টরি স্টোরেজ দেখানোর সময় সংঘটনা এড়াতে এটি করা হয়।
04:24 এখন স্লাইডে ফিরে যাই।
04:27 Directory storage classes আলাদা আলাদা ফাইলে সংরক্ষিত।
04:32 ডাইরেক্টরীর নাম প্যাকেজের মত একই।
04:37 package.mo নামক ফাইল ডাইরেক্টরিতে অন্তর্ভুক্ত করতে হবে এবং প্রতিটি class, within statement দ্বারা শুরু হয়।
04:47 এখন, spokenTutorialExamples ফোল্ডার প্রদর্শন করি যা আপনি ডাউনলোড করেছেন।
04:54 লক্ষ্য করুন এই ফোল্ডার সেই প্যাকেজ দেখায় যা আমরা ইতিমধ্যে আলোচনা করেছি।
05:02 এই ফোল্ডারের ফাইল স্ট্রাকচার দেখি।
05:06 সেই স্থানে যান যেখানে আপনি সিস্টেমে ফাইল সংরক্ষণ এবং ডাউনলোড করেছেন।
05:12 spokenTutorialExamples ফোল্ডারে ডাবল ক্লিক করুন।
05:17 লক্ষ্য করুন ফোল্ডারে এই ফাইল রয়েছে: package.mo, freeFall.mo, bouncingBallWithUserTypes এবং bouncingBall
05:30 আমরা ডাইরেক্টরী স্টোরেজ সম্পর্কে অধিক OMEdit এবং gedit এদের ব্যবহার দ্বারা জানবো।
05:38 উল্লেখ্য, package.mo বলে যে এই ফোল্ডার একটি প্যাকেজ বর্ণন করে।
05:45 এই ফাইল ছাড়া, ফোল্ডারটি Modelica package উপস্থাপন করে না।
05:51 ডাইরেক্টরী স্টোরেজ প্রদর্শন করতে এখন আমরা OMEdit এ যাই।
05:57 Ctrl + O টিপুন।
05:59 spokenTutorialExamples ফোল্ডারে নেভিগেট করুন যা ডাউনলোড করেছেন।
06:05 এই ফোল্ডার থেকে package.mo চয়ন করুন এবং Open এ ক্লিক করুন।
06:11 spokenTutorialExamples প্যাকেজ এখন Libraries Browser এ দেখাবে।
06:17 spokenTutorialExamples আইকনে ডাবল ক্লিক করুন।
06:22 এটি Icon/Diagram View খুললে প্যাকেজ Text View তে খুলুন।
06:27 নীচে স্ক্রোল করলে আপনি দেখেন যে এই প্যাকেজটি ঠিক একই যা single file storage এ দেখেছি।
06:36 সিঙ্গল ফাইল এবং ডাইরেক্টরী স্টোরেজের মাঝের পার্থক্য তখনই বোঝা যেতে পারে যখন এই package কে gedit এর মত টেক্সট এডিটর ব্যবহার করে খুলি।
06:47 আপনি Windows ব্যবহার করলে Notepad বা অন্য কোন টেক্সট এডিটর ব্যবহার করতে পারেন।
06:53 এখন OMEdit থেকে spokenTutorialExamples প্যাকেজ আনলোড করি।
06:59 spokenTutorialExamples ফোল্ডারে স্যুইচ করুন এবং সকল ফাইল gedit ব্যবহার করে খুলুন।
07:08 এখন সকল ফাইল gedit এ খোলা রয়েছে।
07:13 প্রথমে package.mo প্যাকেজ দেখি।
07:17 within statement দেখায় যে এই ফাইল package উপস্থাপন করে।
07:21 এই প্যাকেজের নাম হল spokenTutorialExamples.
07:25 লক্ষ্য করুন যে ফোল্ডারের নামও spokenTutorialExamples ছিল।
07:31 package.mo ফাইলে শুধুমাত্র within statement এবং package ঘোষণাকরণ থাকতে পারে।
07:38 এখন freeFall ট্যাবে সুইচ করি।
07:41 এই within statement দেখায় যে freefall ক্লাস spokenTutorialExamples প্যাকেজের অন্তর্গত।
07:49 এই ফাইলের বাকি অংশে freeFall ক্লাসের সম্পর্কিত তথ্য রয়েছে।
07:54 আপনি দেখেন যে এই প্যাকেজের অন্য মডেল যেমন bouncingBallWithUserTypes এবং bouncingBall, এই ধরণের একই সিনট্যাক্স অনুসরণ করে।
08:04 কিন্তু, আমরা OMEdit এ প্যাকেজ খুললে আমরা within statement লক্ষ্য করি না।
08:11 এটি ইঙ্গিত করে within statement, ফাইলের গঠন সনাক্ত করতে OMEdit কে সাহায্য করে।
08:17 তাই package প্রদর্শন করার সময় এটি OMEdit দ্বারা বাদ দেওয়া হয়েছে।
08:22 স্লাইডে ফিরে আসি।
08:25 এখন Modelica Library সম্পর্কে আরো বুঝবো।
08:29 Modelica Library একটি ওপেন সোর্স প্যাকেজ।
08:33 OMEdit নিজেই এটি প্রতিটি সেশনের জন্য লোড করে।
08:38 এটি Libraries Browser এ দেখা যাবে।
08:41 mechanical, electrical এবং thermal ডোমেন থেকে এতে classes রয়েছে।
08:46 এই লাইব্রেরীর classes উল্লিখিত এবং ব্যবহৃত হতে পারে।
08:51 Modelica Library প্রদর্শন করতে এখন OMEdit এ যাই।
08:57 Libraries Browser এ Modelica আইকন খুঁজুন এবং বিস্তৃত করুন।
09:03 লক্ষ্য করুন যে Modelica Library তে Blocks, Complex Blocks ইত্যাদি প্যাকেজ রয়েছে।
09:10 আপনি দেখেন যে একটি প্যাকেজে আরো প্যাকেজ থাকতে পারে যা এখানে স্পষ্ট রয়েছে। বিশেষ রূপে এটি SI units প্যাকেজ।
09:22 এটি বিস্তৃত করুন।
09:25 এই প্যাকেজে Angle, Length, Position ইত্যাদির মত ভৌতিক পরিমাণের ধরণ নির্ধারণ রয়েছে।
09:32 এখন দেখবো যে এইভাবে bouncingBallWithImport ক্লাস দ্বারা এই ধরনের টাইপ নির্ধারণ ব্যবহার করা।
09:39 SIunits সংকুচিত করুন।
09:42 এবং bouncingBallWithImport এবং bouncingBallWithUserTypes এ ডবল ক্লিক করুন।
09:49 ভালো দৃশ্যতার জন্য OMEdit উইন্ডোটি বামদিকে সরাই।
09:55 আমরা প্রথমে bouncingBallWithUserTypes দেখবো।
09:59 আমরা ইতিমধ্যে পূর্বের টিউটোরিয়ালে এই মডেল সম্পর্কে শিখেছি।
10:03 এই মডেলে Length এবং Velocity নামক ধরণ নির্ধারণ রয়েছে।
10:09 প্রতিটি মডেলে তাদের আলাদাভাবে নির্ধারণ করার বদলে SIunits এ ধরন নির্ধারণ ব্যবহার করতে পারি।
10:18 আমরা দেখি যে bouncingBallWithImport মডেল দ্বারা এটি কিভাবে করে।
10:23 এখন bouncingBallWithImport এ যাই।
10:27 একটি প্যাকেজে ক্লাস, dot ব্যবহার করে রেফারেন্স করা হয়।
10:32 Modelica.SIunits, SIunits প্যাকেজ নির্দেশ করে যা Modelica লাইব্রেরীর অন্তর্গত।
10:39 ভ্যারিয়েবল h কে Length এর ধরন ঘোষণা করতে হবে যা SIunits প্যাকেজে নির্ধারিত।
10:47 একইভাবে, ভ্যারিয়েবল v কে Velocity এর ধরন ঘোষণা করতে হবে যা SIunits প্যাকেজে নির্ধারিত।
10:56 লক্ষ্য করুন প্যারামিটার radius এবং g একইভাবে ঘোষণা করা যেতে পারে।
11:03 এখন এই মডেল Simulate করি।
11:07 টুলবারে Simulate বোতামে ক্লিক করুন।
11:10 পপ আপ উইন্ডো বন্ধ করুন।
11:13 Variables Browser এ h চয়ন করুন।
11:17 লক্ষ্য করুন প্রাপ্ত প্লট একই রয়েছে যেমনকি bouncingBallWithUserTypes এর ক্ষেত্রে দেখানো হয়েছে।
11:25 এখন h অচয়নিত করুন। ফলাফল মুছুন। Modeling Perspective এ যান।
11:33 প্রতিবার কোনো ক্লাসের সম্পূর্ণ নাম লেখা খুব বিরক্তিকর।
11:38 এটি import statement দ্বারা সহজে করা যেতে পারে।
11:42 এখন, কিছু statements লিখব যা import এর ব্যবহার দেখায়।
11:48 লেখা স্টেটমেন্ট import-statements.txt নামে একটি টেক্সট ফাইলে দেওয়া হয়েছে।
11:56 সেই স্থানে যান যেখানে এটি আপনার সিস্টেমে সংরক্ষণ করেছেন।
12:01 import-statements.txt তে ডাবল ক্লিক করুন। ফাইলটি খুলতে Windows ইউসার Notepad ব্যবহার করতে পারে।
12:11 ফাইলটি এখন gedit এ খুলেছে।
12:14 Ctrl + C দ্বারা বা ডান-ক্লিক করে সকল স্টেটমেন্ট কপি করুন।
12:21 OMEdit এ যান।
12:23 মডেলের শুরুতে সকল statements পেস্ট করুন।
12:28 Length এবং Velocity এর জন্য declaration statement মুছে দিন, যা আগে সংজ্ঞায়িত করা হয়েছে।
12:36 অতিরিক্ত স্পেস মুছে ফেলুন।
12:39 Ctrl + S টিপে মডেলটি সংরক্ষণ করুন।
12:43 এখন মডেলটি সম্পূর্ণ এবং সিমুলেশনের জন্য প্রস্তুত।
12:48 এটি সিমুলেট করতে Simulate বোতামে ক্লিক করুন।
12:52 পপ আপ উইন্ডো বন্ধ করুন।
12:54 Variables Browser এ h চয়ন করুন।
12:58 লক্ষ্য করুন যে প্লটটি পূর্বের ক্ষেত্রের অনুরূপ।
13:03 h অচয়নিত করুন এবং ফলাফল মুছুন।
13:07 Modeling perspective এ যান।
13:10 এখন import statements বোঝার চেষ্টা করি।
13:15 Modelica, import statements দ্বারা এখানে উল্লিখিত পাথ ব্যবহার করে Length এবং Velocity ধরণের নির্ধারণ অবলোকন করে।
13:25 এটি প্রতিবার প্যাকেজকে উল্লেখ করার সমস্যা থেকে রক্ষা করে।
13:30 lookup rules এর বিস্তারিত আলোচনা এই টিউটোরিয়ালের সুযোগের বাইরে।
13:36 এখন দেখি যে কিভাবে আমরা import statement দ্বারা এই দুটি import statements প্রতিস্থাপন করতে পারি। দুটি statements মুছে দিন।
13:47 লিখুন import (space) Modelica (dot) SIunits (dot) asterisk (semicolon)
13:58 Ctrl + S টিপে মডেলটি সংরক্ষণ করুন।
14:02 এই স্টেটমেন্ট wild-card import হিসাবে পরিচিত।
14:06 এইভাবে, স্পষ্টভাবে এটি উল্লেখ না করেই SIunits থেকে যে কোনো class অ্যাক্সেস করা যায়।
14:14 এখন এই মডেল সিমুলেট করি।
14:17 Simulate বোতামে ক্লিক করুন।
14:20 পপ আপ উইন্ডো বন্ধ করুন।
14:22 Variables Browser এ h চয়ন করুন।
14:25 আপনি আবার প্লটে মিল দেখতে পারেন।
14:29 h অচয়নিত করুন এবং ফলাফল মুছুন।
14:32 Modeling perspective এ ফিরে যান।
14:35 স্লাইডে ফিরে যান।
14:38 অনুশীলনী হিসাবে, Length এবং Velocity হিসাবে যথাক্রমে freeFall ক্লাসের ঘোষিত ভ্যারিয়েবল h এবং v লিখুন।
14:47 এই ধরণের নির্ধারণ Modelica লাইব্রেরীর SIunits প্যাকেজে পাওয়া যায়।
14:54 এটি আমাদের টিউটোরিয়ালের শেষে নিয়ে আসে।
14:58 নিম্ন লিঙ্কে উপলব্ধ ভিডিওটি দেখুন : ]org /What\_is\_a\_Spoken\_Tutorial
15:02 এটি প্রকল্পকে সারসংক্ষেপে দেখায়।
15:05 আপনার এই স্পোকেন টিউটোরিয়ালে কোন প্রশ্ন থাকলে নিম্ন সাইটে যান।
15:11 আমরা জনপ্রিয় বইগুলির সমাধানকৃত উদাহরণের কোডিং নির্দেশ করি।
15:15 আমরা মানদণ্ড এবং সার্টিফিকেট দেই। আরো জানতে এই সাইটে যান।
15:21 আমরা কমার্শিয়াল সিমুলেটর ল্যাবগুলি OpenModelica তে মাইগ্রেট করতে সহায়তা করি।
15:26 আরো জানতে এই সাইটে যান।
15:29 Spoken Tutorial প্রকল্প ভারত সরকারের NMEICT, MHRD দ্বারা সমর্থিত।
15:36 আমরা OpenModelica উন্নয়ন দলকে তাদের সমর্থনের জন্য ধন্যবাদ জানাই।
15:41 আই আই টী বোম্বে থেকে আমি বিদায় নিচ্ছি। অংশগ্রহনের জন্যে ধন্যবাদ।

Contributors and Content Editors

Kaushik Datta, Satarupadutta