OpenModelica/C2/Functions-and-Types/Marathi
From Script | Spoken-Tutorial
Revision as of 17:22, 25 January 2018 by Latapopale (Talk | contribs)
Time | Narration |
00:01 | Functions and Types वरील स्पोकन ट्युटोरिअलमध्ये आपले स्वागत आहे. |
00:06 | ह्या ट्युटोरिलमध्ये आपण शिकणार आहोत - function कसे परिभाषित करावे. |
00:12 | algorithm कसे वापरावे. type कसे परिभाषित करावे. |
00:17 | हे ट्युटोरिअल रेकॉर्ड करण्यासाठी, मी OpenModelica 1.9.2 आणि उबंटू ऑपरेटिंग सिस्टम वर्जन 14.04 वापरत आहे. |
00:27 | परंतु, ही प्रोसेस Windows, Mac OS X किंवा FOSSEE OS मध्ये समान आहे. |
00:35 | हे ट्युटोरिअल समजून घेण्यासाठी Modelica मध्ये class कसे परिभाषित करावे हे आपल्याला माहित असणे आवश्यक आहे. |
00:41 | तुम्हांला कोणत्याही प्रोग्रामिंग भाषेतील functions चे ज्ञान हवे. |
00:46 | पूर्वापेक्षित ट्युटोरिअल्स आमच्या वेबसाईटवर आहेत. कृपया त्यांमार्फत जा. |
00:52 | आता function विषयी चर्चा करू. |
00:55 | function एक विशिष्ट क्लास आहे जो इनपुट घेऊन आऊटपुट रिटर्न करू शकतो. |
01:01 | यामध्ये algorithm सेक्शन आहे. |
01:04 | function मध्ये इक्वेशन्स असू शकत नाहीत आणि ते सिम्युलेट केले जाऊ शकत नाही. |
01:10 | function चे सिंटॅक्स दर्शविल्याप्रमाणे आहे. |
01:15 | आता, polynomialEvaluator नावाचे फंक्शन लिहू, जे x म्हणून इनपूट घेते आणि f(x) = a x (squared) (plus) b x (plus) c रिटर्न करते, जिथे आऊटपूट म्हणून a=1, b=2 आणि c=1 as output आहेत. |
01:36 | polynomialEvaluator फाईल आमच्या वेबसाईटवर उपलब्ध आहे. |
01:40 | कृपया Code Files लिंकमध्ये उपलब्ध असलेल्या सर्व फाईल्स डाऊनलोड करून सेव्ह करा. |
01:46 | polynomialEvaluator फंक्शन दाखवण्यासाठी, मी OMEdit वर जातो. |
01:52 | OMEdit आता Welcome परिप्रेक्ष्यमध्ये खुले आहे. |
01:56 | आपण केवळ OMEdit विंडोचा एक भाग पाहू शकता कारण मी ते झूम इन केले आहे. |
02:02 | जेव्हा आवश्यक असेल तेव्हा विंडो स्थानांतरित करून मी आपल्याला संबंधित भाग दाखवेन. |
02:09 | आपण डाऊनलोड केलेल्या फाईल्स उघडण्यासाठी, Open Model/Library File टूलवर क्लिक करा. |
02:16 | मी सर्व फाईल्स फोल्डरमध्ये सेव्ह केल्या आहेत. |
02:19 | मी त्यांना एकत्र निवडतो आणि open वर क्लिक करतो. |
02:24 | जर आपण ह्या फाईल्स वेगवेगळ्या फोल्डर्समध्ये सेव्ह केल्या असतील, तर आपण त्यापैकी प्रत्येक स्वतंत्रपणे उघडू शकता. |
02:31 | लक्षात घ्या की, खालील classes किंवा functions आता OMEdit मध्ये उघडले आहेत :
bouncingBallWithUserTypes , functionTester ,multipleFunctionTester, multiplePolynomialEvaluator आणि polynomialEvaluator. |
02:51 | polynomialEvaluator फंक्शन उघडण्यासाठी आणि ती पाहण्यासाठी, Libraries Browser मध्ये आयकॉनवर राईट-क्लिक करा आणि View Class निवडा. |
03:02 | जर फंक्शन Text View मध्ये उघडत नसल्यास, ते Text View मध्ये उघडा. |
03:08 | ह्या फंक्शनचे नाव polynomialEvaluator आहे, आपण आधीच चर्चा केली आहे. |
03:14 | x हे real व्हेरिएबल आहे. |
03:17 | input एक कीवर्ड आहे जो input व्हेरिएबल्स निर्दिष्ट करण्यासाठी वापरला जातो. |
03:22 | त्याचप्रमाणे output हा एक कीवर्ड आहे जो output व्हेरिएबल्स निर्दिष्ट करण्यासाठी वापरला जातो. |
03:28 | fx हे एक real व्हेरिएबल आहे जे f(x) दर्शविते. |
03:33 | कोणतेही व्हेरिएबल किंवा पॅरामीटर जे input ही नाही आणि output नाही, ते protected कीवर्ड वापरून निर्दिष्ट केले जाते. |
03:42 | a हा 1 च्या वॅल्यूसह real पॅरामीटर आहे. |
03:47 | a, b आणि c ची वॅल्यूजची चर्चा याआधीच स्लाईड्समध्ये केली गेली आहे. |
03:53 | कृपया लक्षात घ्या की, a, b आणि c हे protected पॅरामीटर्स आहेत. |
03:59 | Algorithm एका फंक्शनच्या एल्गोरिदम सेक्शनच्या सुरवातीचे प्रतिनिधित्व करते. |
04:05 | Algorithm सेक्शनमध्ये केवळ assignment स्टेटमेंट असू शकते. |
04:10 | हे चिन्ह assignment दर्शविते. |
04:14 | एका assignment स्टेटमेंटमध्ये, उजव्या बाजूच्या वॅल्यूला डाव्या बाजूला असाईन केले आहे. |
04:20 | डावी बाजू सहसा एक अज्ञात एक्सप्रेशन असते. |
04:25 | ह्या बाबतीत, fx हे एक अज्ञात व्हेरिएबल आहे. |
04:29 | x ची वॅल्यू माहित असल्यास उजव्या एक्सप्रेशनच्या वॅल्यूची गणना केली जाऊ शकते. |
04:36 | x ला सामान्यतः function चे input आर्ग्युमेंट म्हणून पास केले जाते, जेव्हाही ते कॉल केले जाते. |
04:43 | आता functionTester वापरून function कॉल कसे करावे ते पाहू. |
04:49 | functionTester आयकॉन आधीपासूनच Libraries Browser मध्ये दिसत आहे, कारण ते मी आधीच उघडले आहे. |
04:56 | हा class उघडण्यासाठी, त्याच्या आयकॉनवर डबल-क्लिक करा. |
05:01 | हा class पाहण्याचा एक वैकल्पिक मार्ग आहे. |
05:05 | आपण त्याच्या आयकॉनवर राईट-क्लिकदेखील करून View Class निवडू शकता. |
05:11 | z हा एक real व्हेरिएबल आहे. |
05:14 | polynomialEvaluator फंक्शन 10 युनिट्सच्या input आर्ग्युमेंटसह कॉल केला जातो आणि हे z शी समांतर आहे. |
05:23 | polynomialEvaluator ची input वॅल्यू(व्हेरिएबल) जे x 10 युनिट्स वॅल्यू घेते. |
05:31 | आता आपण हा class सिम्युलेट करू. |
05:34 | हा class सिम्युलेट करण्यासाठी आपल्याला Libraries Browser मध्ये functionTester आयकॉनवर राईट-क्लिक करावे लागेल आणि Simulate निवडा. |
05:45 | क्लास आता सिम्युलेट झाला आहे. |
05:47 | आपण क्लास सिम्युलेट करण्यासाठी टूलबारमधील Simulate बटणदेखील वापरू शकता. |
05:53 | आता मी आपल्याला Plotting perspective पूर्णपणे दाखवण्यासाठी OMEdit विंडो डावीकडे सरकवतो. |
06:00 | व्हेरिएबल्स ब्राऊझरमध्ये z निवडा. |
06:04 | लक्षात घ्या की, z ची वॅल्यू x = 10 ला f(x) च्या वॅल्यूइतकी आहे. |
06:12 | आता मी z डी-सिलेक्ट करतो आणि हा रिझल्ट डिलीट करा. |
06:18 | मी Modeling perspective वर परत जातो. |
06:21 | शीर्षस्थानी polynomialEvaluator टॅबवर क्लिक करा. |
06:25 | लक्षात घ्या की, polynomialEvaluator फंक्शनचा फक्त एक output व्हेरिएबल आहे. |
06:31 | आता मी आपल्याला दाखवतो की function वापरून दोन किंवा अधिक व्हेरिएबल्स कसे output करावे. |
06:38 | मी multiplePolynomialEvaluator नावाचा function तयार केला आहे, ज्यामध्ये दोन output व्हेरिएबल्स आहेत. |
06:45 | ते function पाहण्यापूर्वी मी PolynomialEvaluator आणि FunctionTester टॅब बंद करतो. |
06:54 | कारण Libraries Browser दिसत नाही, मी विंडो उजवीकडे हलवतो. |
07:01 | multiplePolynomialEvaluator, multipleFunctionTester आणि bouncingBallWithUserTypes वर डबल-क्लिक करा. |
07:11 | विंडो पुन्हा आपल्या जागेवर हलवा. |
07:15 | multiplePolynomialEvaluator टॅबवर जा. |
07:19 | हे फंक्शन अतिरिक्त output व्हेरिएबल वगळता polynomialEvaluator फंक्शनसारखे आहे. |
07:27 | output व्हेरिएबलचे नाव gx घोषित केले गेले आहे. |
07:32 | gx ला a x (squared) (minus) b x (plus) c ची वॅल्यू असाईन केली आहे. |
07:38 | ज्या क्रमाने output किंवा input व्हेरिएबल्स घोषित केले आहेत ते महत्त्वाचे आहेत. |
07:45 | जेव्हा आपण multipleFunctionTester क्लासची चर्चा करू तेव्हा ह्याबद्दल अधिक जाणून घेऊ. |
07:51 | आता मी multipleFunctionTester टॅबवर जातो. |
07:56 | y आणि z ह्यांना real व्हेरिएबल्स म्हणून घोषित केले आहे. |
08:01 | multiplePolynomialEvaluator फंक्शनला 10 युनिट्सच्या input आर्ग्युमेंटसह कॉल केले जाते. |
08:08 | याचा अर्थ असा आहे की multiplePolynomialEvaluator चे input व्हेरिएबल 10 युनिट्सची वॅल्यू घेते. |
08:17 | y आणि z x = 10 वर अनुक्रमे f(x) आणि g(x) ची वॅल्यू घेते. |
08:26 | y आऊटपुट व्हेरिएबल fx ची वॅल्यू घेते, तर function मध्ये gx घोषित होण्याआधी fx घोषित केले जाते. |
08:37 | आता मी हा क्लास सिम्युलेट करतो. |
08:40 | Simulate बटणावर क्लिक करा. पॉप अप विंडो बंद करा. |
08:46 | variables browser मध्ये y आणि z निवडा. |
08:51 | लक्षात घ्या की y आणि z च्या वॅल्यूज x = 10 ला अनुक्रमे f(x) आणि g(x) च्या समान आहेत. |
09:01 | रिझल्ट डिलीट करा आणि Modeling Perspective वर परत जा. |
09:06 | आता मी y आणि z चा क्रम बदलतो. |
09:11 | (y,z) डिलीट करा आणि (z,y) टाईप करा. |
09:17 | आणि Ctrl+S दाबून हा क्लास सेव्ह करा. |
09:22 | पुन्हा एकदा हा क्लास सिम्युलेट करा. पॉप अप विंडो बंद करा. |
09:28 | पुन्हा एकदा variables browser मध्ये y आणि z निवडा. |
09:33 | लक्षात ठेवा की, y आणि z चे वॅल्यूज मागील बाबतीत तुलनेने बदलली आहेत. |
09:41 | मी हा रिझल्ट डिलीट करतो आणि Modeling Perspective वर परत जातो. |
09:47 | मी स्लाईड्सवर पुन्हा जातो. |
09:50 | algorithm प्रक्रियात्मक प्रोग्रामिंग सक्षम करण्यासाठी Modelica syntax element आहे. |
09:56 | फक्त algorithm सेक्शनमध्ये assignment स्टेटमेंट्ना परवानगी आहे. |
10:01 | Assignment स्टेटमेन्ट्स खालील चिह्न वापरतात. |
10:06 | assignment स्टेटमेन्टमध्ये डेटा उजवीकडून डावीकडे जातो. |
10:10 | Modelica मध्ये परिभाषित केलेल्या फंक्शन्सवर काही निर्बंध आहेत. |
10:16 | फंक्शनमध्ये der() चा वापर अवैध आहे. time व्हेरिएबल वापरण्यास परवानगी नाही. |
10:23 | फंक्शनमध्ये when स्टेटमेंट्स वापरण्यास परवानगी नाही. |
10:28 | फंक्शनमध्ये एकापेक्षा जास्त algorithm सेक्शन नसू शकतात आणि मॉडेल्स, arguments म्हणून पास होऊ शकत नाहीत. |
10:36 | मॉडेलिकामध्ये data-types परिभाषित करण्यासाठी type हा एक विशिष्ट क्लास आहे. |
10:42 | उदाहरणार्थ, velocity आणि current ह्यासारख्या भौतिक संख्या data-types म्हणून परिभाषित केल्या जाऊ शकतात. |
10:50 | ते इतर व्हेरिएबल्स घोषित करण्यासाठी नंतर वापरले जाऊ शकतात. |
10:54 | unit आणि start सारख्या Modelica data-types च्या Attributes तदनुसार बदलले जाऊ शकतात. |
11:01 | उदाहरणार्थ, वरील बाबतीत velocity ला real data type सारखेच परिभाषित केले गेले आहे. |
11:08 | परंतु त्याचे युनिट m/s मध्ये सुधारित केले आहे. |
11:12 | टाईप डेफिनेशन्स सिम्युलेट करण्यासाठी मी bouncingBallWithUserTypes नावाचा मॉडेल तयार केला आहे. |
11:19 | मी हे मॉडेल सादर करण्यासाठी OMEdit वर परत जातो. |
11:24 | bouncingBallWithUserTypes टॅबवर क्लिक करा. |
11:28 | हे मॉडेल, bouncingBall मॉडेलसारखेच आहे, ज्याची मागील ट्युटोरिअलमध्ये चर्चा करण्यात आली होती. |
11:35 | कृपया bouncingBall मॉडेल समजून घेण्यासाठी पूर्वापेक्षित ट्युटोरिअल पाहा. |
11:41 | Length ला साठी Real डेटाटाईप म्हणून परिभाषित केले गेले आहे. त्याच्या युनिटसह m सुधारित करू. |
11:47 | त्याचप्रमाणे Velocity ला m/s साठी सुधारित केलेल्या त्याच्या युनिटसह Real म्हणून परिभाषित केले आहे. |
11:54 | h पृथ्वीच्या पृष्ठभागावरून बॉलची उंची दर्शवते. |
11:58 | हे length datatype म्हणून परिभाषित आहे. |
12:02 | त्याचप्रमाणे v बॉलची गती दर्शवते. |
12:05 | हे velocity datatype म्हणून घोषित केले गेले आहे. |
12:09 | ह्या मॉडेलचे शेष व्हेरिएबल डिक्लरेशन्स आणि इक्वेशन्स bouncingBall मॉडेलसारखेच आहेत. |
12:18 | आता मी हे simulate करतो. पॉप अप विंडो बंद करा. |
12:24 | Variables Browser मध्ये लक्षात घ्या की, h आणि v कडे त्यांच्या डेटा-टाईपसह संबंधित युनिट्स आहेत. |
12:34 | variables browser मध्ये मी h निवडतो. |
12:38 | h विरुद्ध time चा प्लॉट bouncingBall मॉडेलसारखा आहे. |
12:43 | मी h डी-सिलेक्ट करतो. |
12:46 | आता मी स्लाईड्सवर परत जातो. |
12:49 | असाईनमेंट म्हणून फंक्शन्सवरील निर्बंधांचे उल्लंघन करा आणि निर्माण झालेले एरर्स पाहा. |
12:56 | ह्यासोबत आपण ट्युटोरिअलच्या अंतिम टप्प्यात पोहोचलो आहोत. |
12:59 | खालील लिंकवर उपलब्ध असलेला व्हिडिओ पाहा : http://spoken-tutorial.org/ http://spoken-tutorial.org] /What\_is\_a\_Spoken\_Tutorial It summarises the Spoken Tutorial project |
13:05 | आम्ही स्पोकन ट्युटोरिअलच्या साहाय्याने कार्यशाळा चालवितो. कृपया आमच्याशी संपर्क साधा. |
13:10 | जर तुम्हांला ह्या स्पोकन ट्युटोरिअलमध्ये प्रश्न असतील, तर कृपया वेबसाईटला भेट द्या. |
13:15 | आम्ही प्रसिद्ध पुस्तकांमधील सोडवलेल्या उदाहरणेचे कोडिंग समन्वित करतो. अधिक माहितीसाठी कृपया आमच्या वेबसाईटला भेट द्या. |
13:23 | आम्ही व्यावसायिक सिम्युलेटर लॅबला OpenModelica वर स्थलांतरीत करण्यास मदत करतो. |
13:29 | स्पोकन ट्युटोरिअल प्रोजेक्ट, NMEICT, MHRD भारत सरकारद्वारे समर्थित आहे. |
13:36 | त्यांच्या समर्थनासाठी आम्ही OpenModelica च्या विकसनशील टीमचे आभारी आहोत.
हे स्क्रिप्ट लता पोपळेद्वारे अनुवादित आहे. धन्यवाद. |