


{"id":28420,"date":"2017-11-22T11:23:58","date_gmt":"2017-11-22T11:23:58","guid":{"rendered":"\/forum\/forums\/topic\/a-tip-for-cfx-user-fortran\/"},"modified":"2017-11-22T11:23:58","modified_gmt":"2017-11-22T11:23:58","slug":"a-tip-for-cfx-user-fortran","status":"closed","type":"topic","link":"https:\/\/innovationspace.ansys.com\/forum\/forums\/topic\/a-tip-for-cfx-user-fortran\/","title":{"rendered":"A tip for CFX USER Fortran"},"content":{"rendered":"<p>In the past two days, I performed a CFX simulation which called a fortran code to calculate <strong>an algebraic addition variable<\/strong> and <strong>a momentum source term<\/strong> simultaneously.&nbsp;<\/p>\n<p><\/p>\n<p><strong><span style=\"text-decoration: underline;\">User Function: mom source<\/span><\/strong><span style=\"text-decoration: underline;\"><strong>(args)<\/strong><\/span><\/p>\n<p><\/p>\n<p>If the Additional Variable (<em>mom_add<\/em>) is not set on the <strong>Fluid Models<\/strong> tab (just the momentum source is defined), the solver can finish normally. However, when <em>mom_add<\/em> is specified using the User Function <strong>mom source(args)<\/strong>, an <strong>&#8220;solver-impi.exe&#8221; error<\/strong> is reported by CFX-Solver at the end of the run and no .res file is saved.&nbsp;<\/p>\n<p><\/p>\n<p>A similar problem is mentioned in <em>CFD Online<\/em> website, while it was unfortunately not solved.<\/p>\n<p><\/p>\n<p><a href=\"https:\/\/www.cfd-online.com\/Forums\/cfx\/126242-user-fortran-stack-overflow-problem.html\">https:\/\/www.cfd-online.com\/Forums\/cfx\/126242-user-fortran-stack-overflow-problem.html<\/a><\/p>\n<p><\/p>\n<p>This situation occurs only if the addition variable is activated. So it is not caused by parallel setup (Intel MPI).&nbsp;<\/p>\n<p><\/p>\n<p>As I know relatively little about Fortran, I just thought this error is due to the <em><strong>USER_GETVAR<\/strong><\/em> routine which is applied to calculate velocity gradient tensor. Then i reviewed &#8220;<span style=\"text-decoration: underline;\">USER CEL Example 2<\/span>&#8221; in CFX Manual and embedded that into my own simulation. The type of phi2 (declared using transport equation in the Example) is changed to&nbsp;an algebraic variable, and <span style=\"text-decoration: underline;\">phi2<\/span> is calculated using the same &#8216;<em>AdVarSource.F<\/em>&#8216; code (offered in &lt;CFX ROOT&gt;examplesUserFortran).<\/p>\n<p><\/p>\n<p>phi2 can be calculated and no error occurs.<\/p>\n<p><\/p>\n<p>This puzzled me, so i checked my own code and deleted some unnecessary local variables. Finally and fortunately, the solver ran well and finished normally. Therefore, if the simulation is complex and large, trying to define variables in Fortran codes as little as possible.<\/p>\n<p><\/p>\n<p>PS: some spelling errors cannot be recognized when compile the code using cfx5mkext script in the command line, and the solver just stop without offering enough&nbsp;information. So, just be careful.<\/p>\n<p><\/p>\n<p>I spent two days to solve this problem and hope this information can be helpful for others.<\/p>\n<p><\/p>\n<p>&nbsp;<\/p>\n","protected":false},"template":"","class_list":["post-28420","topic","type-topic","status-closed","hentry"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"In the past two days, I performed a CFX simulation which called a fortran code to calculate an algebraic addition variable and a momentum source term simultaneously. User Function: mom source(args) If the Additional Variable (mom_add) is not set on the Fluid Models tab (just the momentum source is defined), the solver can finish normally.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/innovationspace.ansys.com\/forum\/forums\/topic\/a-tip-for-cfx-user-fortran\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"en_US\" \/>\n\t\t<meta property=\"og:site_name\" content=\"Ansys Learning Forum | Ansys Innovation Space\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"A tip for CFX USER Fortran | Ansys Learning Forum\" \/>\n\t\t<meta property=\"og:description\" content=\"In the past two days, I performed a CFX simulation which called a fortran code to calculate an algebraic addition variable and a momentum source term simultaneously. User Function: mom source(args) If the Additional Variable (mom_add) is not set on the Fluid Models tab (just the momentum source is defined), the solver can finish normally.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/innovationspace.ansys.com\/forum\/forums\/topic\/a-tip-for-cfx-user-fortran\/\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2017-11-22T11:23:58+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2017-11-22T11:23:58+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:title\" content=\"A tip for CFX USER Fortran | Ansys Learning Forum\" \/>\n\t\t<meta name=\"twitter:description\" content=\"In the past two days, I performed a CFX simulation which called a fortran code to calculate an algebraic addition variable and a momentum source term simultaneously. User Function: mom source(args) If the Additional Variable (mom_add) is not set on the Fluid Models tab (just the momentum source is defined), the solver can finish normally.\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/innovationspace.ansys.com\\\/forum\\\/forums\\\/topic\\\/a-tip-for-cfx-user-fortran\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/innovationspace.ansys.com\\\/forum#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/innovationspace.ansys.com\\\/forum\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/innovationspace.ansys.com\\\/forum\\\/topics\\\/#listItem\",\"name\":\"Topics\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/innovationspace.ansys.com\\\/forum\\\/topics\\\/#listItem\",\"position\":2,\"name\":\"Topics\",\"item\":\"https:\\\/\\\/innovationspace.ansys.com\\\/forum\\\/topics\\\/\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/innovationspace.ansys.com\\\/forum\\\/forums\\\/topic\\\/a-tip-for-cfx-user-fortran\\\/#listItem\",\"name\":\"A tip for CFX USER Fortran\"},\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/innovationspace.ansys.com\\\/forum#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/innovationspace.ansys.com\\\/forum\\\/forums\\\/topic\\\/a-tip-for-cfx-user-fortran\\\/#listItem\",\"position\":3,\"name\":\"A tip for CFX USER Fortran\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/innovationspace.ansys.com\\\/forum\\\/topics\\\/#listItem\",\"name\":\"Topics\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/innovationspace.ansys.com\\\/forum\\\/#organization\",\"name\":\"Ansys Learning Forum\",\"description\":\"Ansys Innovation Space\",\"url\":\"https:\\\/\\\/innovationspace.ansys.com\\\/forum\\\/\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/innovationspace.ansys.com\\\/forum\\\/forums\\\/topic\\\/a-tip-for-cfx-user-fortran\\\/#webpage\",\"url\":\"https:\\\/\\\/innovationspace.ansys.com\\\/forum\\\/forums\\\/topic\\\/a-tip-for-cfx-user-fortran\\\/\",\"name\":\"A tip for CFX USER Fortran | Ansys Learning Forum\",\"description\":\"In the past two days, I performed a CFX simulation which called a fortran code to calculate an algebraic addition variable and a momentum source term simultaneously. User Function: mom source(args) If the Additional Variable (mom_add) is not set on the Fluid Models tab (just the momentum source is defined), the solver can finish normally.\",\"inLanguage\":\"en-US\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/innovationspace.ansys.com\\\/forum\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/innovationspace.ansys.com\\\/forum\\\/forums\\\/topic\\\/a-tip-for-cfx-user-fortran\\\/#breadcrumblist\"},\"datePublished\":\"2017-11-22T11:23:58+00:00\",\"dateModified\":\"2017-11-22T11:23:58+00:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/innovationspace.ansys.com\\\/forum\\\/#website\",\"url\":\"https:\\\/\\\/innovationspace.ansys.com\\\/forum\\\/\",\"name\":\"Ansys Learning Forum\",\"description\":\"Ansys Innovation Space\",\"inLanguage\":\"en-US\",\"publisher\":{\"@id\":\"https:\\\/\\\/innovationspace.ansys.com\\\/forum\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"A tip for CFX USER Fortran | Ansys Learning Forum","description":"In the past two days, I performed a CFX simulation which called a fortran code to calculate an algebraic addition variable and a momentum source term simultaneously. User Function: mom source(args) If the Additional Variable (mom_add) is not set on the Fluid Models tab (just the momentum source is defined), the solver can finish normally.","canonical_url":"https:\/\/innovationspace.ansys.com\/forum\/forums\/topic\/a-tip-for-cfx-user-fortran\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BreadcrumbList","@id":"https:\/\/innovationspace.ansys.com\/forum\/forums\/topic\/a-tip-for-cfx-user-fortran\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/innovationspace.ansys.com\/forum#listItem","position":1,"name":"Home","item":"https:\/\/innovationspace.ansys.com\/forum","nextItem":{"@type":"ListItem","@id":"https:\/\/innovationspace.ansys.com\/forum\/topics\/#listItem","name":"Topics"}},{"@type":"ListItem","@id":"https:\/\/innovationspace.ansys.com\/forum\/topics\/#listItem","position":2,"name":"Topics","item":"https:\/\/innovationspace.ansys.com\/forum\/topics\/","nextItem":{"@type":"ListItem","@id":"https:\/\/innovationspace.ansys.com\/forum\/forums\/topic\/a-tip-for-cfx-user-fortran\/#listItem","name":"A tip for CFX USER Fortran"},"previousItem":{"@type":"ListItem","@id":"https:\/\/innovationspace.ansys.com\/forum#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/innovationspace.ansys.com\/forum\/forums\/topic\/a-tip-for-cfx-user-fortran\/#listItem","position":3,"name":"A tip for CFX USER Fortran","previousItem":{"@type":"ListItem","@id":"https:\/\/innovationspace.ansys.com\/forum\/topics\/#listItem","name":"Topics"}}]},{"@type":"Organization","@id":"https:\/\/innovationspace.ansys.com\/forum\/#organization","name":"Ansys Learning Forum","description":"Ansys Innovation Space","url":"https:\/\/innovationspace.ansys.com\/forum\/"},{"@type":"WebPage","@id":"https:\/\/innovationspace.ansys.com\/forum\/forums\/topic\/a-tip-for-cfx-user-fortran\/#webpage","url":"https:\/\/innovationspace.ansys.com\/forum\/forums\/topic\/a-tip-for-cfx-user-fortran\/","name":"A tip for CFX USER Fortran | Ansys Learning Forum","description":"In the past two days, I performed a CFX simulation which called a fortran code to calculate an algebraic addition variable and a momentum source term simultaneously. User Function: mom source(args) If the Additional Variable (mom_add) is not set on the Fluid Models tab (just the momentum source is defined), the solver can finish normally.","inLanguage":"en-US","isPartOf":{"@id":"https:\/\/innovationspace.ansys.com\/forum\/#website"},"breadcrumb":{"@id":"https:\/\/innovationspace.ansys.com\/forum\/forums\/topic\/a-tip-for-cfx-user-fortran\/#breadcrumblist"},"datePublished":"2017-11-22T11:23:58+00:00","dateModified":"2017-11-22T11:23:58+00:00"},{"@type":"WebSite","@id":"https:\/\/innovationspace.ansys.com\/forum\/#website","url":"https:\/\/innovationspace.ansys.com\/forum\/","name":"Ansys Learning Forum","description":"Ansys Innovation Space","inLanguage":"en-US","publisher":{"@id":"https:\/\/innovationspace.ansys.com\/forum\/#organization"}}]},"og:locale":"en_US","og:site_name":"Ansys Learning Forum | Ansys Innovation Space","og:type":"article","og:title":"A tip for CFX USER Fortran | Ansys Learning Forum","og:description":"In the past two days, I performed a CFX simulation which called a fortran code to calculate an algebraic addition variable and a momentum source term simultaneously. User Function: mom source(args) If the Additional Variable (mom_add) is not set on the Fluid Models tab (just the momentum source is defined), the solver can finish normally.","og:url":"https:\/\/innovationspace.ansys.com\/forum\/forums\/topic\/a-tip-for-cfx-user-fortran\/","article:published_time":"2017-11-22T11:23:58+00:00","article:modified_time":"2017-11-22T11:23:58+00:00","twitter:card":"summary_large_image","twitter:title":"A tip for CFX USER Fortran | Ansys Learning Forum","twitter:description":"In the past two days, I performed a CFX simulation which called a fortran code to calculate an algebraic addition variable and a momentum source term simultaneously. User Function: mom source(args) If the Additional Variable (mom_add) is not set on the Fluid Models tab (just the momentum source is defined), the solver can finish normally."},"aioseo_meta_data":{"post_id":"28420","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"content","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":true,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"limit_modified_date":false,"created":"2024-10-28 23:32:26","updated":"2024-10-28 23:32:26","ai":null,"breadcrumb_settings":null,"seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/innovationspace.ansys.com\/forum\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/innovationspace.ansys.com\/forum\/topics\/\" title=\"Topics\">Topics<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tA tip for CFX USER Fortran\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/innovationspace.ansys.com\/forum"},{"label":"Topics","link":"https:\/\/innovationspace.ansys.com\/forum\/topics\/"},{"label":"A tip for CFX USER Fortran","link":"https:\/\/innovationspace.ansys.com\/forum\/forums\/topic\/a-tip-for-cfx-user-fortran\/"}],"acf":[],"custom_fields":[{"0":{"_bbp_old_topic_id":["586"],"_bbp_old_topic_author_name_id":["Anonymous"],"_bbp_old_is_topic_anonymous_id":["false"],"_bbp_old_closed_status_id":["publish"],"_bbp_author_ip":[null],"_bbp_old_sticky_status_id":["normal"],"_bbp_likes_count":["0","0","0","0","0"],"_btv_view_count":["1829"],"_bbp_topic_status":["unanswered"],"_bbp_status":["publish"],"_bbp_topic_id":["28420"],"_bbp_forum_id":["27792"],"_bbp_engagement":["154886","155019"],"_bbp_voice_count":["2"],"_bbp_reply_count":["1"],"_bbp_last_reply_id":["55676"],"_bbp_last_active_id":["55676"],"_bbp_last_active_time":["2017-11-24 00:39:04"]},"test":"min-zhang"}],"_links":{"self":[{"href":"https:\/\/innovationspace.ansys.com\/forum\/wp-json\/wp\/v2\/topics\/28420","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/innovationspace.ansys.com\/forum\/wp-json\/wp\/v2\/topics"}],"about":[{"href":"https:\/\/innovationspace.ansys.com\/forum\/wp-json\/wp\/v2\/types\/topic"}],"version-history":[{"count":0,"href":"https:\/\/innovationspace.ansys.com\/forum\/wp-json\/wp\/v2\/topics\/28420\/revisions"}],"wp:attachment":[{"href":"https:\/\/innovationspace.ansys.com\/forum\/wp-json\/wp\/v2\/media?parent=28420"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}