{"id":2766,"date":"2024-03-13T05:27:20","date_gmt":"2024-03-13T05:27:20","guid":{"rendered":"https:\/\/www.silicloud.com\/blog\/what-is-the-method-for-assigning-values-to-eigen-matrices-in-c\/"},"modified":"2024-03-19T14:31:33","modified_gmt":"2024-03-19T14:31:33","slug":"what-is-the-method-for-assigning-values-to-eigen-matrices-in-c","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/blog\/what-is-the-method-for-assigning-values-to-eigen-matrices-in-c\/","title":{"rendered":"What is the method for assigning values to eigen matrices in C++?"},"content":{"rendered":"<p>In Eigen, matrices can be assigned values using bracket initialization, element-wise assignment, and block assignment.<\/p>\n<ol>\n<li>Initialize with parentheses:<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><span class=\"hljs-function\">Eigen::MatrixXf <span class=\"hljs-title\">mat<\/span><span class=\"hljs-params\">(<span class=\"hljs-number\">3<\/span>, <span class=\"hljs-number\">3<\/span>)<\/span><\/span>; <span class=\"hljs-comment\">\/\/ \u521b\u5efa\u4e00\u4e2a3x3\u7684\u77e9\u9635<\/span>\r\nmat &lt;&lt; <span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">2<\/span>, <span class=\"hljs-number\">3<\/span>,\r\n       <span class=\"hljs-number\">4<\/span>, <span class=\"hljs-number\">5<\/span>, <span class=\"hljs-number\">6<\/span>,\r\n       <span class=\"hljs-number\">7<\/span>, <span class=\"hljs-number\">8<\/span>, <span class=\"hljs-number\">9<\/span>; <span class=\"hljs-comment\">\/\/ \u4f7f\u7528\u201c&lt;&lt;\u201d\u8fd0\u7b97\u7b26\u8fdb\u884c\u8d4b\u503c<\/span>\r\n<\/code><\/pre>\n<ol>\n<li>Assign values to each element one by one.<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><span class=\"hljs-function\">Eigen::MatrixXf <span class=\"hljs-title\">mat<\/span><span class=\"hljs-params\">(<span class=\"hljs-number\">3<\/span>, <span class=\"hljs-number\">3<\/span>)<\/span><\/span>; <span class=\"hljs-comment\">\/\/ \u521b\u5efa\u4e00\u4e2a3x3\u7684\u77e9\u9635<\/span>\r\n<span class=\"hljs-built_in\">mat<\/span>(<span class=\"hljs-number\">0<\/span>, <span class=\"hljs-number\">0<\/span>) = <span class=\"hljs-number\">1<\/span>;\r\n<span class=\"hljs-built_in\">mat<\/span>(<span class=\"hljs-number\">0<\/span>, <span class=\"hljs-number\">1<\/span>) = <span class=\"hljs-number\">2<\/span>;\r\n<span class=\"hljs-built_in\">mat<\/span>(<span class=\"hljs-number\">0<\/span>, <span class=\"hljs-number\">2<\/span>) = <span class=\"hljs-number\">3<\/span>;\r\n<span class=\"hljs-built_in\">mat<\/span>(<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">0<\/span>) = <span class=\"hljs-number\">4<\/span>;\r\n<span class=\"hljs-built_in\">mat<\/span>(<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">1<\/span>) = <span class=\"hljs-number\">5<\/span>;\r\n<span class=\"hljs-built_in\">mat<\/span>(<span class=\"hljs-number\">1<\/span>, <span class=\"hljs-number\">2<\/span>) = <span class=\"hljs-number\">6<\/span>;\r\n<span class=\"hljs-built_in\">mat<\/span>(<span class=\"hljs-number\">2<\/span>, <span class=\"hljs-number\">0<\/span>) = <span class=\"hljs-number\">7<\/span>;\r\n<span class=\"hljs-built_in\">mat<\/span>(<span class=\"hljs-number\">2<\/span>, <span class=\"hljs-number\">1<\/span>) = <span class=\"hljs-number\">8<\/span>;\r\n<span class=\"hljs-built_in\">mat<\/span>(<span class=\"hljs-number\">2<\/span>, <span class=\"hljs-number\">2<\/span>) = <span class=\"hljs-number\">9<\/span>;\r\n<\/code><\/pre>\n<ol>\n<li>initialize variables.<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><span class=\"hljs-function\">Eigen::MatrixXf <span class=\"hljs-title\">mat<\/span><span class=\"hljs-params\">(<span class=\"hljs-number\">3<\/span>, <span class=\"hljs-number\">3<\/span>)<\/span><\/span>; <span class=\"hljs-comment\">\/\/ \u521b\u5efa\u4e00\u4e2a3x3\u7684\u77e9\u9635<\/span>\r\n<span class=\"hljs-function\">Eigen::MatrixXf <span class=\"hljs-title\">block<\/span><span class=\"hljs-params\">(<span class=\"hljs-number\">2<\/span>, <span class=\"hljs-number\">2<\/span>)<\/span><\/span>; <span class=\"hljs-comment\">\/\/ \u521b\u5efa\u4e00\u4e2a2x2\u7684\u77e9\u9635<\/span>\r\nblock &lt;&lt; <span class=\"hljs-number\">10<\/span>, <span class=\"hljs-number\">20<\/span>,\r\n         <span class=\"hljs-number\">30<\/span>, <span class=\"hljs-number\">40<\/span>;\r\nmat.<span class=\"hljs-built_in\">block<\/span>(<span class=\"hljs-number\">0<\/span>, <span class=\"hljs-number\">0<\/span>, <span class=\"hljs-number\">2<\/span>, <span class=\"hljs-number\">2<\/span>) = block; <span class=\"hljs-comment\">\/\/ \u5c06block\u8d4b\u503c\u7ed9mat\u7684\u4e00\u5757\u533a\u57df<\/span>\r\n<\/code><\/pre>\n<p>The above are three common ways of assignment, with initilization in brackets being more common and convenient in practical applications. Eigen also supports other more advanced ways of assignment, which can be found in detail in Eigen&#8217;s official documentation.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In Eigen, matrices can be assigned values using bracket initialization, element-wise assignment, and block assignment. Initialize with parentheses: Eigen::MatrixXf mat(3, 3); \/\/ \u521b\u5efa\u4e00\u4e2a3&#215;3\u7684\u77e9\u9635 mat &lt;&lt; 1, 2, 3, 4, 5, 6, 7, 8, 9; \/\/ \u4f7f\u7528\u201c&lt;&lt;\u201d\u8fd0\u7b97\u7b26\u8fdb\u884c\u8d4b\u503c Assign values to each element one by one. Eigen::MatrixXf mat(3, 3); \/\/ \u521b\u5efa\u4e00\u4e2a3&#215;3\u7684\u77e9\u9635 mat(0, 0) = 1; mat(0, 1) [&hellip;]<\/p>\n","protected":false},"author":11,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","footnotes":""},"categories":[1],"tags":[],"class_list":["post-2766","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.5 (Yoast SEO v21.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>What is the method for assigning values to eigen matrices in C++? - Blog - Silicon Cloud<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.silicloud.com\/blog\/what-is-the-method-for-assigning-values-to-eigen-matrices-in-c\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"What is the method for assigning values to eigen matrices in C++?\" \/>\n<meta property=\"og:description\" content=\"In Eigen, matrices can be assigned values using bracket initialization, element-wise assignment, and block assignment. Initialize with parentheses: Eigen::MatrixXf mat(3, 3); \/\/ \u521b\u5efa\u4e00\u4e2a3x3\u7684\u77e9\u9635 mat &lt;&lt; 1, 2, 3, 4, 5, 6, 7, 8, 9; \/\/ \u4f7f\u7528\u201c&lt;&lt;\u201d\u8fd0\u7b97\u7b26\u8fdb\u884c\u8d4b\u503c Assign values to each element one by one. Eigen::MatrixXf mat(3, 3); \/\/ \u521b\u5efa\u4e00\u4e2a3x3\u7684\u77e9\u9635 mat(0, 0) = 1; mat(0, 1) [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/blog\/what-is-the-method-for-assigning-values-to-eigen-matrices-in-c\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog - Silicon Cloud\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-03-13T05:27:20+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-03-19T14:31:33+00:00\" \/>\n<meta name=\"author\" content=\"Olivia Parker\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:site\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Olivia Parker\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/what-is-the-method-for-assigning-values-to-eigen-matrices-in-c\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/what-is-the-method-for-assigning-values-to-eigen-matrices-in-c\/\"},\"author\":{\"name\":\"Olivia Parker\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/3ff7b3da0e45ac5dbbef2502f3cea8d9\"},\"headline\":\"What is the method for assigning values to eigen matrices in C++?\",\"datePublished\":\"2024-03-13T05:27:20+00:00\",\"dateModified\":\"2024-03-19T14:31:33+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/what-is-the-method-for-assigning-values-to-eigen-matrices-in-c\/\"},\"wordCount\":80,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/what-is-the-method-for-assigning-values-to-eigen-matrices-in-c\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/what-is-the-method-for-assigning-values-to-eigen-matrices-in-c\/\",\"name\":\"What is the method for assigning values to eigen matrices in C++? - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\"},\"datePublished\":\"2024-03-13T05:27:20+00:00\",\"dateModified\":\"2024-03-19T14:31:33+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/what-is-the-method-for-assigning-values-to-eigen-matrices-in-c\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/blog\/what-is-the-method-for-assigning-values-to-eigen-matrices-in-c\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/what-is-the-method-for-assigning-values-to-eigen-matrices-in-c\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.silicloud.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"What is the method for assigning values to eigen matrices in C++?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"name\":\"Silicon Cloud Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\",\"name\":\"Silicon Cloud Blog\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"contentUrl\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"width\":1024,\"height\":1024,\"caption\":\"Silicon Cloud Blog\"},\"image\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\",\"https:\/\/twitter.com\/SiliCloudGlobal\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/3ff7b3da0e45ac5dbbef2502f3cea8d9\",\"name\":\"Olivia Parker\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/56c66f189ba32a6f9eb50f31a38fe774e2a725c213d4070835ccc51b8fbbc54b?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/56c66f189ba32a6f9eb50f31a38fe774e2a725c213d4070835ccc51b8fbbc54b?s=96&d=mm&r=g\",\"caption\":\"Olivia Parker\"},\"url\":\"https:\/\/www.silicloud.com\/blog\/author\/oliviaparker\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"What is the method for assigning values to eigen matrices in C++? - Blog - Silicon Cloud","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.silicloud.com\/blog\/what-is-the-method-for-assigning-values-to-eigen-matrices-in-c\/","og_locale":"en_US","og_type":"article","og_title":"What is the method for assigning values to eigen matrices in C++?","og_description":"In Eigen, matrices can be assigned values using bracket initialization, element-wise assignment, and block assignment. Initialize with parentheses: Eigen::MatrixXf mat(3, 3); \/\/ \u521b\u5efa\u4e00\u4e2a3x3\u7684\u77e9\u9635 mat &lt;&lt; 1, 2, 3, 4, 5, 6, 7, 8, 9; \/\/ \u4f7f\u7528\u201c&lt;&lt;\u201d\u8fd0\u7b97\u7b26\u8fdb\u884c\u8d4b\u503c Assign values to each element one by one. Eigen::MatrixXf mat(3, 3); \/\/ \u521b\u5efa\u4e00\u4e2a3x3\u7684\u77e9\u9635 mat(0, 0) = 1; mat(0, 1) [&hellip;]","og_url":"https:\/\/www.silicloud.com\/blog\/what-is-the-method-for-assigning-values-to-eigen-matrices-in-c\/","og_site_name":"Blog - Silicon Cloud","article_publisher":"https:\/\/www.facebook.com\/SiliCloudGlobal\/","article_published_time":"2024-03-13T05:27:20+00:00","article_modified_time":"2024-03-19T14:31:33+00:00","author":"Olivia Parker","twitter_card":"summary_large_image","twitter_creator":"@SiliCloudGlobal","twitter_site":"@SiliCloudGlobal","twitter_misc":{"Written by":"Olivia Parker","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.silicloud.com\/blog\/what-is-the-method-for-assigning-values-to-eigen-matrices-in-c\/#article","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/what-is-the-method-for-assigning-values-to-eigen-matrices-in-c\/"},"author":{"name":"Olivia Parker","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/3ff7b3da0e45ac5dbbef2502f3cea8d9"},"headline":"What is the method for assigning values to eigen matrices in C++?","datePublished":"2024-03-13T05:27:20+00:00","dateModified":"2024-03-19T14:31:33+00:00","mainEntityOfPage":{"@id":"https:\/\/www.silicloud.com\/blog\/what-is-the-method-for-assigning-values-to-eigen-matrices-in-c\/"},"wordCount":80,"commentCount":0,"publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/blog\/what-is-the-method-for-assigning-values-to-eigen-matrices-in-c\/","url":"https:\/\/www.silicloud.com\/blog\/what-is-the-method-for-assigning-values-to-eigen-matrices-in-c\/","name":"What is the method for assigning values to eigen matrices in C++? - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/#website"},"datePublished":"2024-03-13T05:27:20+00:00","dateModified":"2024-03-19T14:31:33+00:00","breadcrumb":{"@id":"https:\/\/www.silicloud.com\/blog\/what-is-the-method-for-assigning-values-to-eigen-matrices-in-c\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/blog\/what-is-the-method-for-assigning-values-to-eigen-matrices-in-c\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/blog\/what-is-the-method-for-assigning-values-to-eigen-matrices-in-c\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.silicloud.com\/blog\/"},{"@type":"ListItem","position":2,"name":"What is the method for assigning values to eigen matrices in C++?"}]},{"@type":"WebSite","@id":"https:\/\/www.silicloud.com\/blog\/#website","url":"https:\/\/www.silicloud.com\/blog\/","name":"Silicon Cloud Blog","description":"","publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.silicloud.com\/blog\/#organization","name":"Silicon Cloud Blog","url":"https:\/\/www.silicloud.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","contentUrl":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","width":1024,"height":1024,"caption":"Silicon Cloud Blog"},"image":{"@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/SiliCloudGlobal\/","https:\/\/twitter.com\/SiliCloudGlobal"]},{"@type":"Person","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/3ff7b3da0e45ac5dbbef2502f3cea8d9","name":"Olivia Parker","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/56c66f189ba32a6f9eb50f31a38fe774e2a725c213d4070835ccc51b8fbbc54b?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/56c66f189ba32a6f9eb50f31a38fe774e2a725c213d4070835ccc51b8fbbc54b?s=96&d=mm&r=g","caption":"Olivia Parker"},"url":"https:\/\/www.silicloud.com\/blog\/author\/oliviaparker\/"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/2766","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/users\/11"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/comments?post=2766"}],"version-history":[{"count":1,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/2766\/revisions"}],"predecessor-version":[{"id":35615,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/2766\/revisions\/35615"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/media?parent=2766"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/categories?post=2766"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/tags?post=2766"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}