{"title":"Accelerating Porous Media Flow Simulations With Fourier Neural Operators: An Application to Geologic Storage of CO2","authors":"Anirban Chandra, Marius Koch, Suraj Pawar, Aniruddha Panda, Kamyar Azizzadenesheli, Jeroen Snippe, Faruk O. Alpak, Farah Hariri, Clement Etienam, Pandu Devarakota, Anima Anandkumar, Detlef Hohl","doi":"10.1002/adts.202500747","DOIUrl":null,"url":null,"abstract":"This study aims to develop surrogate models to accelerate decision-making processes related to porous media flows, using geologic storage of carbon dioxide (<span data-altimg=\"/cms/asset/fe9d33ec-8e95-4fb7-aed8-413e06185e8c/adts70131-math-0001.png\"></span><mjx-container ctxtmenu_counter=\"4\" ctxtmenu_oldtabindex=\"1\" jax=\"CHTML\" role=\"application\" sre-explorer- style=\"font-size: 103%; position: relative;\" tabindex=\"0\"><mjx-math aria-hidden=\"true\" location=\"graphic/adts70131-math-0001.png\"><mjx-semantics><mjx-mrow data-semantic-annotation=\"clearspeak:unit\" data-semantic-children=\"0,3\" data-semantic-content=\"4\" data-semantic- data-semantic-role=\"implicit\" data-semantic-speech=\"upper C upper O 2\" data-semantic-type=\"infixop\"><mjx-mi data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"italic\" data-semantic- data-semantic-parent=\"5\" data-semantic-role=\"latinletter\" data-semantic-type=\"identifier\"><mjx-c></mjx-c></mjx-mi><mjx-mo data-semantic-added=\"true\" data-semantic- data-semantic-operator=\"infixop,\" data-semantic-parent=\"5\" data-semantic-role=\"multiplication\" data-semantic-type=\"operator\" style=\"margin-left: 0.056em; margin-right: 0.056em;\"><mjx-c></mjx-c></mjx-mo><mjx-msub data-semantic-children=\"1,2\" data-semantic- data-semantic-parent=\"5\" data-semantic-role=\"latinletter\" data-semantic-type=\"subscript\"><mjx-mi data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"italic\" data-semantic- data-semantic-parent=\"3\" data-semantic-role=\"latinletter\" data-semantic-type=\"identifier\"><mjx-c></mjx-c></mjx-mi><mjx-script style=\"vertical-align: -0.15em;\"><mjx-mn data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"normal\" data-semantic- data-semantic-parent=\"3\" data-semantic-role=\"integer\" data-semantic-type=\"number\" size=\"s\"><mjx-c></mjx-c></mjx-mn></mjx-script></mjx-msub></mjx-mrow></mjx-semantics></mjx-math><mjx-assistive-mml display=\"inline\" unselectable=\"on\"><math altimg=\"urn:x-wiley:25130390:media:adts70131:adts70131-math-0001\" display=\"inline\" location=\"graphic/adts70131-math-0001.png\" xmlns=\"http://www.w3.org/1998/Math/MathML\"><semantics><mrow data-semantic-=\"\" data-semantic-annotation=\"clearspeak:unit\" data-semantic-children=\"0,3\" data-semantic-content=\"4\" data-semantic-role=\"implicit\" data-semantic-speech=\"upper C upper O 2\" data-semantic-type=\"infixop\"><mi data-semantic-=\"\" data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"italic\" data-semantic-parent=\"5\" data-semantic-role=\"latinletter\" data-semantic-type=\"identifier\">C</mi><mo data-semantic-=\"\" data-semantic-added=\"true\" data-semantic-operator=\"infixop,\" data-semantic-parent=\"5\" data-semantic-role=\"multiplication\" data-semantic-type=\"operator\"></mo><msub data-semantic-=\"\" data-semantic-children=\"1,2\" data-semantic-parent=\"5\" data-semantic-role=\"latinletter\" data-semantic-type=\"subscript\"><mi data-semantic-=\"\" data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"italic\" data-semantic-parent=\"3\" data-semantic-role=\"latinletter\" data-semantic-type=\"identifier\">O</mi><mn data-semantic-=\"\" data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"normal\" data-semantic-parent=\"3\" data-semantic-role=\"integer\" data-semantic-type=\"number\">2</mn></msub></mrow>$CO_2$</annotation></semantics></math></mjx-assistive-mml></mjx-container>) as an example. Several engineering problems, including selection of subsurface <span data-altimg=\"/cms/asset/c6fdbd4b-0066-4ff3-861c-d71252002e49/adts70131-math-0002.png\"></span><mjx-container ctxtmenu_counter=\"5\" ctxtmenu_oldtabindex=\"1\" jax=\"CHTML\" role=\"application\" sre-explorer- style=\"font-size: 103%; position: relative;\" tabindex=\"0\"><mjx-math aria-hidden=\"true\" location=\"graphic/adts70131-math-0002.png\"><mjx-semantics><mjx-mrow data-semantic-annotation=\"clearspeak:unit\" data-semantic-children=\"0,3\" data-semantic-content=\"4\" data-semantic- data-semantic-role=\"implicit\" data-semantic-speech=\"upper C upper O 2\" data-semantic-type=\"infixop\"><mjx-mi data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"italic\" data-semantic- data-semantic-parent=\"5\" data-semantic-role=\"latinletter\" data-semantic-type=\"identifier\"><mjx-c></mjx-c></mjx-mi><mjx-mo data-semantic-added=\"true\" data-semantic- data-semantic-operator=\"infixop,\" data-semantic-parent=\"5\" data-semantic-role=\"multiplication\" data-semantic-type=\"operator\" style=\"margin-left: 0.056em; margin-right: 0.056em;\"><mjx-c></mjx-c></mjx-mo><mjx-msub data-semantic-children=\"1,2\" data-semantic- data-semantic-parent=\"5\" data-semantic-role=\"latinletter\" data-semantic-type=\"subscript\"><mjx-mi data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"italic\" data-semantic- data-semantic-parent=\"3\" data-semantic-role=\"latinletter\" data-semantic-type=\"identifier\"><mjx-c></mjx-c></mjx-mi><mjx-script style=\"vertical-align: -0.15em;\"><mjx-mn data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"normal\" data-semantic- data-semantic-parent=\"3\" data-semantic-role=\"integer\" data-semantic-type=\"number\" size=\"s\"><mjx-c></mjx-c></mjx-mn></mjx-script></mjx-msub></mjx-mrow></mjx-semantics></mjx-math><mjx-assistive-mml display=\"inline\" unselectable=\"on\"><math altimg=\"urn:x-wiley:25130390:media:adts70131:adts70131-math-0002\" display=\"inline\" location=\"graphic/adts70131-math-0002.png\" xmlns=\"http://www.w3.org/1998/Math/MathML\"><semantics><mrow data-semantic-=\"\" data-semantic-annotation=\"clearspeak:unit\" data-semantic-children=\"0,3\" data-semantic-content=\"4\" data-semantic-role=\"implicit\" data-semantic-speech=\"upper C upper O 2\" data-semantic-type=\"infixop\"><mi data-semantic-=\"\" data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"italic\" data-semantic-parent=\"5\" data-semantic-role=\"latinletter\" data-semantic-type=\"identifier\">C</mi><mo data-semantic-=\"\" data-semantic-added=\"true\" data-semantic-operator=\"infixop,\" data-semantic-parent=\"5\" data-semantic-role=\"multiplication\" data-semantic-type=\"operator\"></mo><msub data-semantic-=\"\" data-semantic-children=\"1,2\" data-semantic-parent=\"5\" data-semantic-role=\"latinletter\" data-semantic-type=\"subscript\"><mi data-semantic-=\"\" data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"italic\" data-semantic-parent=\"3\" data-semantic-role=\"latinletter\" data-semantic-type=\"identifier\">O</mi><mn data-semantic-=\"\" data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"normal\" data-semantic-parent=\"3\" data-semantic-role=\"integer\" data-semantic-type=\"number\">2</mn></msub></mrow>$CO_2$</annotation></semantics></math></mjx-assistive-mml></mjx-container> storage sites, often requires costly and complex simulations of flow fields. In this work, a Fourier Neural Operator (FNO) based model is developed for real-time, high-resolution simulation of <span data-altimg=\"/cms/asset/48e59dd4-68c1-4e31-b85d-28a1a3d27bcd/adts70131-math-0003.png\"></span><mjx-container ctxtmenu_counter=\"6\" ctxtmenu_oldtabindex=\"1\" jax=\"CHTML\" role=\"application\" sre-explorer- style=\"font-size: 103%; position: relative;\" tabindex=\"0\"><mjx-math aria-hidden=\"true\" location=\"graphic/adts70131-math-0003.png\"><mjx-semantics><mjx-mrow data-semantic-annotation=\"clearspeak:unit\" data-semantic-children=\"0,3\" data-semantic-content=\"4\" data-semantic- data-semantic-role=\"implicit\" data-semantic-speech=\"upper C upper O 2\" data-semantic-type=\"infixop\"><mjx-mi data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"italic\" data-semantic- data-semantic-parent=\"5\" data-semantic-role=\"latinletter\" data-semantic-type=\"identifier\"><mjx-c></mjx-c></mjx-mi><mjx-mo data-semantic-added=\"true\" data-semantic- data-semantic-operator=\"infixop,\" data-semantic-parent=\"5\" data-semantic-role=\"multiplication\" data-semantic-type=\"operator\" style=\"margin-left: 0.056em; margin-right: 0.056em;\"><mjx-c></mjx-c></mjx-mo><mjx-msub data-semantic-children=\"1,2\" data-semantic- data-semantic-parent=\"5\" data-semantic-role=\"latinletter\" data-semantic-type=\"subscript\"><mjx-mi data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"italic\" data-semantic- data-semantic-parent=\"3\" data-semantic-role=\"latinletter\" data-semantic-type=\"identifier\"><mjx-c></mjx-c></mjx-mi><mjx-script style=\"vertical-align: -0.15em;\"><mjx-mn data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"normal\" data-semantic- data-semantic-parent=\"3\" data-semantic-role=\"integer\" data-semantic-type=\"number\" size=\"s\"><mjx-c></mjx-c></mjx-mn></mjx-script></mjx-msub></mjx-mrow></mjx-semantics></mjx-math><mjx-assistive-mml display=\"inline\" unselectable=\"on\"><math altimg=\"urn:x-wiley:25130390:media:adts70131:adts70131-math-0003\" display=\"inline\" location=\"graphic/adts70131-math-0003.png\" xmlns=\"http://www.w3.org/1998/Math/MathML\"><semantics><mrow data-semantic-=\"\" data-semantic-annotation=\"clearspeak:unit\" data-semantic-children=\"0,3\" data-semantic-content=\"4\" data-semantic-role=\"implicit\" data-semantic-speech=\"upper C upper O 2\" data-semantic-type=\"infixop\"><mi data-semantic-=\"\" data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"italic\" data-semantic-parent=\"5\" data-semantic-role=\"latinletter\" data-semantic-type=\"identifier\">C</mi><mo data-semantic-=\"\" data-semantic-added=\"true\" data-semantic-operator=\"infixop,\" data-semantic-parent=\"5\" data-semantic-role=\"multiplication\" data-semantic-type=\"operator\"></mo><msub data-semantic-=\"\" data-semantic-children=\"1,2\" data-semantic-parent=\"5\" data-semantic-role=\"latinletter\" data-semantic-type=\"subscript\"><mi data-semantic-=\"\" data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"italic\" data-semantic-parent=\"3\" data-semantic-role=\"latinletter\" data-semantic-type=\"identifier\">O</mi><mn data-semantic-=\"\" data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"normal\" data-semantic-parent=\"3\" data-semantic-role=\"integer\" data-semantic-type=\"number\">2</mn></msub></mrow>$CO_2$</annotation></semantics></math></mjx-assistive-mml></mjx-container> plume migration. The model is trained on a comprehensive dataset derived from realistic subsurface parameters and achieves a computational speed-up of <span data-altimg=\"/cms/asset/8318ab87-c4db-40cd-b9c8-1ef73b221531/adts70131-math-0004.png\"></span><mjx-container ctxtmenu_counter=\"7\" ctxtmenu_oldtabindex=\"1\" jax=\"CHTML\" role=\"application\" sre-explorer- style=\"font-size: 103%; position: relative;\" tabindex=\"0\"><mjx-math aria-hidden=\"true\" location=\"graphic/adts70131-math-0004.png\"><mjx-semantics><mjx-mrow data-semantic-children=\"0,13\" data-semantic-content=\"14,0\" data-semantic- data-semantic-role=\"simple function\" data-semantic-speech=\"script upper O left parenthesis 10 cubed t o 10 Superscript 5 Baseline right parenthesis\" data-semantic-type=\"appl\"><mjx-mi data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"script\" data-semantic- data-semantic-operator=\"appl\" data-semantic-parent=\"15\" data-semantic-role=\"simple function\" data-semantic-type=\"identifier\"><mjx-c></mjx-c></mjx-mi><mjx-mo data-semantic-added=\"true\" data-semantic- data-semantic-operator=\"appl\" data-semantic-parent=\"15\" data-semantic-role=\"application\" data-semantic-type=\"punctuation\" style=\"margin-left: 0.056em; margin-right: 0.056em;\"><mjx-c></mjx-c></mjx-mo><mjx-mrow data-semantic-children=\"12\" data-semantic-content=\"1,9\" data-semantic- data-semantic-parent=\"15\" data-semantic-role=\"leftright\" data-semantic-type=\"fenced\"><mjx-mo data-semantic- data-semantic-operator=\"fenced\" data-semantic-parent=\"13\" data-semantic-role=\"open\" data-semantic-type=\"fence\" style=\"margin-left: 0.056em; margin-right: 0.056em;\"><mjx-c></mjx-c></mjx-mo><mjx-mrow data-semantic-annotation=\"clearspeak:unit\" data-semantic-children=\"4,5,8\" data-semantic-content=\"10,11\" data-semantic- data-semantic-parent=\"13\" data-semantic-role=\"implicit\" data-semantic-type=\"infixop\"><mjx-msup data-semantic-children=\"2,3\" data-semantic- data-semantic-parent=\"12\" data-semantic-role=\"integer\" data-semantic-type=\"superscript\"><mjx-mn data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"normal\" data-semantic- data-semantic-parent=\"4\" data-semantic-role=\"integer\" data-semantic-type=\"number\"><mjx-c></mjx-c><mjx-c></mjx-c></mjx-mn><mjx-script style=\"vertical-align: 0.393em;\"><mjx-mn data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"normal\" data-semantic- data-semantic-parent=\"4\" data-semantic-role=\"integer\" data-semantic-type=\"number\" size=\"s\"><mjx-c></mjx-c></mjx-mn></mjx-script></mjx-msup><mjx-mo data-semantic-added=\"true\" data-semantic- data-semantic-operator=\"infixop,\" data-semantic-parent=\"12\" data-semantic-role=\"multiplication\" data-semantic-type=\"operator\" style=\"margin-left: 0.056em; margin-right: 0.056em;\"><mjx-c></mjx-c></mjx-mo><mjx-mi data-semantic-font=\"normal\" data-semantic- data-semantic-parent=\"12\" data-semantic-role=\"unknown\" data-semantic-type=\"identifier\"><mjx-c></mjx-c><mjx-c></mjx-c></mjx-mi><mjx-mo data-semantic-added=\"true\" data-semantic- data-semantic-operator=\"infixop,\" data-semantic-parent=\"12\" data-semantic-role=\"multiplication\" data-semantic-type=\"operator\" style=\"margin-left: 0.056em; margin-right: 0.056em;\"><mjx-c></mjx-c></mjx-mo><mjx-msup data-semantic-children=\"6,7\" data-semantic- data-semantic-parent=\"12\" data-semantic-role=\"integer\" data-semantic-type=\"superscript\"><mjx-mn data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"normal\" data-semantic- data-semantic-parent=\"8\" data-semantic-role=\"integer\" data-semantic-type=\"number\"><mjx-c></mjx-c><mjx-c></mjx-c></mjx-mn><mjx-script style=\"vertical-align: 0.393em;\"><mjx-mn data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"normal\" data-semantic- data-semantic-parent=\"8\" data-semantic-role=\"integer\" data-semantic-type=\"number\" size=\"s\"><mjx-c></mjx-c></mjx-mn></mjx-script></mjx-msup></mjx-mrow><mjx-mo data-semantic- data-semantic-operator=\"fenced\" data-semantic-parent=\"13\" data-semantic-role=\"close\" data-semantic-type=\"fence\" style=\"margin-left: 0.056em; margin-right: 0.056em;\"><mjx-c></mjx-c></mjx-mo></mjx-mrow></mjx-mrow></mjx-semantics></mjx-math><mjx-assistive-mml display=\"inline\" unselectable=\"on\"><math altimg=\"urn:x-wiley:25130390:media:adts70131:adts70131-math-0004\" display=\"inline\" location=\"graphic/adts70131-math-0004.png\" xmlns=\"http://www.w3.org/1998/Math/MathML\"><semantics><mrow data-semantic-=\"\" data-semantic-children=\"0,13\" data-semantic-content=\"14,0\" data-semantic-role=\"simple function\" data-semantic-speech=\"script upper O left parenthesis 10 cubed t o 10 Superscript 5 Baseline right parenthesis\" data-semantic-type=\"appl\"><mi data-semantic-=\"\" data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"script\" data-semantic-operator=\"appl\" data-semantic-parent=\"15\" data-semantic-role=\"simple function\" data-semantic-type=\"identifier\" mathvariant=\"script\">O</mi><mo data-semantic-=\"\" data-semantic-added=\"true\" data-semantic-operator=\"appl\" data-semantic-parent=\"15\" data-semantic-role=\"application\" data-semantic-type=\"punctuation\"></mo><mrow data-semantic-=\"\" data-semantic-children=\"12\" data-semantic-content=\"1,9\" data-semantic-parent=\"15\" data-semantic-role=\"leftright\" data-semantic-type=\"fenced\"><mo data-semantic-=\"\" data-semantic-operator=\"fenced\" data-semantic-parent=\"13\" data-semantic-role=\"open\" data-semantic-type=\"fence\" stretchy=\"false\">(</mo><mrow data-semantic-=\"\" data-semantic-annotation=\"clearspeak:unit\" data-semantic-children=\"4,5,8\" data-semantic-content=\"10,11\" data-semantic-parent=\"13\" data-semantic-role=\"implicit\" data-semantic-type=\"infixop\"><msup data-semantic-=\"\" data-semantic-children=\"2,3\" data-semantic-parent=\"12\" data-semantic-role=\"integer\" data-semantic-type=\"superscript\"><mn data-semantic-=\"\" data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"normal\" data-semantic-parent=\"4\" data-semantic-role=\"integer\" data-semantic-type=\"number\">10</mn><mn data-semantic-=\"\" data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"normal\" data-semantic-parent=\"4\" data-semantic-role=\"integer\" data-semantic-type=\"number\">3</mn></msup><mo data-semantic-=\"\" data-semantic-added=\"true\" data-semantic-operator=\"infixop,\" data-semantic-parent=\"12\" data-semantic-role=\"multiplication\" data-semantic-type=\"operator\"></mo><mi data-semantic-=\"\" data-semantic-font=\"normal\" data-semantic-parent=\"12\" data-semantic-role=\"unknown\" data-semantic-type=\"identifier\">to</mi><mo data-semantic-=\"\" data-semantic-added=\"true\" data-semantic-operator=\"infixop,\" data-semantic-parent=\"12\" data-semantic-role=\"multiplication\" data-semantic-type=\"operator\"></mo><msup data-semantic-=\"\" data-semantic-children=\"6,7\" data-semantic-parent=\"12\" data-semantic-role=\"integer\" data-semantic-type=\"superscript\"><mn data-semantic-=\"\" data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"normal\" data-semantic-parent=\"8\" data-semantic-role=\"integer\" data-semantic-type=\"number\">10</mn><mn data-semantic-=\"\" data-semantic-annotation=\"clearspeak:simple\" data-semantic-font=\"normal\" data-semantic-parent=\"8\" data-semantic-role=\"integer\" data-semantic-type=\"number\">5</mn></msup></mrow><mo data-semantic-=\"\" data-semantic-operator=\"fenced\" data-semantic-parent=\"13\" data-semantic-role=\"close\" data-semantic-type=\"fence\" stretchy=\"false\">)</mo></mrow></mrow>$\\mathcal {O}(10^3 \\textrm { to } 10^5)$</annotation></semantics></math></mjx-assistive-mml></mjx-container> when compared to numerical simulators used in this work, with only a minimal reduction in predictive accuracy. Super-resolution experiments are also investigated to reduce the computational cost of training the FNO-based models. Additionally, various strategies are proposed to enhance the reliability of model predictions, which is crucial for evaluating actual geological storage sites. This framework, based on NVIDIA's PhysicsNeMo library, enables rapid screening of sites for CCS. This work scales data-driven models to realistic 3D systems that better reflect real-life subsurface aquifers and reservoirs, paving the way for building next-generation digital twins for subsurface CCS applications. The workflows and strategies discussed can be easily adapted to other material systems and energy solutions, such as geothermal reservoir modeling, flow batteries, fuel cells, and hydrogen storage.","PeriodicalId":7219,"journal":{"name":"Advanced Theory and Simulations","volume":"16 1","pages":""},"PeriodicalIF":2.9000,"publicationDate":"2025-09-18","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Advanced Theory and Simulations","FirstCategoryId":"5","ListUrlMain":"https://doi.org/10.1002/adts.202500747","RegionNum":4,"RegionCategory":"工程技术","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q1","JCRName":"MULTIDISCIPLINARY SCIENCES","Score":null,"Total":0}
引用次数: 0
Abstract
This study aims to develop surrogate models to accelerate decision-making processes related to porous media flows, using geologic storage of carbon dioxide () as an example. Several engineering problems, including selection of subsurface storage sites, often requires costly and complex simulations of flow fields. In this work, a Fourier Neural Operator (FNO) based model is developed for real-time, high-resolution simulation of plume migration. The model is trained on a comprehensive dataset derived from realistic subsurface parameters and achieves a computational speed-up of when compared to numerical simulators used in this work, with only a minimal reduction in predictive accuracy. Super-resolution experiments are also investigated to reduce the computational cost of training the FNO-based models. Additionally, various strategies are proposed to enhance the reliability of model predictions, which is crucial for evaluating actual geological storage sites. This framework, based on NVIDIA's PhysicsNeMo library, enables rapid screening of sites for CCS. This work scales data-driven models to realistic 3D systems that better reflect real-life subsurface aquifers and reservoirs, paving the way for building next-generation digital twins for subsurface CCS applications. The workflows and strategies discussed can be easily adapted to other material systems and energy solutions, such as geothermal reservoir modeling, flow batteries, fuel cells, and hydrogen storage.
期刊介绍:
Advanced Theory and Simulations is an interdisciplinary, international, English-language journal that publishes high-quality scientific results focusing on the development and application of theoretical methods, modeling and simulation approaches in all natural science and medicine areas, including:
materials, chemistry, condensed matter physics
engineering, energy
life science, biology, medicine
atmospheric/environmental science, climate science
planetary science, astronomy, cosmology
method development, numerical methods, statistics