OpenModelica/C2/Control-flow-and-Event-handling/Oriya

From Script | Spoken-Tutorial
Revision as of 13:30, 5 December 2017 by Pradeep (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Time Narration
00:01 ବନ୍ଧୁଗଣ, Control flow and Event handling ଉପରେ ଥିବା ସ୍ପୋକନ୍ ଟ୍ୟୁଟୋରିଆଲକୁ ସ୍ଵାଗତ
00:07 ଏହି ଟ୍ୟୁଟୋରିଆଲରେ ଆମେ, କିପରି if-else ଷ୍ଟେଟମେଣ୍ଟକୁ ବ୍ୟବହାର କରିବା, time ଓ state କାର୍ଯ୍ୟଗୁଡିକୁ ପରିଚାଳିତ କରିବା ତଥା when ଷ୍ଟେଟମେଣ୍ଟକୁ କିପରି ବ୍ୟବହାର କରାଯାଏ ଶିଖିବା
00:19 ଏହି ଟ୍ୟୁଟୋରିଆଲକୁ ରେକର୍ଡ କରିବା ପାଇଁ ମୁଁ OpenModelica ଭର୍ସନ୍ 1.9.2 ଏବଂ Ubuntu Linux OS 14.04 ବ୍ୟବହାର କରୁଛି
00:30 କିନ୍ତୁ, ଏହି ପ୍ରକ୍ରିୟା Windows, Mac OS X କିମ୍ବା ARM ଉପରେ FOSSEE OS ଭଳି ସମାନ ଅଟେ
00:38 ଏହି ଟ୍ୟୁଟୋରିଆଲକୁ ବୁଝିବା ପାଇଁ ଆପଣ ଫୀଜିକାଲ୍ ସିଷ୍ଟମଗୁଡିକର ସମୀକରଣ ଆଧାରିତ ମୋଡେଲିଙ୍ଗ,
00:47 ଯେକୌଣସି ପ୍ରୋଗ୍ରାମିଙ୍ଗ ଲାଙ୍ଗୁୟେଜରେ ବ୍ରାଞ୍ଚିଙ୍ଗ, Modelicaରେ class ଡେଫିନିଶନ୍ ଜାଣିଥିବା ଆବଶ୍ୟକ
00:53 ପ୍ରାକ୍ ଆବଶ୍ୟକତା ଟ୍ୟୁଟୋରିଆଲଗୁଡିକ Spoken Tutorial ୱେବସାଇଟରେ ଉଲ୍ଲେଖ ଅଛି. ଦୟାକରି ସେଗୁଡିକୁ ଅଭ୍ୟାସ କରନ୍ତୁ
01:00 freeFall କ୍ଲାସ୍ ଯାହା ପୂର୍ବ ଟ୍ୟୁଟୋରିଆଲଗୁଡିକରେ ଆଲୋଚିତ ହୋଇସାରିଛି
01:05 ବର୍ତ୍ତମାନ ଏଥିରେ ଗୋଟିଏ constraintକୁ ସଂଯୁକ୍ତ କରନ୍ତୁ
01:08 t = 0.5 ସେକେଣ୍ଡ ହେବା ପର୍ଯ୍ୟନ୍ତ ବଲ୍ ସ୍ଥିର ଅବସ୍ଥାରେ ରହିବ. Gravity ଅଧୀନରେ ଫ୍ରୀ ଫଲ୍ , ସମୟ t = 0.5 ସେକେଣ୍ଡରେ ଆରମ୍ଭ ହେବ
01:19 ମୁଁ timeEventExample ନାମକ ଗୋଟିଏ model ସୃଷ୍ଟି କରିସାରିଛି ଯାହା କଣ୍ଡିଶନକୁ ସିମୁଲେଟ୍ କରିବ
01:25 spoken tutorial ୱେବସାଇଟରେ ଥିବା Code Files ଲିଙ୍କରେ timeEventExample ଫାଇଲ୍ ଉପଲବ୍ଧ ଅଛି
01:32 ଦୟାକରି Code Files ଲିଙ୍କରେ ଥିବା ସମସ୍ତ ଫାଇଲଗୁଡିକୁ ଡାଉନଲୋଡ୍ କରିବା ସହିତ ସେଭ୍ କରନ୍ତୁ
01:38 ଆପଣଙ୍କ ସୁବିଧା ପାଇଁ freeFall class ମଧ୍ୟ ଉପଲବ୍ଧ ଅଛି
01:43 ବର୍ତ୍ତମାନ OMEditକୁ ଫେରିଆସନ୍ତୁ
01:45 ମୁଁ ଏହାକୁ ମୋ ସିଷ୍ଟମରେ ଲଞ୍ଚ କରିସାରିଛି
01:49 Ubuntu Operating Systemରେ OMEditକୁ ଖୋଲିବା ପାଇଁ ଉପରିସ୍ଥ ବାମପଟେ ଥିବା Dash Home ଆଇକନ୍ ଉପରେ କ୍ଲିକ୍ କରନ୍ତୁ
01:58 Search barରେ OMEdit ଟାଇପ୍ କରିବା ସହିତ OMEdit ଆଇକନ୍ ଉପରେ କ୍ଲିକ୍ କରନ୍ତୁ. ପଛକୁ ଫେରିଆସନ୍ତୁ
02:06 ଧ୍ୟାନଦିଅନ୍ତୁ: Windowsର ବ୍ୟବହାରକର୍ତ୍ତାମାନେ ସମାନ ଭାବେ Start ମେନୁରେ OMEdit ପାଇଁ ସର୍ଚ କରିପାରିବେ ଏବଂ ଏହାକୁ ଖୋଲନ୍ତୁ
02:13 timeEventExample ଫାଇଲକୁ ଖୋଲିବା ସହିତ Open Model/Library File ନାମକ ଟୂଲ୍ ଉପରେ କ୍ଲିକ୍ କରନ୍ତୁ
02:21 timeEventExample ଫାଇଲକୁ ଆପଣଙ୍କ ସିଷ୍ଟମରେ ପ୍ରାପ୍ତ କରିବା ସହିର Openରେ କ୍ଲିକ୍ କରନ୍ତୁ
02:28 ଏହି ଫାଇଲକୁ ଖୋଲିବା ପାଇଁ ବିକଳ୍ପ ଭାବେ ଆପଣ File ମେନୁକୁ ବ୍ୟବହାର କରିପାରିବେ
02:34 ଧ୍ୟାନଦିଅନ୍ତୁ ଯେ Libraries browserରେ timeEventExample ଦୃଶ୍ୟମାନ ହେଉଛି
02:39 ଏହି ଆଇକନ୍ ଉପରେ ରାଇଟ୍ କ୍ଲିକ୍ କରିବା ସହିତ View classକୁ ଚୟନ କରନ୍ତୁ
02:44 ମୋଡେଲ୍ ବର୍ତ୍ତମାନ Diagram viewରେ ଖୋଲିଯାଇଛି
02:47 ତୃତୀୟ ବଟନ୍ ଉପରେ କ୍ଲିକ୍ କରନ୍ତୁ ଯାହା Text View ଅଟେ
02:51 ଆମେ ଆଲୋଚନା କରିସାରିଛେ ଯେ Modelicaରେ model ଓ class ସମାନ ଭାବେ ବ୍ୟବହୃତ ହୋଇଥାଏ
02:58 ଏହି modelର ନାମ timeEventExample ଅଟେ
03:02 ଏହି ଭଳି Commentଗୁଡିକୁ ଗୋଟିଏ model or classର ପ୍ରଥମ ଲାଇନରେ ଲେଖା ଯାଇପାରିବ
03:08 freeFall class ଭଳି h, v ଓ g ସମାନ ପରିମାଣକୁ ଉପସ୍ଥାପିତ କରିବେ
03:16 initial equation ବିଭାଗ ପ୍ରାରମ୍ଭିକ ଅବସ୍ଥାଗୁଡିକୁ ଧାରଣ କରିଥାଏ
03:21 ସମୟ t = 0ରେ hର ଭେଲ୍ୟୁ 30m(ମିଟର) ଅଟେ
03:26 ସମୟ t = 0ରେ vର ଭେଲ୍ୟୁ 0 ଅଟେ
03:31 ଏହି modelର ସମୀକରଣ ବିଭାଗର ଆରମ୍ଭକୁ Equation ସୂଚୀତ କରୁଅଛି
03:36 ବର୍ତ୍ତମାନ ସ୍ଲାଇଡରେ ବର୍ଣ୍ଣନା ହେବା ଭଳି constraintକୁ କିପରି ଇନସର୍ଟ କରାଯାଏ ଚାଲନ୍ତୁ ଦେଖିବା
03:43 ଧ୍ୟାନଦିଅନ୍ତୁ ଯେ ପ୍ରଦର୍ଶିତ ହେବା ଭଳି equation ବିଭାଗରେ ଗୋଟିଏ if-else block ଅଛି
03:48 ଏହି if-else blockର ପ୍ରତ୍ୟେକ ଷ୍ଟେଟମେଣ୍ଟକୁ ବୁଝିବା ପାଇଁ ଚେଷ୍ଟା କରନ୍ତୁ
03:53 if ଷ୍ଟେଟମେଣ୍ଟ time ଭେରିଏବଲ୍ ଉପରେ ଗୋଟିଏ constraintକୁ ସ୍ଥାପନ କରୁଛି
03:58 Modelicaରେ time ଗୋଟିଏ ବିଲ୍ଟ ଇନ୍ ଭେରିଏବଲ୍ ଅଟେ
04:01 ଗୋଟିଏ class or modelରେ ଏହାକୁ ନିର୍ଦ୍ଦିଷ୍ଟ ଭାବେ ଘୋଷଣା କରିବାର ଆବଶ୍ୟକତା ନାହିଁ
04:06 0.5 ସେକେଣ୍ଡ ସମୟ ପରେ ବଲ୍ ଫ୍ରୀ ଫଲ୍ ଅନୁଭବ କରିବ
04:12 ତେଣୁ ଏହି ଦୁଇଟି ସମୀକରଣ, freeFall classରେ ଥିବା ସମାନ ସମୀକରଣଗୁଡିକୁ ଉପସ୍ଥାପନ କରୁଅଛି
04:19 else branch, equationଗୁଡିକୁ ଧାରଣ କରିଥାଏ ଏବଂ ଏଗୁଡିକ ନିଷ୍ପାଦନ ହୁଅନ୍ତି ଯେତେବେଳେ ସମୟ 0.5 ସେକେଣ୍ଡରୁ କମ୍ ଥାଏ
04:27 ସମୟ 0.5 ସେକେଣ୍ଡରୁ କମ୍ ଥିବା ବେଳେ ବଲ୍ ସ୍ଥିର ଅବସ୍ଥାରେ ରହିଥାଏ
04:32 ତେଣୁ ଏହି କ୍ଷେତ୍ରରେ ଏହି ଦୁଇଟି equation ଭଲ କାର୍ଯ୍ୟ କରିଥା’ନ୍ତି
04:36 end if, if-else blockର ସମାପ୍ତିକୁ ସୂଚିତ କରେ
04:41 modelଟି ବର୍ତ୍ତମାନ ସମ୍ପୂର୍ଣ୍ଣ ହୋଇଛି
04:44 Simulate ବଟନ୍ ଉପରେ କ୍ଲିକ୍ କରିବା ସହିତ ଏହାକୁ ସିମୁଲେଟ୍ କରନ୍ତୁ
04:48 ବର୍ତ୍ତମାନ Plotting perspective ଖୋଲିଯାଇଛି
04:51 Variables browserରେ hକୁ ଚୟନ କରନ୍ତୁ
04:55 ଏହା h versus time ପ୍ଲଟକୁ ସୃଷ୍ଟି କରିଥାଏ
04:58 ଯେହେତୁ ବଲ୍ ସମୟ t=0.5 ସେକେଣ୍ଡ ହେବା ପର୍ଯ୍ୟନ୍ତ ସ୍ଥିର ରହିଥାଏ ତେଣୁ, ଉଚ୍ଚତା ମଧ୍ୟ ସମାନ ରହିଥାଏ
05:06 ପରିଣାମକୁ ଡିଲିଟ୍ କରିବା ପାଇଁ ଭେରିଏବଲ୍ ବ୍ରାଉଜରରେ ଥିବା timeEventExample ଉପରେ ରାଇଟ୍ କ୍ଲିକ୍ କରିବା ସହିତ Delete Resultକୁ ଚୟନ କରନ୍ତୁ
05:15 Modeling perspectiveକୁ ଫେରିଯିବା ପାଇଁ ନିମ୍ନର ଡାହାଣପଟେ ଥିବା Modeling ବଟନ୍ ଉପରେ କ୍ଲିକ୍ କରନ୍ତୁ
05:21 ବର୍ତ୍ତମାନ else branchରେ ଥିବା ଦ୍ଵିତୀୟ equationକୁ ଡିଲିଟ୍ କରନ୍ତୁ
05:26 ଏହି ମୋଡେଲକୁ ସେଭ୍ କରିବା ପାଇଁ ଟୂଲବାର୍ ଉପରେ ଥିବା Save ବଟନ୍ ଉପରେ କ୍ଲିକ୍ କରନ୍ତୁ
05:31 Simulate ଉପରେ କ୍ଲିକ୍ କରନ୍ତୁ
05:34 ସିମୁଲେଟ୍ ଅସଫଳ ହୋଇଛି
05:37 Messages browserକୁ ଯା’ନ୍ତୁ ଏବଂ ଉପରକୁ ସ୍କ୍ରୋଲ୍ କରିବା ସହିତ ତୃଟି ବାର୍ତ୍ତାକୁ ଦେଖନ୍ତୁ
05:42 ତୃଟି ବାର୍ତ୍ତାରେ ଉଲ୍ଲେଖ ଅଛି ଯେ ପ୍ରତ୍ୟେକ branchରେ equationଗୁଡିକର ସଂଖ୍ୟା ସମାନ ହେବା ଆବଶ୍ୟକ
05:49 ତେଣୁ if ଓ else branchଗୁଡିକରେ ଥିବା ପ୍ରତ୍ୟେକ equationଗୁଡିକର ସଂଖ୍ୟା ଭେରିଏବଲଗୁଡିକର ସଂଖ୍ୟା ସହିତ ସମାନ ହେବା ଆବଶ୍ୟକ
05:58 ପୁନର୍ବାର equationକୁ ନିଜ ସ୍ଥାନରେ ଇନସର୍ଟ କରିବା ସହିତ Save ବଟନରେ କ୍ଲିକ୍ କରନ୍ତୁ
06:05 ଧ୍ୟାନଦିଅନ୍ତୁ ଯେ der(h) = v, ଗୋଟିଏ equation ଅଟେ ଯାହା ଉଭୟ if ଓ else branchଗୁଡିକ ପାଇଁ ସମାନ ଅଟେ
06:14 ତେଣୁ if-else blockକୁ ଦୁଇଟି statement ଦ୍ଵାରା ପ୍ରତିସ୍ଥାପିତ କରାଯାଇପାରିବ
06:20 ଏହା କିପରି କରାଯାଏ ତାହା ମୁଁ ଆପଣଙ୍କୁ ପ୍ରଦର୍ଶନ କରିବି
06:23 ପ୍ରଥମେ if-else blockକୁ ଡିଲିଟ୍ କରନ୍ତୁ
06:26 ଏଠାରେ ଟାଇପ୍ ହେବାକୁ ଥିବା ସମୀକରଣଗୁଡିକ, if else-statement.txt ନାମକ ଫାଇଲରେ ଉପଲବ୍ଧ ଅଛି
06:34 ଏହି ଫାଇଲ୍ Code Files ଲିଙ୍କରେ ମଧ୍ୟ ଉପଲବ୍ଧ ଅଛି
06:39 ଯେହେତୁ ଏହା ଗୋଟିଏ ଟେକ୍ସଟ ଫାଇଲ୍ ଅଟେ, ତେଣୁ ଏହାକୁ ଖୋଲିବା ପାଇଁ ମୁଁ geditକୁ ବ୍ୟବହାର କରୁଛି
06:45 geditକୁ ଯା’ନ୍ତୁ
06:47 Windowsର ବ୍ୟବହାରକର୍ତ୍ତାମାନେ Notepad କିମ୍ବା ଅନ୍ୟ ଟେକ୍ସଟ ଏଡିଟରକୁ ବ୍ୟବହାର କରି ଏହି ଫାଇଲକୁ ଖୋଲିପାରିବେ
06:54 ଦୁଇଟି ସମୀକରଣକୁ କପୀ କରନ୍ତୁ
06:57 OMEditକୁ ଫେରିଆସନ୍ତୁ
07:00 ରାଇଟ୍ କ୍ଲିକ୍ କରିବା ସହିତ Pasteକୁ ଚୟନ କରନ୍ତୁ
07:04 ପୁନର୍ବାର ଟୂଲବାରରେ ଥିବା Save ବଟନରେ କ୍ଲିକ୍ କରନ୍ତୁ
07:08 Simulate ଉପରେ କ୍ଲିକ୍ କରନ୍ତୁ
07:11 ପପ୍ ଅପ୍ ୱିଣ୍ଡୋକୁ ବନ୍ଦ କରନ୍ତୁ
07:14 ପୁନର୍ବାର Variables browserରେ hକୁ ଚୟନ କରନ୍ତୁ
07:18 ଧ୍ୟାନଦିଅନ୍ତୁ ଯେ h versus timeର ପ୍ଲଟ୍ ପୂର୍ବ ଭଳି ସମାନ ଅଟେ ଯାହା ଉଭୟ ମୋଡେଲ୍ ସମାନ ବୋଲି ସୂଚୀତ କରୁଛି
07:27 ପରିଣାମକୁ ଡିଲିଟ୍ କରିବା ପାଇଁ timeEventExample ଉପରେ ରାଇଟ୍ କ୍ଲିକ୍ କରିବା ସହିତ Delete Resultକୁ ଚୟନ କରନ୍ତୁ
07:34 ନିମ୍ନର ଡାହାଣପଟେ ଥିବା Modeling ବଟନ୍ ଉପରେ କ୍ଲିକ୍ କରନ୍ତୁ
07:38 ଏହା ଗୋଟିଏ if-else statement ଅଟେ ଯାହା ସୂଚୀତ କରୁଛି ଯେ ଯଦି time >= 0.5 ତେବେ dv/dt = g ହେବ ନହେଲେ dv/dt = 0 ହେବ
07:52 ବର୍ତ୍ତମାନ ସ୍ଲାଇଡକୁ ଫେରିଆସନ୍ତୁ
07:55 ଦୟାକରି ଧ୍ୟାନଦିଅନ୍ତୁ ଯେ if branchରେ equationଗୁଡିକର ସଂଖ୍ୟା else branchରେ ଥିବା equationଗୁଡିକର ସଂଖ୍ୟା ସହିତ ସମାନ ହେବା ଆବଶ୍ୟକ
08:03 ଏବଂ ସେମାନେ ଉଭୟେ class କିମ୍ବା modelରେ ଥିବା ଭେରିଏବଲଗୁଡିକର ସଂଖ୍ୟା ସହିତ ସମାନ ହେବା ଆବଶ୍ୟକ
08:10 Event ଗୋଟିଏ ସିଷ୍ଟମରେ ଥିବା ବିହେଭିୟରରେ ଏକ ଆକସ୍ମିକ ପରିବର୍ତ୍ତନ ଅଟେ
08:15 Eventsକୁ, time events ଓ state eventsରେ ଶ୍ରେଣୀଭୁକ୍ତ କରାଯାଇପାରିବ
08:20 ଗୋଟିଏ time eventରେ ଯେଉଁ ସମୟରେ ଏଭେଣ୍ଟ ସଂଘଟିତ ହେଇଥାଏ ତାହା ନିର୍ଦ୍ଦିଷ୍ଟ ଭାବେ ଜଣାଯାଇଥାଏ
08:25 timeEventExample, ଗୋଟିଏ time eventକୁ t = 0.5 ସେକେଣ୍ଡରେ ପରିଚାଳନା କରିଥାଏ
08:32 state event ସଂଘଟିତ ହୁଏ ଯେତେବେଳେ ଗୋଟିଏ ସିଷ୍ଟମ୍ ଭେରିଏବଲ୍ ଏକ ନିର୍ଦ୍ଦିଷ୍ଟ ଭେଲ୍ୟୁକୁ ଅତିକ୍ରମ କରିଥାଏ
08:38 ଗୋଟିଏ ଉଦାହରଣ ସାହାଯ୍ୟରେ ଚାଲନ୍ତୁ state eventଗୁଡିକୁ ବୁଝିବା ପାଇଁ ଚେଷ୍ଟା କରିବା
08:43 ଫ୍ରୀ ଫଲ୍ ଅଧୀନରେ ଗୋଟିଏ ବଲ୍ ଭୂମିକୁ ଛୁଇଁବା ସମୟରେ ଗୋଟିଏ state eventର ସମ୍ମୁଖିନ ହୋଇଥାଏ
08:48 ଯେତେବେଳେ ଏହା ଭୂମିକୁ ସ୍ପର୍ଷ କରିଥାଏ ନିମ୍ନଲିଖିତ ବିହେଭିୟରଗୁଡିକ ପରିଦୃଷ୍ଟ ହୋଇଥାଏ
08:52 ବଲର ଭେଲୋସିଟୀର ଦିଗ ବିପରୀତ ହୋଇଯାଇଥାଏ
08:55 ଭେଲୋସିଟୀର ମାଗ୍ନିଚ୍ୟୁଡ୍ ପରିବର୍ତ୍ତନ ହୋଇଯାଏ ଯଦି ଆଘାତ ଇନଇଲାଷ୍ଟିକ୍ ହୁଏ
09:00 ଏହି ବିହେଭିୟରକୁ ସିମୁଲେଟ୍ କରିବା ପାଇଁ ମୁଁ bouncingBall ନାମକ ଗୋଟିଏ model ସୃଷ୍ଟି କରିଛି
09:06 ଏହି ଫାଇଲ୍ Spoken Tutorial ୱେବସାଇଟରେ ଉପଲବ୍ଧ ଅଛି
09:10 ଏହି modelକୁ ଦେଖିବା ପାଇଁ ଏହାକୁ ସିମୁଲେଟ୍ କରିବା ସହିତ OMEditକୁ ଫେରିଆସନ୍ତୁ
09:15 OpenModel/LIbrary File ଟୂଲ୍ ଉପରେ କ୍ଲିକ୍ କରନ୍ତୁ
09:19 ଆପଣଙ୍କ ସିଷ୍ଟମରେ bouncingBall ଫାଇଲକୁ ପ୍ରାପ୍ତ କରିବା ସହିତ Openରେ କ୍ଲିକ୍ କରନ୍ତୁ
09:25 Libraries browserରେ ଥିବା bouncingBall ଆଇକନ୍ ଉପରେ ରାଇଟ୍ କ୍ଲିକ୍ କରିବା ସହିତ View Classକୁ ଚୟନ କରନ୍ତୁ
09:33 ଯଦି modelଟି Text Viewରେ ଅଦୌ ଖୋଲିବ ନାହିଁ, ତେବେ modeling areaର ଉପରିଭାଗକୁ ଯିବା ସହିତ Text View ବଟନ୍ ଉପରେ କ୍ଲିକ୍ କରନ୍ତୁ
09:41 ବଲ୍ ଭୂମି ସହିତ ଇନଇଲାଷ୍ଟିକ୍ ଆଘାତ ହେବା ପାଇଁ, e ପ୍ରତ୍ୟର୍ପଣ(ରେଷ୍ଟିଚ୍ୟୁଶନ୍) କୋଏଫିସିଏଣ୍ଟ ଅଟେ
09:48 ଏହା ଗୋଟିଏ ପାରାମିଟର୍ ଅଟେ ଏବଂ ସମ୍ପୂର୍ଣ୍ଣ ସିମୁଲେଶନ୍ ହେବା ମଧ୍ୟରେ ଏହାର ଭେଲ୍ୟୁ 0.8ରେ ସର୍ବଦା ସ୍ଥିର ରହିଥାଏ
09:56 radius, ବଲର ବ୍ୟାସାର୍ଦ୍ଧ ଅଟେ ଏବଂ ଏହାକୁ m(ମିଟର)ରେ ଗଣନା କରାଯାଏ
10:00 h, v ଓ g, timeEventExample ଭଳି ସମାନ ପରିମାଣଗୁଡିକୁ ଉପସ୍ଥାପିତ କରିଥାଏ
10:07 ଗତିର ଏହି ଦୁଇଟି ସମୀକରଣ, freeFall classରେ ଆଲୋଚିତ ହୋଇସାରିଛି
10:13 when statement ଗୋଟିଏ ଇଭେଣ୍ଟକୁ ଆରମ୍ଭର ସୂଚନା ଦେବା ପାଇଁ ବ୍ୟବହୃତ ହୁଏ
10:17 ଏହା ଗୋଟିଏ ଇଭେଣ୍ଟ ସଂଘଟିତ ହେବା ସମୟରେ ହେବାକୁ ଥିବା କାର୍ଯ୍ୟକୁ ନିର୍ଦ୍ଦିଷ୍ଟ କରିବା ପାଇଁ ବ୍ୟବହୃତ ହୋଇଥାଏ
10:22 h <= radius, true ହେବ ଯେତେବେଳେ ବଲଟି ଭୂମି ସହିତ ସମ୍ପର୍କରେ ଆସିବ
10:29 ଯେତେବେଳେ କାର୍ଯ୍ୟ ସଂଘଟିତ ହେବ ଏହି statement ନିଷ୍ପାଦନ ହେବ
10:34 ଫଙ୍କଶନ୍ reinit(), ଗୋଟିଏ ଭେରିଏବଲକୁ ରି-ଇନିଶିଆଲାଇଜ୍ କରିବା ପାଇଁ ବ୍ୟବହୃତ ହୋଇଥାଏ
10:39 ଏଠାରେ ବଲ୍ ଭୂମିକୁ ସ୍ପର୍ଷ କରିବା ପୂର୍ବରୁ, e ଓ ବଲ୍ ଭେଲୋସିଟୀର ନେଗେଟିଭ୍ ପ୍ରଡକ୍ଟ ସହିତ ଏହା ଭେଲୋସିଟିକୁ ରି-ଅନିଶିଆଲାଇଜ୍ କରିଥାଏ
10:49 ଏହି ମୋଡେଲକୁ ସିମୁଲେଟ୍ କରିବା ପାଇଁ ଟୂଲବାରରେ ଥିବା Simulation Setup ବଟନ୍ ଉପରେ କ୍ଲିକ୍ କରନ୍ତୁ
10:55 General ଟାବ୍ ଅଧୀନରେ ଥିବା Stop Time ଫିଲ୍ଡକୁ 30 ୟୁନିଟରେ ପରିବର୍ତ୍ତନ କରିବା ସହିତ Simulateରେ କ୍ଲିକ୍ କରନ୍ତୁ
11:04 ପପ୍ ଅପ୍ ୱିଣ୍ଡୋକୁ ବନ୍ଦ କରନ୍ତୁ
11:06 Variables browserରେ hକୁ ଚୟନ କରନ୍ତୁ
11:10 ଧ୍ୟାନଦିଅନ୍ତୁ ଯେ h, ଯିରୋ ଠାରୁ ନିମ୍ନକୁ ଆସିଯିବ ଯାହା ଗ୍ରହଣଯୋଗ୍ୟ ନୁହେଁ
11:16 ଆମେ freeFall classକୁ ସିମୁଲେଟ୍ କରିବା ସମୟରେ, ସମାନ ବିହେଭିୟର୍ ଦେଖିବାକୁ ପାଇଛେ
11:21 ଏହି ତୃଟିପୂର୍ଣ୍ଣ ବିହେଭିୟର୍ ସାଂଖିକ ତୃଟିଗୁଡିକ ଯୋଗୁଁ ଦେଖାଦେଇଛି
11:25 ସାଂଖିକ ତୃଟିଗୁଡିକ ଉପରେ ଆଲୋଚନା ଏହି ଟ୍ୟୁଟୋରିଆଲରେ ସମ୍ଭବ ନୁହେଁ
11:30 ଭଲ ଭାବେ ବୁଝିବା ପାଇଁ ଦୟାକରି, ବାଉନ୍ସିଙ୍ଗ ବଲର Zeno ବିହେଭିୟରକୁ ରେଫର୍ କରନ୍ତୁ
11:36 hକୁ ଡିସେଲେକ୍ଟ କରନ୍ତୁ
11:39 ସ୍ଲାଇଡକୁ ଫେରିଆସନ୍ତୁ
11:42 ଗୋଟିଏ ଇଭେଣ୍ଟ ଆରମ୍ଭ ହେବା ସୂଚନା ଦେବା ପାଇଁ, when statement ବ୍ୟବହୃତ ହୋଇଥାଏ
11:45 reinit(a,b), ଭେରିଏବଲ୍ aକୁ ଭେଲ୍ୟୁ b ଆସାଇନ୍ କରିବା ସହିତ ସିମୁଲେଶନକୁ ପୁନଃ ଆରମ୍ଭ କରିଥାଏ
11:54 କାର୍ଯ୍ୟ ସଂଘଟିତ ହେବା ପୂର୍ବରୁ pre(a), ଭେରିଏବଲ୍ aର ଭେଲ୍ୟୁକୁ ଫେରସ୍ତ କରିଥାଏ
11:59 ଉଦାହରଣସ୍ଵରୂପ, କାର୍ଯ୍ୟ ସଂଘଟିତ ହେବା ସମୟରେ reinit(a, 10), aକୁ ଭେଲ୍ୟୁ 10 ଆସାଇନ୍ ହୋଇଥାଏ
12:08 bouncingBall ମୋଡେଲର ତୃଟିପୂର୍ଣ୍ଣ ବିହେଭିୟର୍ bouncingBallWithHysteresis ଦ୍ଵାରା ସଂଶୋଧିତ ହୋଇଥାଏ
12:15 bouncingBallWithHysteresis ମୋଡେଲ୍ spoken tutorial ୱେବସାଇଟରେ ଉପଲବ୍ଧ ଅଛି
12:21 bouncingBallWithHysteresisକୁ ସିମୁଲେଟ୍ କରିବା ସହିତ h versus time ପ୍ଲଟ୍ ସୃଷ୍ଟି କରନ୍ତୁ
12:27 bouncingBall ଓ bouncingBallWithHysteresis ମଧ୍ୟରେ ଥିବା ପାର୍ଥକ୍ୟକୁ ଲକ୍ଷ୍ୟ କରନ୍ତୁ
12:33 ଏହା ଆମକୁ ଏହି ଟ୍ୟୁଟୋରିଆଲର ସମାପ୍ତିକୁ ଆଣେ
12:36 ନିମ୍ନ ଲିଙ୍କରେ ଉପଲବ୍ଧ ଥିବା ଭିଡିଓକୁ ଦେଖନ୍ତୁ
12:40 ଏହା ସ୍ପୋକନ୍ ଟ୍ୟୁଟୋରିଆଲ୍ ପ୍ରୋଜେକ୍ଟକୁ ସାରାଂଶିତ କରେ
12:42 ସ୍ପୋକନ୍ ଟ୍ୟୁଟୋରିଆଲ୍ସ ବ୍ୟବହାର କରି ଆମେ କର୍ମଶାଳାମାନ ଚଲାଇଥାଉ, ପ୍ରମାଣପତ୍ର ପ୍ରଦାନ କରିଥାଉ. ଦୟାକରି ଆମକୁ ସମ୍ପର୍କ କରନ୍ତୁ
12:48 ଏହି ସ୍ପୋକନ୍ ଟ୍ୟୁଟୋରିଆଲ୍ ଉପରେ ଆପଣଙ୍କର ଯଦି କିଛି ପ୍ରଶ୍ନ ଥାଏ ତେବେ ଦୟାକରି ନିମ୍ନଲିଖିତ ୱେବସାଇଟକୁ ଯା’ନ୍ତୁ
12:55 Textbook Companion Project ଅଧୀନରେ ଆମେ ସୁପ୍ରଚଳିତ ବହିଗୁଡିକରେ ସମାଧାନ ହୋଇଥିବା ଉଦାହରଣଗୁଡିକର କୋଡଗୁଡିକ ମଧ୍ୟରେ ସମନ୍ଵୟ ରଖିଥାଉ
13:03 ଏହି କାର୍ଯ୍ୟ ସମ୍ପନ୍ନ କରୁଥିବା ବ୍ୟକ୍ତି ବିଶେଷଙ୍କୁ ଆମେ ପାରିତୋଷିକ ଓ ପ୍ରମାଣପତ୍ର ପ୍ରଦାନ କରିଥାଉ. ଅଧିକ ବିବରଣୀ ପାଇଁ ଦୟାକରି ନିମ୍ନଲିଖିତ ୱେବସାଇଟକୁ ଯା’ନ୍ତୁ
13:10 Lab Migration Project ଅଧୀନରେ ଆମେ ବ୍ୟବସାୟିକ ସିମୁଲେଟର୍ ଲ୍ୟାବଗୁଡିକୁ OpenModelicaକୁ ସ୍ଥାନାନ୍ତର କରିବାରେ ସାହଯ୍ୟ କରିଥାଉ
13:17 ଅଧିକ ସୂଚନା ପାଇଁ ଦୟାକରି ୱେବସାଇଟକୁ ଯା’ନ୍ତୁ
13:21 Spoken Tutorial Project ଭାରତ ସରକାରଙ୍କ MHRDର NMEICT ଦ୍ଵାରା ସମର୍ଥିତ
13:28 OpenModelicaକୁ ବିକଶିତ କରୁଥିବା ଟିମକୁ ସେମାନଙ୍କର ସହଯୋଗ ପାଇଁ ଆମେ ଧନ୍ୟବାଦ ଦେଉଛୁ
13:33 ଆମ ସହିତ ଜଡ଼ିତ ହୋଇଥିବାରୁ ଧନ୍ୟବାଦ

Contributors and Content Editors

Pradeep