OpenModelica/C2/Functions-and-Types/Marathi
From Script | Spoken-Tutorial
Revision as of 15:47, 19 December 2017 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 | आता मी तुम्हाला OMEdit विंडो डावीकडे हलवून Plotting perspective पूर्णपणे दाखवतो. |
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 | मी function नावाचा multiplePolynomialEvaluator तयार केला आहे, ज्यामध्ये दोन 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 | gx नावाचे output व्हेरिएबल घोषित केले गेले आहे. |
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 | मॉडेलिका data-types च्या Attributes ना जसे unit आणि start त्यानुसार बदलले जाऊ शकतात. |
11:01 | उदाहरणार्थ, वरील बाबतीत velocity ला real data type सारखीच परिभाषित केले आहे. |
11:08 | परंतु त्याचे युनिट m/s मध्ये मॉडिफाय केले आहे. |
11:12 | टाईप डेफिनेशन्स सिम्युलेट करण्यासाठी मी model नावाचा 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 च्या विकसनशील टीमचे आभारी आहोत.
हे स्क्रिप्ट लता पोपळेद्वारे अनुवादित आहे. धन्यवाद. |