該模型的創(chuàng)作者可提供應(yīng)用于該模型的這些等式、規(guī)則和約束的表達(dá)式。在仿真的情況下,創(chuàng)作者可能提供合適的仿真引擎,該仿真引擎提供模型參數(shù)之間的合適的仿真關(guān)系。建模組件1820可為創(chuàng)作者提供一種為等式、規(guī)則和約束提供自然符號(hào)表達(dá)式的機(jī)制。例如,熱力學(xué)相關(guān)模型的創(chuàng)作者可簡(jiǎn)單地從熱力學(xué)教科書中復(fù)制并粘貼等式。將模型參數(shù)綁定到數(shù)據(jù)字段的能力允許創(chuàng)作者使用創(chuàng)作者熟悉的任何符號(hào)(諸如創(chuàng)作者所依賴的教科書中所使用的確切符號(hào))或者創(chuàng)作者想要使用的確切符號(hào)。
[0119]在求解之前,建模組件1820還標(biāo)識(shí)模型參數(shù)中的哪些要被求解(即下文中,單數(shù)情況的“輸出模型變量”,或復(fù)數(shù)情況的“輸出模型變量”,或可能為單個(gè)或多個(gè)輸出模型變量的“輸出模型變量(一個(gè)或多個(gè))”)。輸出模型變量可以是未知參數(shù),或者它們可以是已知模型參數(shù),其中已知模型參數(shù)的值受求解操作中的改變的支配。在圖18的示例中,在數(shù)據(jù)模型綁定操作之后,模型參數(shù)1811A、1811B和1811C是已知的,而模型參數(shù)1811D是未知的。因此,未知模型參數(shù)1811D可能是輸出模型變量之一。替代地或附加地,已知模型參數(shù)1811A、181IB和181IC中的一個(gè)或多個(gè)也可能為輸出模型變量。如果可能的話,求解器840然后求解輸出模型變量(一個(gè)或多個(gè))。在下文所述的一個(gè)實(shí)施例中,求解器1840能夠求解各種各樣的輸出模型變量,即使是在單個(gè)模型中,只要足夠的輸入模型變量被提供以允許求解操作被執(zhí)行。輸入模型變量可能是例如其值不受到求解操作期間的改變的支配的已知模型參數(shù)。例如,在圖18中,如果模型參數(shù)1811A和1811D是輸入模型變量,求解器可能反而替代地求解輸出模型變量181IB和1811C。在一個(gè)實(shí)施例中,求解器可能為單個(gè)模型參數(shù)輸出許多不同數(shù)據(jù)類型中的任何一個(gè)。例如,不管操作數(shù)是整數(shù)、浮點(diǎn)數(shù)、向量還是矩陣,某些等式操作(諸如加法、減法等)都適用。
[0120]在一個(gè)實(shí)施例中,即使當(dāng)求解器1840不能求解某一輸出模型變量時(shí),即使實(shí)際數(shù)值結(jié)果(或無論什么求解出的數(shù)據(jù)類型)的完全解是不可能的,求解器1800仍能給出該輸出模型變量的部分解。這允許流水線通過提示創(chuàng)作者需要什么信息來得出完全解來促進(jìn)增量式開發(fā)。這還幫助消除創(chuàng)作時(shí)和使用時(shí)之間的區(qū)別,因?yàn)樨灤└鞣N創(chuàng)作階段至少部分解是可用的。舉一抽象示例,假設(shè)分析模型包括等式a = b+c+d。假設(shè)a、c和d是輸出模型變量,b是具有已知值5 (在該情況中是整數(shù))的輸入模型變量。在求解過程中,求解器1840僅能夠求解輸出模型變量之一“d”,并將值6 (整數(shù))賦予稱為“d”的模型參數(shù),但是求解器840不能求解“C”。由于“a”依賴于“C”,則稱為“a”的模型參數(shù)也保持未知且未被求解。在該情況下,不是將整數(shù)值賦予“a”,求解器而是可能進(jìn)行部分解并將串值“c+11”輸出到模型參數(shù)“a”。如先前所述,當(dāng)域?qū)<艺趧?chuàng)作一分析模型時(shí)這可能尤其有用,且將實(shí)質(zhì)上用于提供關(guān)于模型參數(shù)“a”的內(nèi)容的部分信息以及也將用于提示創(chuàng)作者需要提供允許“c”模型參數(shù)被求解的某些進(jìn)一步的模型分析。該部分解結(jié)果可能或許以某種方式被輸出在視圖合成中,以允許域?qū)<铱吹皆摬糠纸Y(jié)果。
[0121]求解器1840在圖18中以簡(jiǎn)化形式被示出。然而,如將參考圖19所描述的那樣,求解器1840可指導(dǎo)多個(gè)構(gòu)成的求解器的操作。在圖18中,建模組件1820然后使得模型參數(shù)(包括現(xiàn)在已知和被求解出的輸出模型變量)可用作要被提供給圖19的視圖部分1900的輸出。
[0122]圖19例示出表示圖16的視圖部分1630的示例且表示重算用戶接口 1200中的可視化的控件的示例的視圖部分1900。視圖部分1900從圖18的分析部分1800接收模型參數(shù)1811。視圖部分還包括包含視圖組件的集合的視圖組件儲(chǔ)存庫(kù)1920。例如,視圖組件儲(chǔ)存庫(kù)1920在該示例中被例示為包括視圖組件1921至1924,但是視圖組件儲(chǔ)存庫(kù)1920可包含任意數(shù)量的視圖組件。視圖組件各自可包括零個(gè)或多個(gè)輸入?yún)?shù)。例如,視圖組件1921不包括任何輸入?yún)?shù)。然而,視圖組件1922包括兩個(gè)輸入?yún)?shù)1942A和1942B。視圖組件1923包括一個(gè)輸入?yún)?shù)1943,而視圖組件1924包括一個(gè)輸入?yún)?shù)1944。也就是說這僅僅是一示例。輸入?yún)?shù)可(但非必須)影響視覺項(xiàng)如何被渲染。視圖組件1921不包括任何輸入?yún)?shù)的事實(shí)強(qiáng)調(diào)了可能存在無需引用任何模型參數(shù)而被生成的視圖??紤]僅包括不改變的固定(內(nèi)建)數(shù)據(jù)的視圖。這樣的視圖可能例如為用戶構(gòu)成參考信息。替代地,考慮僅提供一種瀏覽目錄的方式的視圖,使得項(xiàng)目可從中被選取來導(dǎo)入模型中。
[0123]每個(gè)視圖組件1921至1924包括或關(guān)聯(lián)于對(duì)應(yīng)的邏輯,當(dāng)視圖合成組件1940使用對(duì)應(yīng)的視圖組件輸入?yún)?shù)(一個(gè)或多個(gè))(如果有的話)執(zhí)行邏輯時(shí),使得相應(yīng)的視圖項(xiàng)被放置在虛擬空間1950中。虛擬項(xiàng)可以是靜態(tài)圖像或物體,或者可以是動(dòng)態(tài)動(dòng)畫化的虛擬項(xiàng)或物體。例如,視圖組件1921至1924中的每一個(gè)與對(duì)應(yīng)的邏輯1931至1934相關(guān)聯(lián),當(dāng)邏輯被執(zhí)行時(shí)使得對(duì)應(yīng)的虛擬項(xiàng)1951至1954分別被渲染在虛擬空間1950中。虛擬項(xiàng)被例示為簡(jiǎn)單形狀。然而,虛擬項(xiàng)可以是相當(dāng)復(fù)雜的形式,或許甚至包括動(dòng)畫。在本說明書中,當(dāng)一視圖項(xiàng)被渲染在虛擬空間中時(shí),這意味著視圖合成組件已經(jīng)創(chuàng)作了足夠的指令,這些指令當(dāng)被提供給渲染引擎時(shí),渲染引擎能夠在指定的位置和以指定的方式在顯示器上顯示該視圖項(xiàng)。
[0124]使用例如圖16的創(chuàng)作組件1640,視圖組件1921至1924或許甚至可作為視圖數(shù)據(jù)被提供給視圖部分1900。例如,創(chuàng)作組件1640可能提供使得創(chuàng)作者能夠從若干幾何單形中選擇,或者或許組成其他幾何單形的選擇器。創(chuàng)作者也可能為每個(gè)視圖組件指定輸入?yún)?shù)的類型,而某些輸入?yún)?shù)可以是視圖部分1900所強(qiáng)加的默認(rèn)輸入?yún)?shù)。與每個(gè)視圖組件1921至1924相關(guān)聯(lián)的邏輯也可作為視圖數(shù)據(jù)被提供,和/或也可包括由視圖部分1900本身提供的某些默認(rèn)功能。
[0125]視圖部分1900包括被配置成將模型參數(shù)中的至少一些綁定到視圖組件1921至1924的對(duì)應(yīng)輸入?yún)?shù)的模型視圖綁定組件1910。例如,模型參數(shù)1811A被綁定到視圖組件1922的輸入?yún)?shù)1942A,如箭頭1911A所表示的那樣。模型參數(shù)1811B被綁定到視圖組件1922的輸入?yún)?shù)1942B,如箭頭1911B所表示的那樣。同樣,模型參數(shù)1811D被分別綁定到視圖組件1923和1924的輸入?yún)?shù)1943和1944,如箭頭1911C所表示的那樣。模型參數(shù)1811C未被示為綁定到任何對(duì)應(yīng)的視圖組件參數(shù),強(qiáng)調(diào)了并非所有的模型參數(shù)都需要被流水線的視圖部分所使用,即使那些模型參數(shù)在分析部分中是重要的。同樣,模型參數(shù)1811D被示為綁定到視圖組件的兩個(gè)不同輸入?yún)?shù),表示模型參數(shù)可被綁定到多個(gè)視圖組件參數(shù)。在一個(gè)實(shí)施例中,模型參數(shù)與視圖組件參數(shù)之間的綁定的定義可以通過以下來被制定:1)由創(chuàng)作者在創(chuàng)作時(shí)顯式設(shè)定,2)由用戶在使用時(shí)顯式設(shè)定(服從于創(chuàng)作者強(qiáng)加的任何限制),3)基于算法啟發(fā)由創(chuàng)作組件1640自動(dòng)綁定,和/或4)在確定不能在算法上作出綁定時(shí)由創(chuàng)作組件提示創(chuàng)作者和/或用戶指定綁定。
[0126]本發(fā)明可具體化為其它具體形式而不背離其精神或本質(zhì)特征。所描述的實(shí)施例在所有方面都應(yīng)被認(rèn)為僅是說明性而非限制性的。因此,本發(fā)明的范圍由所附權(quán)利要求書而非前述描述指示。落入權(quán)利要求書的等效方案的含義和范圍內(nèi)的所有改變應(yīng)被權(quán)利要求書的范圍所涵蓋。
【主權(quán)項(xiàng)】
1.一種包括其上具有計(jì)算機(jī)可執(zhí)行指令的一個(gè)或多個(gè)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)的計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)可執(zhí)行指令被結(jié)構(gòu)化成使得在計(jì)算系統(tǒng)的一個(gè)或多個(gè)處理器執(zhí)行時(shí),使所述計(jì)算系統(tǒng)執(zhí)行一種用于便于將一數(shù)據(jù)源綁定到一復(fù)合控件的方法,所述方法包括: 標(biāo)識(shí)所述復(fù)合控件的多個(gè)特性的動(dòng)作; 將一特定數(shù)據(jù)源與所述復(fù)合控件相關(guān)聯(lián)的動(dòng)作,所述特定數(shù)據(jù)源具有被組織在一模式內(nèi)的多個(gè)字段;以及 對(duì)于所述復(fù)合控件的所述多個(gè)特性中的至少一個(gè)特性,至少使用所述數(shù)據(jù)源的所述模式以及關(guān)于對(duì)應(yīng)特性的元數(shù)據(jù)來標(biāo)識(shí)所述特定數(shù)據(jù)源的可被綁定到所述復(fù)合控件的所述對(duì)應(yīng)特性的一組一個(gè)或多個(gè)字段的動(dòng)作。2.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于,所述復(fù)合控件的所述對(duì)應(yīng)特性已被綁定了一變換的一輸出參數(shù),其中經(jīng)由所述變換通過綁定到所述變換的一個(gè)或多個(gè)輸入?yún)?shù),所述特定數(shù)據(jù)源的所述一組一個(gè)或多個(gè)字段可被綁定到所述復(fù)合控件的所述對(duì)應(yīng)特性。3.根據(jù)權(quán)利要求2所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于,所述復(fù)合控件被包括在一重算用戶界面內(nèi),且被綁定到包括所述變換的一變換鏈的輸入?yún)?shù)和輸出參數(shù)。4.根據(jù)權(quán)利要求3所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于,所述變換是聲明性的。5.根據(jù)權(quán)利要求4所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于,所述計(jì)算機(jī)可執(zhí)行指令被進(jìn)一步結(jié)構(gòu)化使得在由所述一個(gè)或多個(gè)處理器執(zhí)行時(shí),所述計(jì)算系統(tǒng)通過執(zhí)行以下動(dòng)作來對(duì)所述聲明性變換的編輯作出響應(yīng): 至少使用所述數(shù)據(jù)源的所述模式以及關(guān)于所述對(duì)應(yīng)特性的元數(shù)據(jù)來標(biāo)識(shí)所述特定數(shù)據(jù)源的可被綁定到所述復(fù)合控件的所述對(duì)應(yīng)特性的一組一個(gè)或多個(gè)其他字段的動(dòng)作。6.根據(jù)權(quán)利要求2所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于,所述特定數(shù)據(jù)源的所述一組一個(gè)或多個(gè)字段也使用與所述復(fù)合控件的所述對(duì)應(yīng)特性相關(guān)聯(lián)的所述變換來標(biāo)識(shí)。7.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于,所述方法進(jìn)一步包括: 將所述特定數(shù)據(jù)源的所述一組一個(gè)或多個(gè)標(biāo)識(shí)出的字段中的一個(gè)字段默認(rèn)綁定到所述復(fù)合控件的所述對(duì)應(yīng)特性的動(dòng)作。8.根據(jù)權(quán)利要求7所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于,所述計(jì)算機(jī)可執(zhí)行指令被進(jìn)一步結(jié)構(gòu)化使得在由所述一個(gè)或多個(gè)處理器執(zhí)行時(shí),所述計(jì)算系統(tǒng)通過執(zhí)行以下動(dòng)作來對(duì)用戶輸入作出響應(yīng): 確定所述用戶輸入指示出改變到所述復(fù)合控件的所述對(duì)應(yīng)特性的所述綁定的意圖的動(dòng)作;以及 響應(yīng)于所述確定的動(dòng)作,將所述特定數(shù)據(jù)源的所述一組一個(gè)或多個(gè)標(biāo)識(shí)出的字段中的另一個(gè)字段綁定到所述復(fù)合控件的所述對(duì)應(yīng)特性的動(dòng)作。9.根據(jù)權(quán)利要求1所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于,所述將所述特定數(shù)據(jù)源與所述復(fù)合控件相關(guān)聯(lián)的動(dòng)作包括: 使用與所述復(fù)合控件的所述多個(gè)特性相關(guān)聯(lián)的元數(shù)據(jù)以及至少所述特定數(shù)據(jù)源的所述模式來確定所述特定數(shù)據(jù)源可被用作要綁定到所述復(fù)合控件的數(shù)據(jù)的源的動(dòng)作。10.一種用于便于將一數(shù)據(jù)源綁定到一復(fù)合控件的方法,所述方法包括: 標(biāo)識(shí)所述復(fù)合控件的多個(gè)特性的動(dòng)作; 將一特定數(shù)據(jù)源與所述復(fù)合控件相關(guān)聯(lián)的動(dòng)作,所述特定數(shù)據(jù)源具有被組織在一模式內(nèi)的多個(gè)字段;以及 對(duì)于所述復(fù)合控件的所述多個(gè)特性中的至少一個(gè)特性,至少使用所述數(shù)據(jù)源的所述模式以及關(guān)于對(duì)應(yīng)特性的元數(shù)據(jù)來標(biāo)識(shí)所述特定數(shù)據(jù)源的可被綁定到所述復(fù)合控件的所述對(duì)應(yīng)特性的一組一個(gè)或多個(gè)字段的動(dòng)作。
【專利摘要】數(shù)據(jù)源到復(fù)合控件的自動(dòng)化綁定。復(fù)合控件的特性被標(biāo)識(shí)。此外,某一特定數(shù)據(jù)源與該復(fù)合控件相關(guān)聯(lián)。對(duì)于該復(fù)合控件的一個(gè)或多個(gè)特性中的每一個(gè)特性,關(guān)于該復(fù)合控件的信息以及所述數(shù)據(jù)源被用來標(biāo)識(shí)該特定數(shù)據(jù)源的可被綁定到該復(fù)合控件的對(duì)應(yīng)特性的一組一個(gè)或多個(gè)字段。如果該復(fù)合控件的該對(duì)應(yīng)特性已被綁定了一聲明性變換的一輸出參數(shù),則在標(biāo)識(shí)可被用來綁定到該復(fù)合控件的該對(duì)應(yīng)特性的該組一個(gè)或多個(gè)字段時(shí),該變換的本質(zhì)也可被考慮。
【IPC分類】G06F17/24
【公開號(hào)】CN105210054
【申請(qǐng)?zhí)枴緾N201480020887
【發(fā)明人】V·米塔爾, S·T·普之伊爾, V·巴帕特, B·霍茲
【申請(qǐng)人】微軟技術(shù)許可有限責(zé)任公司
【公開日】2015年12月30日
【申請(qǐng)日】2014年4月11日
【公告號(hào)】EP2984585A2, US20140310273, WO2014169161A2, WO2014169161A3