OpenModelica/C2/Functions-and-Types/Marathi

From Script | Spoken-Tutorial
Revision as of 16:34, 19 December 2017 by Latapopale (Talk | contribs)

Jump to: navigation, search
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 च्या विकसनशील टीमचे आभारी आहोत.

हे स्क्रिप्ट लता पोपळेद्वारे अनुवादित आहे. धन्यवाद.

Contributors and Content Editors

Latapopale, Ranjana