{"id":1104,"date":"2017-08-05T12:36:44","date_gmt":"2017-08-05T10:36:44","guid":{"rendered":"http:\/\/darksun190.cn\/?p=1104"},"modified":"2017-08-05T12:36:44","modified_gmt":"2017-08-05T10:36:44","slug":"%e5%90%91%e9%87%8f%e7%a9%ba%e9%97%b4%e7%9a%84%e5%9f%ba%e6%9c%ac%e7%ae%97%e6%b3%95%e9%aa%8c%e8%af%81","status":"publish","type":"post","link":"http:\/\/darksun190.cn\/blog\/?p=1104","title":{"rendered":"\u5411\u91cf\u7a7a\u95f4\u7684\u57fa\u672c\u7b97\u6cd5\u9a8c\u8bc1"},"content":{"rendered":"<p>\u4e3b\u8981\u662f\u57fa\u53d8\u6362\u4e0e\u5750\u6807\u53d8\u6362\u3002<\/p>\n<p>\u5148\u4e0d\u8003\u8651\u5750\u6807\u5e73\u79fb\uff08\u4eff\u5c04\uff09\u7684\u60c5\u51b5\uff0c\u53ea\u8003\u8651\u5750\u6807\u7cfb\u65cb\u8f6c\uff080\u70b9\u4e0d\u53d8\u7684\u60c5\u51b5\uff09\u3002<\/p>\n<p>\u7b1b\u5361\u5c14\u5750\u6807\u7cfb\u662f\u4e09\u4e2a\u8f74\u6b63\u4ea4\u7684\u5750\u6807\u7cfb\uff0c\u5728\u5411\u91cf\u7a7a\u95f4\u91cc\uff0c\u5176\u5b9e\u5c31\u662f\u7ef4\u6570\u4e3a3\u7684\u5411\u91cf\u7a7a\u95f4\u7684\u4e00\u4e2a\u57fa\uff0c\u4e143\u4e2a\u5411\u91cf\u6b63\u4ea4\u4e14\u90fd\u662f\u5355\u4f4d\u5411\u91cf\u3002<\/p>\n<p>\u5047\u8bbe\u5b58\u5728\u4e00\u4e2a\u57fa\u672c\u5750\u6807\u7cfb(\u81ea\u7136\u57fa\uff09\uff0c\u90a3\u4e48\u4e09\u4e2a\u8f74\u5206\u522b\u662f<\/p>\n<p>\\(X_{O}=\\begin{bmatrix}1\\\\0\\\\0\\end{bmatrix}Y_{O}=\\begin{bmatrix}0\\\\1\\\\0\\end{bmatrix}Z_{O}=\\begin{bmatrix}0\\\\0\\\\1\\end{bmatrix}\\)<\/p>\n<p>\u5bf9\u5e94\u7684\u5750\u6807\u7cfb\u77e9\u9635\u4e3a<\/p>\n<p>\\(O=\\begin{bmatrix}1&amp;0&amp;0\\\\0&amp;1&amp;0\\\\0&amp;0&amp;1\\end{bmatrix}\\)<\/p>\n<p>\u5c06\u5750\u6807\u7cfb\u5ef6Z\u8f74\u65cb\u8f6c45\u5ea6\uff0c\u5bf9\u5e94\u7684\u4e09\u4e2a\u8f74\u53d8\u4e3a<\/p>\n<p>\\(X_{A}=\\begin{bmatrix}\\frac{\\sqrt{2}}{2}\\\\\\frac{\\sqrt{2}}{2}\\\\0\\end{bmatrix}Y_{A}=\\begin{bmatrix}-\\frac{\\sqrt{2}}{2}\\\\\\frac{\\sqrt{2}}{2}\\\\0\\end{bmatrix}Z_{A}=\\begin{bmatrix}0\\\\0\\\\1\\end{bmatrix}\\)<\/p>\n<p>\u5f97\u5230\u5750\u6807\u7cfb<\/p>\n<p>\\(A=\\begin{bmatrix}\\frac{\\sqrt{2}}{2}&amp;-\\frac{\\sqrt{2}}{2}&amp;0\\\\\\frac{\\sqrt{2}}{2}&amp;\\frac{\\sqrt{2}}{2}&amp;0\\\\0&amp;0&amp;1\\end{bmatrix}\\)<\/p>\n<p>\u5c06\u5750\u6807\u7cfb\u5ef6Y\u8f74\u65cb\u8f6c90\u5ea6\uff0c\u5bf9\u5e94\u7684\u4e09\u4e2a\u8f74\u53d8\u4e3a<\/p>\n<p>\\(X_{B}=\\begin{bmatrix}0\\\\0\\\\-1\\end{bmatrix}Y_{B}=\\begin{bmatrix}0\\\\1\\\\0\\end{bmatrix}Z_{B}=\\begin{bmatrix}1\\\\0\\\\0\\end{bmatrix}\\)<\/p>\n<p>\u5f97\u5230\u5750\u6807\u7cfb<\/p>\n<p>\\(B=\\begin{bmatrix}0&amp;0&amp;1\\\\0&amp;1&amp;0\\\\-1&amp;0&amp;0\\end{bmatrix}\\)<\/p>\n<p>\u5728C#\u91cc\u7528Math.Net\u5b9e\u73b0<\/p>\n<pre class=\"lang:c# decode:true\" title=\"\u5b9e\u73b0\u5750\u6807\u7cfb\u77e9\u9635\">            DenseMatrix O = DenseMatrix.OfArray(new double[,]\n            {\n                {1,0,0 },\n                {0,1,0 },\n                {0,0,1 }\n            });\n            double SqrtTwo = Math.Sqrt(2) \/ 2.0;\n            DenseMatrix A = DenseMatrix.OfArray(new double[,]\n            {\n                {SqrtTwo,-SqrtTwo,0 },\n                {SqrtTwo,SqrtTwo,0 },\n                {0,0,1 }\n            });\n            DenseMatrix B = DenseMatrix.OfArray(new double[,]\n            {\n                {0,0,-1 },\n                {0,1,0 },\n                {1,0,0 }\n            });<\/pre>\n<p>\u5b9a\u4e49\u4e00\u4e2a\u70b9\uff08\u5411\u91cf\uff09\uff0c\u5373\u6574\u4e2a\u5411\u91cf\u7a7a\u95f4\u96c6\u5408\u91cc\u7684\u4e00\u4e2a\u5143\u7d20\uff0c\u8fd9\u4e2a\u70b9P\u5728\u57fa\u672c\u5750\u6807\u7cfb\u4e0b\u7684\u5750\u6807\u503c\u4e3a\\(\\left(1,1,0\\right)\\)\uff0c\u5373\u5b58\u5728\u4e00\u7ec4\u5e38\u6570<\/p>\n<p>\\[\\begin{cases}\\lambda_{O1}=1\\\\ \\lambda_{O2}=1\\\\ \\lambda_{O3}=0\\end{cases}\\]<\/p>\n<p>\u6ee1\u8db3<\/p>\n<p>\\(\\begin{align*}P&amp;=\\lambda_{O1}X_{O}+\\lambda_{O2}Y_{O}+\\lambda_{O3}Z_{O}\\\\&amp;=1*\\begin{bmatrix}1\\\\0\\\\0\\end{bmatrix}+1*\\begin{bmatrix}0\\\\1\\\\0\\end{bmatrix}+0*\\begin{bmatrix}0\\\\0\\\\1\\end{bmatrix}\\end{align*}\\)<\/p>\n<p>\u8fd9\u51e0\u4e2a\u53d8\u91cf\u6ee1\u8db3\u5173\u7cfb<\/p>\n<p>\\[OP=AP_{A}=BP_{B}\\]<\/p>\n<p>\u90a3\u4e48P\u5728A\u548cB\u57fa\u4e0a\u7684\u5750\u6807\u4e3a\uff1a<\/p>\n<p>\\[P_{A}=A^{-1}P=\\begin{bmatrix}\\sqrt{2}\\\\0\\\\0\\end{bmatrix}\\]<\/p>\n<p>\\[P_{B}=B^{-1}P=\\begin{bmatrix}0\\\\1\\\\1\\end{bmatrix}\\]<\/p>\n<p>\u4ee3\u7801\u5b9e\u73b0<\/p>\n<pre class=\"lang:c# decode:true\">            DenseVector P = DenseVector.OfArray(new double[] { 1, 1, 0 });\n            DenseVector PA = A.Inverse() * P as DenseVector;\n            DenseVector PB = B.Inverse() * P as DenseVector;\n\n            Debug.WriteLine(PA);    DenseVector 3-Double 1.41421 0 0\n            Debug.WriteLine(PB);    DenseVector 3-Double 0 1 1<\/pre>\n<p>\u8fc7\u6e21\u77e9\u9635<\/p>\n<p>\\(B=AA^{-1}B\\)<\/p>\n<p>\u53e6\\(Q=A^{-1}B\\)<\/p>\n<p>\u5219\\(B=AQ\\)<\/p>\n<p>\u8fc7\u6e21\u77e9\u9635\uff08\u57fa\u53d8\u6362\uff09\uff0c\u5b9e\u9645\u662f\u4e0a\u4e24\u4e2a\u5750\u6807\u7cfb\u4e4b\u95f4\u7684\u53d8\u5316\u5173\u7cfb\u3002<\/p>\n<p>\u53c8\u56e0\u4e3a<\/p>\n<p>\\[AP_{A}=BP_{B}\\]<\/p>\n<p>\u6240\u4ee5\\[P_{A}=A^{-1}BP_{B}\\]<\/p>\n<p>\\[P_{A}=QP_{B}\\]<\/p>\n<p>\u6216<\/p>\n<p>\\[P_{B}=Q^{-1}P_{A}\\]<\/p>\n<p>\u503c\u5f97\u6ce8\u610f\u7684\u662f\u8fc7\u6e21\u77e9\u9635\u5728\u5750\u6807\u7cfb\u53d8\u6362\u548c\u5750\u6807\u53d8\u6362\u8d77\u7684\u4f5c\u7528\u662f\u76f8\u53cd\u7684\u3002\u8fd9\u4e5f\u597d\u7406\u89e3\uff0c\u4e00\u4e2a\u662f\u5750\u6807\u7cfb\u8f6c\uff0c\u4e00\u4e2a\u662f\u70b9\u5728\u8f6c\uff0c\u6240\u4ee5\u65b9\u5411\u662f\u76f8\u53cd\u7684\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u4e3b\u8981\u662f\u57fa\u53d8\u6362\u4e0e\u5750\u6807\u53d8\u6362\u3002 \u5148\u4e0d\u8003\u8651\u5750\u6807\u5e73\u79fb\uff08\u4eff\u5c04\uff09\u7684\u60c5\u51b5\uff0c\u53ea\u8003\u8651\u5750\u6807\u7cfb\u65cb\u8f6c\uff080\u70b9\u4e0d\u53d8\u7684\u60c5\u51b5\uff09\u3002 \u7b1b\u5361\u5c14\u5750\u6807\u7cfb\u662f &hellip; <a href=\"http:\/\/darksun190.cn\/blog\/?p=1104\" class=\"more-link\">\u7ee7\u7eed\u9605\u8bfb<span class=\"screen-reader-text\">\u201c\u5411\u91cf\u7a7a\u95f4\u7684\u57fa\u672c\u7b97\u6cd5\u9a8c\u8bc1\u201d<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[8],"tags":[],"class_list":["post-1104","post","type-post","status-publish","format-standard","hentry","category-geo"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"http:\/\/darksun190.cn\/blog\/index.php?rest_route=\/wp\/v2\/posts\/1104","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/darksun190.cn\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/darksun190.cn\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/darksun190.cn\/blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/darksun190.cn\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1104"}],"version-history":[{"count":0,"href":"http:\/\/darksun190.cn\/blog\/index.php?rest_route=\/wp\/v2\/posts\/1104\/revisions"}],"wp:attachment":[{"href":"http:\/\/darksun190.cn\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1104"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/darksun190.cn\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1104"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/darksun190.cn\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1104"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}