שיחה:88-151 שימושי מחשב תשעב סמסטר אביב/שאלות ותשובות: הבדלים בין גרסאות בדף
(←הבוחן) |
(←שאלה 2) |
||
שורה 144: | שורה 144: | ||
האם אסור בכלל להשתמש ב-det? אני לא מבין איך אפשר לפתור את השאלה ללא שימוש ב-det בכלל, הרי אפילו בשיטת המינורים, לאחר שאתה מחלק את המטריצה לפי 'חילוק' של עמודה ושורה שאתה מוחק-אתה עושה דטרמיננטה לכל מטריצה שהתקבלה.. | האם אסור בכלל להשתמש ב-det? אני לא מבין איך אפשר לפתור את השאלה ללא שימוש ב-det בכלל, הרי אפילו בשיטת המינורים, לאחר שאתה מחלק את המטריצה לפי 'חילוק' של עמודה ושורה שאתה מוחק-אתה עושה דטרמיננטה לכל מטריצה שהתקבלה.. | ||
:אם המטריצה שהתקבלה לאחר הסרת שורה-עמודה היא מגודל 2X2 הנוסחא היא פשוטה, אם גדולה מכך תפעיל גם עליה את שיטת המינורים. (תהליך רקורסיבי) --[[משתמש:Shimi|Shimi]] 11:20, 14 במאי 2012 (IDT) |
גרסה מ־08:20, 14 במאי 2012
הוספת שאלה חדשה
הוסף שאלה חדשה (רשום כותרת לשאלה, רשום את תוכן השאלה ולחץ על שמירה למטה מימין לסיום).
-עזרה על עיצוב הטקסט וכתיב מתמטי תוכלו למצוא כאן
אם אתם רוצים לשאול שאלה עליכם ליצור חשבון משתמש באתר.
ארכיון
ארכיון 1 - תרגילים 1-2.
ארכיון 2 - תרגיל 3.
ארכיון 3 - תרגיל 4-5.
שאלות
מה זה קובץ .asv
תמיד אחרי כל פונקציה שאני יוצר, נוצר קובץ נלווה .asv עם אותו שם. מה הוא עושה? אם אני מוחק פונקציה שעשיתי, צריך למחוק גם את זה, בנוסף לקובץ ה m?
- קובץ asv הוא קובץ בו נשמרים שינויים אחרונים שעשית בתוכנה שלך. כך במקרה של סגירת matlab ללא שמירת קוד, עדיין יישאר לך קוד אחרון. אם אתה לא צריך את זה, אפשר לכבות את זה: File -> Preferences -> Editor/Debugger -> Autosave. --Grisha 06:57, 8 במאי 2012 (IDT)
תרגיל 5 שאלה 1
יוצא לי לפעמים במרחב אותונורמלי אחרי שאני מכניס רשימה של ווקטורים (שאני לא יודע אם הם בסיס אני מכניס באופן רנדומלי) אז יוצא פתאום אחרי התהליך של גרהם שמידט וקטורים עם רכיבי NAN ז"א שמה שהכנסתי בתור מרחב כלשהו זה בכלל לא מרחב? או שאפשר להכניס כל רשימה של ווקטורים והם יהוו מרחב כלשהו?
תודה
- NaN יכול לצאת אם אתה מחלק 0 ב- 0. תבדוק אם זה קורה. --Grisha 22:26, 8 במאי 2012 (IDT)
אז יכול להיות עדיין שהפונקציה נכונה כלומר עבור מטריצות מסויימות כלומר רשימה של וקטורים שיוצרת מרחב זה יכול לקרות נכון?
- לא הבנתי אותך. תשלח לי את הקוד עם הקלט שמייצר את השגיאה. --Grisha 23:07, 8 במאי 2012 (IDT)
תודה, האם אפשר לשלוח לך למייל? כי זה יוצא די מבולגן
- תשלח לאימייל. --Grisha 20:19, 9 במאי 2012 (IDT)
שאלה אחרונה
שאתם אומרים לפתור בשתי שיטות את המשוואות למה אתם מתכוונים? עם שתי פונקציות שונות? pinv ו inv או לעשות A/b ?
- דיברנו על שתי שיטות לפתור את מערכות משוואות ליניאריות ב- Matlab. אז מתכוונים בדיוק לזה - לשיטות. תבחר בעצמל איך לממש את זה, סקריפט, פונקציה, מספר פונקציות וכו'... --Grisha 20:22, 9 במאי 2012 (IDT)
כן, רק השאלה היא: האם ב"שיטות" אתם מתכוונים לאיזה פונקציה מובנית אני משתמש?
פיתוח לפי מינורים
הכוונה לפיתוח לפי שורה/עמודה? האם האלגוריתם הזה הוא רקורסיבי ? כי אני לא רואה דרך אחרת לעשות אותו. מותר לי לדרג את המטריצה לפני כן, או שאני חייב ישר לתפוס עמודה/שורה ולפתח לפיה ? ושכתבתם "תשוו עם det" התכוונתם רק להשוואה של זמן החישוב כן? (כי משם משתמע כאילו יש כמה דרישות)
- זה לא חייב להיות רקורסיבי, אך כן - זאת הדרך הטבעית יותר.
- אפשר לדרג את המטריצה רק כשאתה משווה הסיבוכיות של שני האלגוריתמים, שלך ושל matlab, חשוב שירוצו באותם התנאים.
- להשוות זה כן להשוות את התוצאות וגם את הסיבוכיות. --Grisha 06:56, 10 במאי 2012 (IDT)
כן , השאלה היא כמה אתם מצפים, וכמה מותר לי, להיעזר במה שמטלב נותן לי. אם מותר לי לדרג, אז אני פשוט ישתמש בפונקצית דירוג, ויכפיל את איברים באלכסון. קל מידי. זה מותר? עריכה: עוד שאלה, למה התכוונת "באותם התנאים" ?
- בשאלה כתוב - שיטת מינורים. זה אומר שאתה צריך לממש את שיטת המינורים ולא שיטות ומשפטים אחרים.
- אתה יכול לתכנת ככה את פיתוח לפי מינורים שהוא יידע לעבוד עם מטריצות שיש שם הרבה אפסים (זאת לא דרישת השאלה).
- אותם תנאים - זה אומר שגם פונקציה שלך וגם פונקציה det מקבלים את אותה המטריצה בדיוק. --Grisha 09:09, 12 במאי 2012 (IDT)
תרגיל 6 שאלה 3
במשוואת המישור יש גם a וגם [math]\displaystyle{ \alpha }[/math], זה מכוון? או שהa אמורה להיות גם [math]\displaystyle{ \alpha }[/math]?
- a זה [math]\displaystyle{ \alpha }[/math]. טעות הקלדה. --Grisha 09:59, 11 במאי 2012 (IDT)
תרגיל 6 שאלה 2,1
MATLAB יודע לעבוד עם רקורסיה? וחוץ מזה האם ניתן להשתמש בפעולה pinv??
- כן, יש רקורסיה ב- Matlab. כן, מותר להשתמש ב- pinv. --Grisha 23:42, 11 במאי 2012 (IDT)
שאלה 3 בתרגיל 6
מה הפקודה pinv עושה?
- ההסבר ניתן בתרגולים ואפשר למצוא אותו במצגות. חוץ מזה - help pinv ייתן הסבר של מפתחי Matlab לשאלה זו. --Grisha 23:43, 11 במאי 2012 (IDT)
תרגיל 6 שאלה 4
האם הכוונה היא לשימוש באופרטור \ וב pinv או שהכוונה לשימוש ב solvef?
- איני מכיר פקודה solvef, יש פקודה fsolve, אך עוד לא למדנו אותה. אנחנו בנושא של אלגברה ליניארית ושיטות הן שיטות של אלגברה ליניארית, כפי שנלמדו בהרצאה ובתרגול. --Grisha 23:46, 11 במאי 2012 (IDT)
תרגיל 6 שאלה 2
האם בחישוב המינורים אפשר להיעזר בפונקציה det או שגם אותם צריך לחשב?
- ברור שאסור להשתמש בפקודת det!!! אחרת זאת לא תהיה שיטת מינורים, אלא פשוט שימוש בפקודה מובנית. המטרה לכתוב פונקציה מקבילה ל- det ולבדוק את היעילות שלה ביחס ל- det. --Grisha 23:48, 11 במאי 2012 (IDT)
הבוחן
מה אם החומר לבוחן? מתי יפורסמו שאלות לדוגמא וכו ...
- עד אלגברה ליניארית. בקרוב. --Grisha 23:52, 11 במאי 2012 (IDT)
תרגיל 6 שאלה 2-מציאת הסיבוכיות
איך בדיוק אנחנו אמורים למצוא את הסיבוכיות של כל פעולה? אין לנו את המימוש של הפעולה det, אז לא ניתן לחשב את הסיבוכיות שלה, והפעולה שאנחנו כותבים היא רקורסיבית, אז גם לא ניתן לחשב את הסיבוכיות שלה....
- השאלה הזאת חוזרת על עמצה כל הזמן. אתם לא מחשבים את הסיבוכיות אלא מעריכים אותה לפי זמן ריצה עבור קלטים בגודל שונה. עושים את זה ע"י פקודות tic ו- toc. --Grisha 14:28, 12 במאי 2012 (IDT)
- ואיך מעריכים O(n!)?
- אתה מגדיל גודל של הקלט ומודד זמן. אחרי זה אתה משרטט את הגרף הזמן כפונקציה של גודל הקלט ואם מקבל גרף אם שיפוע קרוב לערך קבוע (לא תקבל ממש קו ישר, אבל משהו שקרוב לקו ישר) - אז הסיבוכיות O(n). --Grisha 17:44, 12 במאי 2012 (IDT)
- ואיך מעריכים O(n!)?
- התכוונתי ל[math]\displaystyle{ O(n!) }[/math], איך מעריכים אותה? (ההסבר היבש פחות בעייתי)
- לא שמתי לב לסימן קריאה. קודם כל, תשרטט את הגרף של עצרת. לאחר מכך, תביט ב נוסחא הזאת. על הסיבוכיות של פעולות מתמטיות אפשר לקרוא כאן. --Grisha 18:14, 12 במאי 2012 (IDT)
- התכוונתי ל[math]\displaystyle{ O(n!) }[/math], איך מעריכים אותה? (ההסבר היבש פחות בעייתי)
תרגיל 6 שאלה 3
לא הבנתי איך הפקודה pinv תעזור לי למצוא מרחק בין הנק' למישור... הרי אפשר פשוט למצוא את הווקטור המאונך למישור שעובר בראשית הצירים ( במקרה שלנו זה הווקטור (2,7a/10, 1) ) (a זה אלפא) ואז פשוט מציבים אותו כפול סקלר t במשוואה, וקיבלנו משוואה עם נעלם אחד.
מהו חילוק מטריצות?
אפשר הסבר על פעולת "חילוק" מטריצות? לא הצלחתי להבין מה help. מה זה מוצא, ומה המטריצות המחולקות צריכות לקיים. ומה ההבדל בין A/b לבין A\b (ה '\' בכיוונים הפוכים). שמתי לב ששניהם קיימים, ומבצעים משהו שונה, מה ההבדלים ביניהם?
- אתה מוזמן להסתכל למצגות של תרגולים. --Grisha 13:34, 13 במאי 2012 (IDT)
שאלה 3
האם אני צריך לכתוב פונקציה שמקבלת את אלפא כפרמטר, ואז לשלוח לפונקציה ערכים בין -10 ל 10 ? יש סיבה שבחרתם את אלפא דווקא בקטע הזה או שזה שרירותי?
- המישוש שלך. העיקר שזה יעבוד ועדיף אם יעבוד יעיל. --Grisha 18:30, 13 במאי 2012 (IDT)
ועכשיו לשאלות שלא הבנתי : אני מניח ש"הדרך הרגילה" שהתכוונתם היא ע"י הצבת בנוסחה של מרחק נקודה ממישור (מצאתי באינטרנט)? אז לא ברור לי מה היא הדרך עם pinv. ואיך הפונקציה הזו קשורה. אני הרי צריך למצוא את אורך האנך מראשית הצירים למישור. איך זה אמור להיות קשור ללפתור מערכת משוואות? אפשר הכוונה או שאולי אני לא מבין משהו?
- פונקציה pinv לא פותרת מערכת משוואות ליניארית, היא מוצאת מטריצה פסאודו-הופכית. --Grisha 18:30, 13 במאי 2012 (IDT)
עריכה : עוד משהו, אני אמור לכתוב 2 פונקציות שונות, כן? אחת לכל שיטה? (הרגילה, ועם pinv שעוד לא ברור איך עושים את זה איתו )
- המישוש הוא לבחירתך. אפשר שתי פונקציות, אפשר אחת, אפשר סקריפט. --Grisha 18:30, 13 במאי 2012 (IDT)
אוקיי, אבל איך pinv אמורה בדיוק לעזור לי למצוא מרחק ?
- זאת בדיוק השאלה שאתה צריך לענות עליה. --Grisha 19:04, 13 במאי 2012 (IDT)
כן , אבל אני כבר לא מוצא פתרון לזה . פתרתי בדרך הרגילה (ע"י הצבה בנוסחה) ועובד לי. אני לא רואה איך להפוך מטריצה עוזר לי למצוא מרחק. אפשר לפחות רמז ? הסתכלתי גם במצגת - אין הכוונה. ואני לא רואה דרך לעשות זאת. אני תקוע |
- pinv עובד גם על המטריצות וגם על וקטורים. תמצא (אם אתה לו מכיר) נוסחא למרחק בצורה וקטורית. --Grisha 19:16, 13 במאי 2012 (IDT)
שאלה על הבוחן
מי מכין אותו, אתם המתרגלים, או המרצה?
- למה זה חשוב? --Grisha 19:05, 13 במאי 2012 (IDT)
הבוחן
האם הבוחן יהיה עם חומר פתוח? והאם הוא יהיה מול מחשב? תודה
- חומר סגור, לא מול מחשב. --Shimi 11:16, 14 במאי 2012 (IDT)
מה זה מטריצה פסאדו-הפיכה?
לא הבנתי מה זה בדיוק
- אתה מוזמן להסתכל במצגות וב- help של Matlab. ללא פירוט, אם A מטריצה כלשהי (לאו דווקא ריבועית), אז [math]\displaystyle{ A*pinv(A)=I }[/math], אך [math]\displaystyle{ pinv(A)*A \ne I }[/math]. --Grisha 20:54, 13 במאי 2012 (IDT)
שאלה 2
האם אסור בכלל להשתמש ב-det? אני לא מבין איך אפשר לפתור את השאלה ללא שימוש ב-det בכלל, הרי אפילו בשיטת המינורים, לאחר שאתה מחלק את המטריצה לפי 'חילוק' של עמודה ושורה שאתה מוחק-אתה עושה דטרמיננטה לכל מטריצה שהתקבלה..
- אם המטריצה שהתקבלה לאחר הסרת שורה-עמודה היא מגודל 2X2 הנוסחא היא פשוטה, אם גדולה מכך תפעיל גם עליה את שיטת המינורים. (תהליך רקורסיבי) --Shimi 11:20, 14 במאי 2012 (IDT)