10

में स्थिति छोड़ने या खोने के बिना वर्तमान सेल का मूल्यांकन करें मैं नोटबुक इंटरफ़ेस का उपयोग करके गणित (8 या ऊपर) में लोगो डिज़ाइन के साथ प्रयोग कर रहा हूं और मैं जनरेटिंग फॉर्मूला ए एलओटी को बदलना चाहता हूं। समस्या यह है कि मुझे केवल SHIFT + ENTER पता है जो मुझे अपने वर्तमान सेल के बाहर कूदता है और मेरी स्थिति खो देता है।गणित

क्या मौजूदा सेल का मूल्यांकन किए बिना इसे छोड़ने और अपनी स्थिति खोने का कोई तरीका है? तो: एक सेल का मूल्यांकन करें और वापस के अंदर उसी सेल पर सटीक स्थिति पर मैंने पर SHIFT + ENTER दबाया।

क्या मैं एक बार उपयोग करने के लिए आया था पंक्तियों के साथ किया गया था:

a = Exp[1.994 \[Pi]/(3 I)]; 

b = Nest[{#, a #, a\[Conjugate] #, #} &, 1, 5]; 

{Re[#], Im[#]} & /@ 
    Accumulate[ 
    Flatten[{0, a b, a\[Conjugate] b, -b}]] // {\[Rho]\[Chi], # // 
    Line} & // Graphics 

NotebookFind[EvaluationNotebook[], "E" <> "xp", Previous]; 

लेकिन मुझे आशा है कि वहाँ सिर्फ एक कुंजी संयोजन या sth है। कि मुझे पता नहीं है।

संपादित करें:

a = Exp[(*1*)1.994 \[Pi]/(3 I)]; 

b = Nest[{#, a #, a\[Conjugate] #, #} &, (*2*)1, (*3*)5]; 

{Re[#], Im[#]} & /@ 
    Accumulate[ 
    Flatten[{0, a b, a\[Conjugate] b, -b}]] // {\[Rho]\[Chi], # // 
    Line} & // Graphics 

Do[NotebookFind[EvaluationNotebook[], "(*1*)", Previous], {2}]; 

के रूप में आंशिक रूप से क्रिस Dengen ने सुझाव दिया मेरे समाधान के लिए एक अच्छी छोटी सुधार है।

संपादित करें 2:

NotebookFind[EvaluationNotebook[], "(*1*)", EvaluationCell] 

यह हल करती है:

  • कोशिकाओं है कि उत्पादन के साथ इन केवल काम एक या उत्पादन की कोशिकाओं के एक ज्ञात संख्या

EvaluationCell कम से प्रलेखित है वास्तव में खोजने के लिए इतना मुश्किल है कि मैं बस उस पर ठोकर खाई। मूल्यांकन का उपयोग करके खोज ऊपर से शुरू होती है (दो बार निर्माण को समाप्त करना) क्योंकि हम स्क्रीन के नीचे आउटपुट सेल से नहीं आते हैं।

क्या हल किया जा करने के लिए रहता है:

  • एक मैनुअल सेल कीपिंग (सेल स्तर पर बहीखाता) करने की जरूरत है
  • टिप्पणी आधारित लैंडिंग मार्करों clutters का उपयोग कर इनपुट कोशिकाओं
  • रुचि के स्थानों पर उतरने

नोट इस सवाल के बारे में मौजूदा स्थिति को खोने नहीं है जब एक SHIFT + एक मेथेमेटिका नोटबुक सेल के अंदर एंटर प्रेस है। यह सामग्री या मैनिपुलेट के बारे में नहीं है। शुरुआत में यह स्पष्ट नहीं करने के लिए खेद है।

अस्थायी नोट

अब निम्नलिखित की कोशिश कर रहा: एक विकल्प के मूल्यांकन कुंजी संयोजन

  • जब शुरू हो रहा परिभाषित करने के लिए

    1. उपयोग ईवेंट हैंडलर्स, में सही कुंजीपटल स्थिति स्टोर करने के लिए एक रास्ता खोजने वर्तमान इनपुट सेल
    2. वर्तमान इनपुट सेल का मूल्यांकन
    3. टी में स्थिति को पुनर्स्थापित करें वह वर्तमान इनपुट सेल

    मुझे आंतरिक रूप से उम्मीद है कि कुछ फ़ंक्शन केवल आशावादी होने का मौका लेकर स्टोर/पुनर्स्थापित कर सकते हैं। हालांकि यथार्थवादी होने के नाते, मुझे उम्मीद है कि मैं वर्तमान कीबोर्ड स्थिति पाने के लिए भी एक रास्ता ढूंढ सकता हूं। अगर मेरे प्रयास से कुछ भी भौतिक हो जाता है तो यहां का पालन करेंगे।

  • +0

    किसी को भी बंद करने के लिए: कृपया महसूस करें कि यह वोल्फ्राम मैथमैटिका के बारे में एक सवाल है, न कि गणित! –

    +0

    @ माइकबेंटगेई अच्छी तरह से धन्यवाद, मैंने इसे अजीब भी पाया। SO पर बहुत सारे गणित उपयोगकर्ता/विशेषज्ञ हैं और मुझे आशा है कि उत्तर सभी के लिए दिलचस्प होगा। –

    +0

    क्या आपके पास एक अधिक गहन उदाहरण है जिसे हम समायोजित कर रहे पैरामीटर के साथ साथ खेल सकते हैं? –

    उत्तर

    5

    आप इस सेल अधिक से अधिक चला सकते हैं:

    a = Exp[1.994 \[Pi]/(3 I)]; 
    b = Nest[{#, a #, a\[Conjugate] #, #} &, 1, 5]; 
    {Re[#], Im[#]} & /@ 
        Accumulate[ 
        Flatten[{0, a b, a\[Conjugate] b, -b}]] // {# // 
        Line} & // Graphics 
    Do[NotebookFind[EvaluationNotebook[], "Exp", Previous], {3}]; 
    SelectionMove[EvaluationNotebook[], "Exp", After]; 
    
    +0

    धन्यवाद लेकिन मुझे वास्तव में क्या पसंद आएगा * * सेल * के अंदर * वापस * जमीन पर SHIFT + ENTER दबाए गए सटीक स्थिति पर वापस उतरना है। –

    +0

    आपका अंतिम उत्तर मेरे शुरुआती एक में सुधार है। नोटबुकफ़िंड के दूसरे तर्क में जो भी आप उपयोग करते हैं, उसे विभाजित करने के अतिरिक्त लाभ के साथ उस व्यक्ति को उस समय काम करने के लिए बहुत करीब रहने के लिए (* यहां *) टिप्पणियों में एक मार्कर के साथ मिलकर मिल सकता है। –

    +0

    स्वीकार किया गया क्योंकि आप एकमात्र ऐसे व्यक्ति थे जो प्रश्न की प्रकृति को समझ चुके हैं :) और आपके सुझाव ने अनुभव को बेहतर बनाने में मदद की, भले ही केवल थोड़ी सी छोटी हो। आपका बहुत बहुत धन्यवाद! –

    1

    वहाँ एक समारोह कहा जाता है जो की अनुमति देता है है 'जगह में मूल्यांकन':

    If[NumberQ[x], x++, x = 1]; 
    Print[x] 
    Do[SelectionMove[EvaluationNotebook[], Previous, Cell], {2}] 
    

    इस संस्करण पंक्ति 1 में ऍक्स्प बाद कर्सर स्थानों आप सेल के एक सेक्शन का चयन करने के लिए, और बस इसका मूल्यांकन करें। मैक पर यह नियंत्रण-एंटर की बजाय कमांड-एंटर है।

    मूल्यांकन मेनू देखें, मेनू प्रविष्टि बाध्य शॉर्टकट कुंजी संयोजन के साथ वहां होना चाहिए।

    +1

    प्रतीक्षा करें, जो वर्तमान चयन को इसकी मूल्यांकन अभिव्यक्ति के साथ बदल देता है। यही वह नहीं है जिसे आप चाहते थे, है ना? –

    2

    आप चीजों को वास्तव में अच्छा बनाने के लिए गतिशील का उपयोग कर सकते हैं।

    सेल में परिणाम प्रदर्शित करने के:

    Dynamic[b = Nest[{#, a #, a\[Conjugate] #, #} &, 1, 5];] 
    Dynamic[{Re[#], Im[#]} & /@ 
        Accumulate[ 
        Flatten[{0, a b, a\[Conjugate] b, -b}]] // {\[Rho]\[Chi], # // 
         Line} & // Graphics] 
    

    सेल में संपादित करने के लिए:

    k = 1.994; 
    a = Exp[k \[Pi]/(2 I)]; 
    NotebookFind[EvaluationNotebook[], ToString[k], Previous]; 
    

    फिर आप सिर्फ प्रदर्शन के नीचे सेल संपादित कर सकते हैं। यह स्वचालित रूप से आपको सही स्थान देता है जहां आपने अपना मूल्य दर्ज किया था।

    Manipulate[a = Exp[k \[Pi]/(f I)]; 
    b = Nest[{#, a #, a\[Conjugate] #, #} &, 1, 5]; 
    {Re[#], Im[#]} & /@ 
        Accumulate[ 
        Flatten[{0, a b, a\[Conjugate] b, -b}]] // {\[Rho]\[Chi], # // 
         Line} & // Graphics, 
    {{k, 1.994}, -3, 3}, 
    {{f, 3}, -3, 3}] 
    
    3

    के बारे में कैसे Manipulate का उपयोग कर: आप चीजों को अपने आप पर और भी आसान आप में हेरफेर का उपयोग कर सकते बनाने के लिए चाहते हैं, तो?

    Manipulate[ 
    c = a; 
    b = Nest[[email protected], 1, 
        5]; {Re[#], Im[#]} & /@ 
        Accumulate[ 
        Flatten[{0, c b, c\[Conjugate] b, -b}]] // {Red, # // Line} & // 
        Graphics, {a, Exp[1.994 \[Pi]/(3 I)], 
        ControlType -> InputField}, {f, 
        HoldForm[{#, C#, c\[Conjugate] #, #} &], ImageSize -> Full, 
        ControlType -> InputField}] 
    

    आप केवल मूल्यों को संपादित कर सकते हैं, और एंटर मारने पर साजिश का एक नया संस्करण प्राप्त कर सकते हैं। आप Manipulate के शीर्ष-दाएं कोने में '+' बटन का उपयोग करके या तो बुकमार्क सेट करने या स्नैपशॉट पेस्ट करने के लिए अपने पसंदीदा उदाहरण सहेज सकते हैं।

    enter image description here

    +0

    यह एक साफ विचार है और निश्चित रूप से मुझे कुछ मामलों में उपयोग करना याद रखना होगा। फिर भी कभी-कभी मेरे पास मैट्रिस और अन्य सामानों के सभी प्रकार होते हैं और आपको मैनिपुलेट में ऐसी चीजों का कोई टाइपसेटिंग या अच्छा स्वरूपण नहीं मिलता है। यह अजीब रूप से प्रतिबंधित लगता है जैसे कि मुझे टर्मिनल पर सभी तरह से फेंक दिया जाता है जहां मैं केवल गैर-टाइपसेट सादे तारों में प्रवेश कर सकता हूं। –

    +0

    आप कुछ टाइपसेट रूपों (कट्टरपंथी, शक्तियों, आदि ...) का उपयोग कर इनपुट कर सकते हैं लेकिन मैं इनपुट क्षेत्र में अच्छी मैट्रिस प्राप्त करने में सक्षम नहीं था। (कम से कम ** डालने ** मेनू आइटम का उपयोग किए बिना नहीं। पंक्ति/कॉलम जोड़ने के लिए शॉर्टकट इनपुट फ़ील्ड में काम नहीं करते हैं।) –

    +0

    ब्रेट आप इनपुटफिल्ड्स में सूचियों के आस-पास मैट्रिक्सफॉर्म को लपेट सकते हैं और अच्छे प्रतिपादन प्राप्त कर सकते हैं लेकिन पाठ्यक्रम तो आपको इसके लिए परीक्षण करने और इसे अपने कोड में हटाने की आवश्यकता है। मैनिपुलेट [ यदि [हेड [x] === मैट्रिक्सफॉर्म, पहला [x], x], {x, मैट्रिक्सफॉर्म [{{2, 3}, {1, 2}}], कंट्रोल टाइप -> इनपुट फ़ील्ड} ] –

    2

    आप जो वर्तमान सेल निष्पादित करेंगे अपनी नोटबुक के शीर्ष करने के लिए एक सेल को जोड़ने के लिए निम्न स्तर नोटबुक प्रोग्रामिंग और एक सुविधा डॉक की गई कोशिकाएं कहते उपयोग कर सकते हैं। यह (सिद्धांत रूप में, इसे आजमाया नहीं है) कर्सर की स्थिति को सेल से बाहर नहीं लेना चाहिए।प्रोग्रामिंग रूप से डॉक किए गए सेल को बनाने के लिए, एक सेल बनाएं जिसमें बटन है जो आप चाहते हैं, फिर इस कोड को निष्पादित करें: SetOptions[SelectedNotebook[],"DockedCells"->{Cell[ BoxData[ToBoxes[...your code for execute button...]] , "DockedCell"]}];

    मैं कॉर्पोरेट लोगो के साथ एक निश्चित सेल या "सादा पाठ के रूप में प्रतिलिपि" के रूप में हर समय ऐसा करता हूं।/"बिटमैप के रूप में कॉपी करें" बटन। नोटबुक पर जो कर्नेल को भारी गड़बड़ कर देता है, मैं मेम प्रबंधन के लिए बटन जोड़ता हूं या कर्नेल को पुनरारंभ करता हूं। शॉर्टकट की श्रृंखला। आप एक से अधिक सेल [] ऑब्जेक्ट को डॉक किए गए सेल के रूप में ढेर कर सकते हैं।