diff --git a/2026R1/chemkin_26-r1/.gitignore b/2026R1/chemkin_26-r1/.gitignore new file mode 100644 index 0000000000..4378419e7f --- /dev/null +++ b/2026R1/chemkin_26-r1/.gitignore @@ -0,0 +1,9 @@ +############### +# folder # +############### +/**/DROP/ +/**/TEMP/ +/**/packages/ +/**/bin/ +/**/obj/ +_site diff --git a/2026R1/chemkin_26-r1/.vale.ini b/2026R1/chemkin_26-r1/.vale.ini new file mode 100644 index 0000000000..68d0cd9ee0 --- /dev/null +++ b/2026R1/chemkin_26-r1/.vale.ini @@ -0,0 +1,10 @@ +StylesPath = styles + +MinAlertLevel = suggestion + +Packages = Google + +Vocab = ansys + +[*.md] +BasedOnStyles = Vale, Google diff --git a/2026R1/chemkin_26-r1/api/.gitignore b/2026R1/chemkin_26-r1/api/.gitignore new file mode 100644 index 0000000000..e8079a3bef --- /dev/null +++ b/2026R1/chemkin_26-r1/api/.gitignore @@ -0,0 +1,5 @@ +############### +# temp file # +############### +*.yml +.manifest diff --git a/2026R1/chemkin_26-r1/api/index.md b/2026R1/chemkin_26-r1/api/index.md new file mode 100644 index 0000000000..78dc9c0057 --- /dev/null +++ b/2026R1/chemkin_26-r1/api/index.md @@ -0,0 +1,2 @@ +# PLACEHOLDER +TODO: Add .NET projects to the *src* folder and run `docfx` to generate **REAL** *API Documentation*! diff --git a/2026R1/chemkin_26-r1/articles/ck_api_sect_compiler_compat.md b/2026R1/chemkin_26-r1/articles/ck_api_sect_compiler_compat.md new file mode 100644 index 0000000000..e78d085430 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/ck_api_sect_compiler_compat.md @@ -0,0 +1,50 @@ +# Compiler Summary + +This section lists the compile-specifics required by the API for Ansys Chemkin +releases built using the required compiler tool set. + +For detailed and current information on Ansys compiler compatibility, see the +"Platform Details" chapter for Linux or Windows in the Installation Guide in +the Ansys, Inc. Installation and Licensing Set. + + * Linux: [Compiler Requirements for Linux Systems in the Ansys, Inc. Installation Guides](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/installation/installation_set_cbn_sqj_r5.html) + + * Windows: [Compiler Requirements for Windows Systems in the Ansys, Inc. Installation Guides](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/installation/win_compilers.html) + +* * * + +**Note:** For detailed and current information on Ansys operating platforms, +see the [Platform Support](http://www.ansys.com/Solutions/Solutions-by-Role/IT-Professionals/Platform-Support) page on the Ansys website. + +* * * + +## Compiler Installation + +Follow the instructions from the compiler provider on how to install the +compiler for the Windows or Linux platforms. + +## Setting Up Your Compiler Environment + +See your compiler documentation for information on how to set up your +environment for Linux or Windows. + +## Testing Your Program + +To test the success of your installation, follow these steps: + + 1. Open the very small test program to compile and link, named **helloTest_Intel_Composer.zip**. It is located in the **utilities** folder of the Chemkin installation. + + 2. Copy this **.zip** file to a Windows system and extract it to create a **helloTest** sub-directory. + + 3. For the Linux platform, copy the **helloTest** sub-directory to your Linux system. + + 4. Set up your compiler environment. + + 5. Follow the directions in the **readme.txt** file to use the make utility to compile and link the test programs. The test programs should compile and run as described in the **readme.txt** file. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/docfx.json b/2026R1/chemkin_26-r1/articles/docfx.json new file mode 100644 index 0000000000..b575c27c5d --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/docfx.json @@ -0,0 +1,13 @@ +{ + "build": { + "globalMetadata": { + "title": " Chemkin Application Programming Interface Manual 2025 R1", + "summary": "", + "version": "2025 R1", + "product": "Chemkin", + "programming language": "C", + "product collection": "Fluids", + "physics": "Fluids" + } + } + } diff --git a/2026R1/chemkin_26-r1/articles/graphics/CHEMKIN_Illustr_Gas-Phase_Silane_Reaction.png b/2026R1/chemkin_26-r1/articles/graphics/CHEMKIN_Illustr_Gas-Phase_Silane_Reaction.png new file mode 100644 index 0000000000..e419e365e6 Binary files /dev/null and b/2026R1/chemkin_26-r1/articles/graphics/CHEMKIN_Illustr_Gas-Phase_Silane_Reaction.png differ diff --git a/2026R1/chemkin_26-r1/articles/graphics/CHEMKIN_Relationships_between_Pre-proc_and_Application.png b/2026R1/chemkin_26-r1/articles/graphics/CHEMKIN_Relationships_between_Pre-proc_and_Application.png new file mode 100644 index 0000000000..167e48a5fa Binary files /dev/null and b/2026R1/chemkin_26-r1/articles/graphics/CHEMKIN_Relationships_between_Pre-proc_and_Application.png differ diff --git a/2026R1/chemkin_26-r1/articles/graphics/CHEMKIN_relationship_Gas-phase_Kinetics_and_Application.png b/2026R1/chemkin_26-r1/articles/graphics/CHEMKIN_relationship_Gas-phase_Kinetics_and_Application.png new file mode 100644 index 0000000000..9267dea21d Binary files /dev/null and b/2026R1/chemkin_26-r1/articles/graphics/CHEMKIN_relationship_Gas-phase_Kinetics_and_Application.png differ diff --git a/2026R1/chemkin_26-r1/articles/graphics/ansyslogoblur.jpg b/2026R1/chemkin_26-r1/articles/graphics/ansyslogoblur.jpg new file mode 100644 index 0000000000..7c3c0d1248 Binary files /dev/null and b/2026R1/chemkin_26-r1/articles/graphics/ansyslogoblur.jpg differ diff --git a/2026R1/chemkin_26-r1/articles/graphics/beta.png b/2026R1/chemkin_26-r1/articles/graphics/beta.png new file mode 100644 index 0000000000..46ac2bfc4d Binary files /dev/null and b/2026R1/chemkin_26-r1/articles/graphics/beta.png differ diff --git a/2026R1/chemkin_26-r1/articles/graphics/draft.png b/2026R1/chemkin_26-r1/articles/graphics/draft.png new file mode 100644 index 0000000000..94ab8ac4a6 Binary files /dev/null and b/2026R1/chemkin_26-r1/articles/graphics/draft.png differ diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq00280314-3537-3805-6224-978331845878.svg b/2026R1/chemkin_26-r1/articles/graphics/eq00280314-3537-3805-6224-978331845878.svg new file mode 100644 index 0000000000..8b358ee3b5 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq00280314-3537-3805-6224-978331845878.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq02907090-1529-9750-1881-235928793508.svg b/2026R1/chemkin_26-r1/articles/graphics/eq02907090-1529-9750-1881-235928793508.svg new file mode 100644 index 0000000000..b6af196c43 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq02907090-1529-9750-1881-235928793508.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq03264786-8361-4440-2381-340366913365.svg b/2026R1/chemkin_26-r1/articles/graphics/eq03264786-8361-4440-2381-340366913365.svg new file mode 100644 index 0000000000..ded48805a3 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq03264786-8361-4440-2381-340366913365.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq03997499-9721-2657-4837-302200179031.svg b/2026R1/chemkin_26-r1/articles/graphics/eq03997499-9721-2657-4837-302200179031.svg new file mode 100644 index 0000000000..ade76b8516 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq03997499-9721-2657-4837-302200179031.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq06842689-6285-3940-1317-920449819165.svg b/2026R1/chemkin_26-r1/articles/graphics/eq06842689-6285-3940-1317-920449819165.svg new file mode 100644 index 0000000000..19ca15ecfb --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq06842689-6285-3940-1317-920449819165.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq08ea1f7d-6c45-43c8-a76c-9aec9bf6ba1c.svg b/2026R1/chemkin_26-r1/articles/graphics/eq08ea1f7d-6c45-43c8-a76c-9aec9bf6ba1c.svg new file mode 100644 index 0000000000..05d16e5af2 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq08ea1f7d-6c45-43c8-a76c-9aec9bf6ba1c.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq102cbc4a-ccc2-4b5c-a897-59f688f80015.svg b/2026R1/chemkin_26-r1/articles/graphics/eq102cbc4a-ccc2-4b5c-a897-59f688f80015.svg new file mode 100644 index 0000000000..38b34ecb26 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq102cbc4a-ccc2-4b5c-a897-59f688f80015.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq13044458-1852-7664-2739-935200283902.svg b/2026R1/chemkin_26-r1/articles/graphics/eq13044458-1852-7664-2739-935200283902.svg new file mode 100644 index 0000000000..13e2ae0511 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq13044458-1852-7664-2739-935200283902.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq13794111-5613-0060-1806-796358613253.svg b/2026R1/chemkin_26-r1/articles/graphics/eq13794111-5613-0060-1806-796358613253.svg new file mode 100644 index 0000000000..edee4f8e84 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq13794111-5613-0060-1806-796358613253.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq14861225-4879-0995-5364-035411427608.svg b/2026R1/chemkin_26-r1/articles/graphics/eq14861225-4879-0995-5364-035411427608.svg new file mode 100644 index 0000000000..33b26cc2ca --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq14861225-4879-0995-5364-035411427608.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq16410964-9849-7019-0098-502088480680.svg b/2026R1/chemkin_26-r1/articles/graphics/eq16410964-9849-7019-0098-502088480680.svg new file mode 100644 index 0000000000..b703d2a88a --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq16410964-9849-7019-0098-502088480680.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq171e77ce-3478-44da-b3d1-3634f88ea170.svg b/2026R1/chemkin_26-r1/articles/graphics/eq171e77ce-3478-44da-b3d1-3634f88ea170.svg new file mode 100644 index 0000000000..205d405327 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq171e77ce-3478-44da-b3d1-3634f88ea170.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq17372311-4896-2333-4000-425140588590.svg b/2026R1/chemkin_26-r1/articles/graphics/eq17372311-4896-2333-4000-425140588590.svg new file mode 100644 index 0000000000..8855572224 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq17372311-4896-2333-4000-425140588590.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq19135887-8623-2438-8563-132844781676.svg b/2026R1/chemkin_26-r1/articles/graphics/eq19135887-8623-2438-8563-132844781676.svg new file mode 100644 index 0000000000..13bcc888e4 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq19135887-8623-2438-8563-132844781676.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq1e9994c6-152e-4395-866b-cd0c05256be9.svg b/2026R1/chemkin_26-r1/articles/graphics/eq1e9994c6-152e-4395-866b-cd0c05256be9.svg new file mode 100644 index 0000000000..42706476dc --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq1e9994c6-152e-4395-866b-cd0c05256be9.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq20681490-1039-3612-7152-814451337282.svg b/2026R1/chemkin_26-r1/articles/graphics/eq20681490-1039-3612-7152-814451337282.svg new file mode 100644 index 0000000000..febd2d9601 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq20681490-1039-3612-7152-814451337282.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq21591324-9935-5242-0451-561379655072.svg b/2026R1/chemkin_26-r1/articles/graphics/eq21591324-9935-5242-0451-561379655072.svg new file mode 100644 index 0000000000..7886d6c755 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq21591324-9935-5242-0451-561379655072.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq22108436-4521-9416-6238-010525748851.svg b/2026R1/chemkin_26-r1/articles/graphics/eq22108436-4521-9416-6238-010525748851.svg new file mode 100644 index 0000000000..4597677026 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq22108436-4521-9416-6238-010525748851.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq22231585-5692-0452-7401-330238388594.svg b/2026R1/chemkin_26-r1/articles/graphics/eq22231585-5692-0452-7401-330238388594.svg new file mode 100644 index 0000000000..149631135c --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq22231585-5692-0452-7401-330238388594.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq23187667-5429-7985-3164-448329329190.svg b/2026R1/chemkin_26-r1/articles/graphics/eq23187667-5429-7985-3164-448329329190.svg new file mode 100644 index 0000000000..63b02cf71b --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq23187667-5429-7985-3164-448329329190.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq27878385-6900-1426-0394-637900994082.svg b/2026R1/chemkin_26-r1/articles/graphics/eq27878385-6900-1426-0394-637900994082.svg new file mode 100644 index 0000000000..ade76b8516 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq27878385-6900-1426-0394-637900994082.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq28353307-7133-1078-1979-282715205698.svg b/2026R1/chemkin_26-r1/articles/graphics/eq28353307-7133-1078-1979-282715205698.svg new file mode 100644 index 0000000000..00076ef73a --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq28353307-7133-1078-1979-282715205698.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq30872893-5952-5117-8225-867420063838.svg b/2026R1/chemkin_26-r1/articles/graphics/eq30872893-5952-5117-8225-867420063838.svg new file mode 100644 index 0000000000..149631135c --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq30872893-5952-5117-8225-867420063838.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq33719021-8375-1353-5972-733423400408.svg b/2026R1/chemkin_26-r1/articles/graphics/eq33719021-8375-1353-5972-733423400408.svg new file mode 100644 index 0000000000..b6af196c43 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq33719021-8375-1353-5972-733423400408.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq33753323-2102-8177-4314-724765120672.svg b/2026R1/chemkin_26-r1/articles/graphics/eq33753323-2102-8177-4314-724765120672.svg new file mode 100644 index 0000000000..6323aaa189 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq33753323-2102-8177-4314-724765120672.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq35347292-3805-0415-0160-109773348712.svg b/2026R1/chemkin_26-r1/articles/graphics/eq35347292-3805-0415-0160-109773348712.svg new file mode 100644 index 0000000000..b6af196c43 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq35347292-3805-0415-0160-109773348712.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq36566803-6667-6571-7922-127283430023.svg b/2026R1/chemkin_26-r1/articles/graphics/eq36566803-6667-6571-7922-127283430023.svg new file mode 100644 index 0000000000..5702558aa3 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq36566803-6667-6571-7922-127283430023.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq40400771-9402-2923-0067-859801334946.svg b/2026R1/chemkin_26-r1/articles/graphics/eq40400771-9402-2923-0067-859801334946.svg new file mode 100644 index 0000000000..fbf1626f6d --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq40400771-9402-2923-0067-859801334946.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq44571692-4145-7004-9578-559495981262.svg b/2026R1/chemkin_26-r1/articles/graphics/eq44571692-4145-7004-9578-559495981262.svg new file mode 100644 index 0000000000..1ad0660e7f --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq44571692-4145-7004-9578-559495981262.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq46866867-7696-0694-4316-160670959464.svg b/2026R1/chemkin_26-r1/articles/graphics/eq46866867-7696-0694-4316-160670959464.svg new file mode 100644 index 0000000000..1ad0660e7f --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq46866867-7696-0694-4316-160670959464.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq48500687-4074-7400-6084-505550119112.svg b/2026R1/chemkin_26-r1/articles/graphics/eq48500687-4074-7400-6084-505550119112.svg new file mode 100644 index 0000000000..c2457fcc3c --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq48500687-4074-7400-6084-505550119112.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq49317123-2176-3484-4931-033635321250.svg b/2026R1/chemkin_26-r1/articles/graphics/eq49317123-2176-3484-4931-033635321250.svg new file mode 100644 index 0000000000..5cdba97cc4 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq49317123-2176-3484-4931-033635321250.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq4a975373-97f9-4952-8da4-a5d222ba188e.svg b/2026R1/chemkin_26-r1/articles/graphics/eq4a975373-97f9-4952-8da4-a5d222ba188e.svg new file mode 100644 index 0000000000..05d16e5af2 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq4a975373-97f9-4952-8da4-a5d222ba188e.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq59010999-1591-3899-4556-926796331858.svg b/2026R1/chemkin_26-r1/articles/graphics/eq59010999-1591-3899-4556-926796331858.svg new file mode 100644 index 0000000000..a6d2cd51a4 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq59010999-1591-3899-4556-926796331858.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq5b3ec680-ee1f-4d15-bf70-6f765679508e.svg b/2026R1/chemkin_26-r1/articles/graphics/eq5b3ec680-ee1f-4d15-bf70-6f765679508e.svg new file mode 100644 index 0000000000..05d16e5af2 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq5b3ec680-ee1f-4d15-bf70-6f765679508e.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq62007473-9062-9073-0608-023265774922.svg b/2026R1/chemkin_26-r1/articles/graphics/eq62007473-9062-9073-0608-023265774922.svg new file mode 100644 index 0000000000..149631135c --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq62007473-9062-9073-0608-023265774922.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq63147088-2251-7922-1261-201208011563.svg b/2026R1/chemkin_26-r1/articles/graphics/eq63147088-2251-7922-1261-201208011563.svg new file mode 100644 index 0000000000..ded48805a3 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq63147088-2251-7922-1261-201208011563.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq66094508-0315-9064-8010-069988328246.svg b/2026R1/chemkin_26-r1/articles/graphics/eq66094508-0315-9064-8010-069988328246.svg new file mode 100644 index 0000000000..e77dd7bd58 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq66094508-0315-9064-8010-069988328246.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq66249785-7445-0260-8347-157091667088.svg b/2026R1/chemkin_26-r1/articles/graphics/eq66249785-7445-0260-8347-157091667088.svg new file mode 100644 index 0000000000..fb1f887f21 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq66249785-7445-0260-8347-157091667088.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq693dd893-1aa0-40bd-afb3-e603eb24c8da.svg b/2026R1/chemkin_26-r1/articles/graphics/eq693dd893-1aa0-40bd-afb3-e603eb24c8da.svg new file mode 100644 index 0000000000..84c975d3dc --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq693dd893-1aa0-40bd-afb3-e603eb24c8da.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq70293795-5452-9866-0474-453739521730.svg b/2026R1/chemkin_26-r1/articles/graphics/eq70293795-5452-9866-0474-453739521730.svg new file mode 100644 index 0000000000..a927c84d4b --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq70293795-5452-9866-0474-453739521730.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq71036551-1681-9604-2918-673011385917.svg b/2026R1/chemkin_26-r1/articles/graphics/eq71036551-1681-9604-2918-673011385917.svg new file mode 100644 index 0000000000..f57485ef3e --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq71036551-1681-9604-2918-673011385917.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq73873444-8841-3181-0623-555850045825.svg b/2026R1/chemkin_26-r1/articles/graphics/eq73873444-8841-3181-0623-555850045825.svg new file mode 100644 index 0000000000..ded48805a3 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq73873444-8841-3181-0623-555850045825.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq75279664-2707-6194-5831-395933810193.svg b/2026R1/chemkin_26-r1/articles/graphics/eq75279664-2707-6194-5831-395933810193.svg new file mode 100644 index 0000000000..13bcc888e4 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq75279664-2707-6194-5831-395933810193.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq77412692-1043-8389-0663-974839952253.svg b/2026R1/chemkin_26-r1/articles/graphics/eq77412692-1043-8389-0663-974839952253.svg new file mode 100644 index 0000000000..149631135c --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq77412692-1043-8389-0663-974839952253.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq79624287-1510-6777-1481-332300794039.svg b/2026R1/chemkin_26-r1/articles/graphics/eq79624287-1510-6777-1481-332300794039.svg new file mode 100644 index 0000000000..13bcc888e4 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq79624287-1510-6777-1481-332300794039.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq7bdbc1b5-1b9a-4da3-a72b-d48b75c9cf5f.svg b/2026R1/chemkin_26-r1/articles/graphics/eq7bdbc1b5-1b9a-4da3-a72b-d48b75c9cf5f.svg new file mode 100644 index 0000000000..42706476dc --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq7bdbc1b5-1b9a-4da3-a72b-d48b75c9cf5f.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq81120276-6457-6675-0451-615086917044.svg b/2026R1/chemkin_26-r1/articles/graphics/eq81120276-6457-6675-0451-615086917044.svg new file mode 100644 index 0000000000..149631135c --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq81120276-6457-6675-0451-615086917044.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq84267563-8249-6958-8288-169867362915.svg b/2026R1/chemkin_26-r1/articles/graphics/eq84267563-8249-6958-8288-169867362915.svg new file mode 100644 index 0000000000..e77dd7bd58 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq84267563-8249-6958-8288-169867362915.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq8d46359c-e88b-4f7a-80a8-39ccbeaf4892.svg b/2026R1/chemkin_26-r1/articles/graphics/eq8d46359c-e88b-4f7a-80a8-39ccbeaf4892.svg new file mode 100644 index 0000000000..205d405327 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq8d46359c-e88b-4f7a-80a8-39ccbeaf4892.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq90bd8d54-abbd-449c-84e4-a8b2be916355.svg b/2026R1/chemkin_26-r1/articles/graphics/eq90bd8d54-abbd-449c-84e4-a8b2be916355.svg new file mode 100644 index 0000000000..0c8029602a --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq90bd8d54-abbd-449c-84e4-a8b2be916355.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq92401940-9538-4780-1106-870534929156.svg b/2026R1/chemkin_26-r1/articles/graphics/eq92401940-9538-4780-1106-870534929156.svg new file mode 100644 index 0000000000..98cd434285 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq92401940-9538-4780-1106-870534929156.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq93152584-7975-3113-7550-670098777819.svg b/2026R1/chemkin_26-r1/articles/graphics/eq93152584-7975-3113-7550-670098777819.svg new file mode 100644 index 0000000000..ade76b8516 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq93152584-7975-3113-7550-670098777819.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq93886591-3571-1452-0627-613334995233.svg b/2026R1/chemkin_26-r1/articles/graphics/eq93886591-3571-1452-0627-613334995233.svg new file mode 100644 index 0000000000..edee4f8e84 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq93886591-3571-1452-0627-613334995233.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq94145639-5428-9408-0097-750516216714.svg b/2026R1/chemkin_26-r1/articles/graphics/eq94145639-5428-9408-0097-750516216714.svg new file mode 100644 index 0000000000..ade76b8516 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq94145639-5428-9408-0097-750516216714.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq97454377-1223-6035-1708-479487087431.svg b/2026R1/chemkin_26-r1/articles/graphics/eq97454377-1223-6035-1708-479487087431.svg new file mode 100644 index 0000000000..8a8f85cd0f --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq97454377-1223-6035-1708-479487087431.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eq99f42b89-fd39-44fc-b632-be0490a0943a.svg b/2026R1/chemkin_26-r1/articles/graphics/eq99f42b89-fd39-44fc-b632-be0490a0943a.svg new file mode 100644 index 0000000000..05d16e5af2 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eq99f42b89-fd39-44fc-b632-be0490a0943a.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eqa3cb9a36-06b9-429e-960c-3267f34005f1.svg b/2026R1/chemkin_26-r1/articles/graphics/eqa3cb9a36-06b9-429e-960c-3267f34005f1.svg new file mode 100644 index 0000000000..05d16e5af2 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eqa3cb9a36-06b9-429e-960c-3267f34005f1.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eqaa65409a-29b8-4090-a133-8531b7aa9f69.svg b/2026R1/chemkin_26-r1/articles/graphics/eqaa65409a-29b8-4090-a133-8531b7aa9f69.svg new file mode 100644 index 0000000000..00076ef73a --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eqaa65409a-29b8-4090-a133-8531b7aa9f69.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eqb596b963-f51a-4c9f-a9dc-b0abfedc00f1.svg b/2026R1/chemkin_26-r1/articles/graphics/eqb596b963-f51a-4c9f-a9dc-b0abfedc00f1.svg new file mode 100644 index 0000000000..0b6f3135aa --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eqb596b963-f51a-4c9f-a9dc-b0abfedc00f1.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eqbecd06a5-2268-41e3-96dd-8546fc7e6a90.svg b/2026R1/chemkin_26-r1/articles/graphics/eqbecd06a5-2268-41e3-96dd-8546fc7e6a90.svg new file mode 100644 index 0000000000..42706476dc --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eqbecd06a5-2268-41e3-96dd-8546fc7e6a90.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eqd20e881e-03da-47eb-95f2-0e8935b5cd71.svg b/2026R1/chemkin_26-r1/articles/graphics/eqd20e881e-03da-47eb-95f2-0e8935b5cd71.svg new file mode 100644 index 0000000000..00076ef73a --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eqd20e881e-03da-47eb-95f2-0e8935b5cd71.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eqe2d9dbca-336f-447f-83fb-3656649736f2.svg b/2026R1/chemkin_26-r1/articles/graphics/eqe2d9dbca-336f-447f-83fb-3656649736f2.svg new file mode 100644 index 0000000000..13bcc888e4 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eqe2d9dbca-336f-447f-83fb-3656649736f2.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eqe2fca669-ba20-4f73-8947-131870f5e6e1.svg b/2026R1/chemkin_26-r1/articles/graphics/eqe2fca669-ba20-4f73-8947-131870f5e6e1.svg new file mode 100644 index 0000000000..05d16e5af2 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eqe2fca669-ba20-4f73-8947-131870f5e6e1.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eqf5c7a138-d164-435c-bd6e-65d87bd26fee.svg b/2026R1/chemkin_26-r1/articles/graphics/eqf5c7a138-d164-435c-bd6e-65d87bd26fee.svg new file mode 100644 index 0000000000..c2b603e8f8 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eqf5c7a138-d164-435c-bd6e-65d87bd26fee.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/eqffea94ed-4b38-467c-8f37-37b88bb61d4b.svg b/2026R1/chemkin_26-r1/articles/graphics/eqffea94ed-4b38-467c-8f37-37b88bb61d4b.svg new file mode 100644 index 0000000000..42706476dc --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/eqffea94ed-4b38-467c-8f37-37b88bb61d4b.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/i54532.svg b/2026R1/chemkin_26-r1/articles/graphics/i54532.svg new file mode 100644 index 0000000000..6609350fcd --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/i54532.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/i61143.svg b/2026R1/chemkin_26-r1/articles/graphics/i61143.svg new file mode 100644 index 0000000000..5e3b669466 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/i61143.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/pgfId-1017826.svg b/2026R1/chemkin_26-r1/articles/graphics/pgfId-1017826.svg new file mode 100644 index 0000000000..efaeae6c92 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/pgfId-1017826.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/pgfId-1017950.svg b/2026R1/chemkin_26-r1/articles/graphics/pgfId-1017950.svg new file mode 100644 index 0000000000..0561cceb81 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/pgfId-1017950.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/pgfId-1080135.svg b/2026R1/chemkin_26-r1/articles/graphics/pgfId-1080135.svg new file mode 100644 index 0000000000..85e0171141 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/pgfId-1080135.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/pgfId-1080179.svg b/2026R1/chemkin_26-r1/articles/graphics/pgfId-1080179.svg new file mode 100644 index 0000000000..ca7b34c583 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/pgfId-1080179.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/pgfId-1080184.svg b/2026R1/chemkin_26-r1/articles/graphics/pgfId-1080184.svg new file mode 100644 index 0000000000..88a6e9a713 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/pgfId-1080184.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/pgfId-1080195.svg b/2026R1/chemkin_26-r1/articles/graphics/pgfId-1080195.svg new file mode 100644 index 0000000000..86c7eb83eb --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/pgfId-1080195.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/pgfId-1080203.svg b/2026R1/chemkin_26-r1/articles/graphics/pgfId-1080203.svg new file mode 100644 index 0000000000..abfee90f9e --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/pgfId-1080203.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/pgfId-1080241.svg b/2026R1/chemkin_26-r1/articles/graphics/pgfId-1080241.svg new file mode 100644 index 0000000000..91f551033e --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/pgfId-1080241.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/pgfId-1080249.svg b/2026R1/chemkin_26-r1/articles/graphics/pgfId-1080249.svg new file mode 100644 index 0000000000..b828c9d829 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/pgfId-1080249.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/pgfId-1082323.svg b/2026R1/chemkin_26-r1/articles/graphics/pgfId-1082323.svg new file mode 100644 index 0000000000..367e684f1d --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/pgfId-1082323.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/graphics/pgfId-1082327.svg b/2026R1/chemkin_26-r1/articles/graphics/pgfId-1082327.svg new file mode 100644 index 0000000000..55a69bc854 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/graphics/pgfId-1082327.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/i13005api_intro.md b/2026R1/chemkin_26-r1/articles/i13005api_intro.md new file mode 100644 index 0000000000..99c7662356 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/i13005api_intro.md @@ -0,0 +1,49 @@ +# Chapter 1: Introduction + +Advanced users of Ansys Chemkin may want to write their own custom Chemkin +program, or they may want to modify or supplement the functionality of +existing Chemkin application programs. This manual provides guidance for both +options. The API manual contains detailed programming-interface information +for accessing Chemkin's subroutine libraries for gas-phase kinetics, surface- +kinetics, thermodynamic-property, and transport-property utilities. Explicit +instructions are also given for modifying user-routine templates to customize +existing Chemkin reactor-model programs. The Chemkin subroutine libraries may +be accessed either from user-modified subroutines called by Chemkin pre- +packaged Reactor Models, or from entirely user-written application programs. +User application programs may be written in C, C++, or FORTRAN computer +languages. + +* * * + +**Note:** In each chapter where the definition and argument list of each +routine is described, the FORTRAN interface is shown with the additional +subroutine or function appendix or additional arguments required by the C++ +interface enclosed in { }. For example: + + + + SUBROUTINE CKCOMP{_C} ({N,NARRAY, } IST, IRAY, II, I) + + has FORTRAN interface and C++ interface + SUBROUTINE CKCOMP (IST, IRAY, II, I) SUBROUTINE CKCOMP_C (N,NARRAY, IST, IRAY, II, + I) + +* * * + +All Ansys Chemkin user subroutines are currently in FORTRAN. For all +Chemkin/API programmers, access to a supported FORTRAN compiler and basic +knowledge of FORTRAN linking procedures are required. For C/C++ programmers, +access to a supported C or C++ compiler is also required. Details of these +requirements are discussed in each chapter of this manual. + +The remainder of [Introduction](i13005api_intro.md "Chapter 1: Introduction") contains an overview of the structure of a typical Ansys +Chemkin-based program and the interactions between different utility +components in a Chemkin application program. [User Supplemental Programming](i13005api_user_sup_prog.md) provides detailed instructions for +modifying user-routines to supplement the behavior of Chemkin Reactor Models. +[Writing User Applications](i13005api_writing_userapps.md) provides +instructions on how to write an application program from scratch, which uses +calls to the various Chemkin subroutine libraries, including several complete +example programs. [Quick Reference Guide to the Gas-phase Kinetics Subroutine Library](i13005api_quickref_gaskinetics.md) , [Quick Reference Guide to the Surface Kinetics Subroutine Library](i13005api_refsurfkineticslib.md) , and +[Quick Reference Guide to the Transport Subroutine Library](i13005api_quickref_transp_lib.md) contain quick-reference lists of +the available subroutines in the three subroutine libraries for gas-phase +kinetics, surface kinetics, and transport-properties. Finally, [Alphabetical Listing of the Gas-phase Kinetics Subroutine Library](i13005api_list_gpk.md), [Alphabetical Listing of the Surface Kinetics Subroutine Library](i13005api_list_surf_kin.md) , and [Alphabetical Listing of the Transport Subroutine Library](i13005api_list_transportlib.md) contain alphabetical listings and more detailed descriptions of call lists for all of the subroutines in the three subroutine libraries. diff --git a/2026R1/chemkin_26-r1/articles/i13005api_list_gpk.md b/2026R1/chemkin_26-r1/articles/i13005api_list_gpk.md new file mode 100644 index 0000000000..417d484a8a --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/i13005api_list_gpk.md @@ -0,0 +1,28 @@ +# Chapter 7: Alphabetical Listing of the Gas-phase Kinetics Subroutine Library + +Each subroutine in the _Gas-phase Kinetics_ Subroutine Library is described in +this chapter, together with a detailed description of the variables in the +call lists. For all arrays, information is given on the required dimensioning +in the calling program. For all variables having units, the cgs units are +stated. + +In most cases the subroutines are backwards compatible with the original +version of _Chemkin_. However, there are some cases where either the +functionality is different or the call list has changed, but we have kept the +same subroutine name. + +* * * + +**Note:** All routines for which the call list or functionality may have +changed from the original version of _Chemkin_ are identified by an asterisk. +Subroutines whose call lists have changed since later versions, known as +_Chemkin_ II, are indicated by a double asterisk. + +* * * + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/i13005api_list_surf_kin.md b/2026R1/chemkin_26-r1/articles/i13005api_list_surf_kin.md new file mode 100644 index 0000000000..d9be452cc7 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/i13005api_list_surf_kin.md @@ -0,0 +1,14 @@ +# Chapter 8: Alphabetical Listing of the Surface Kinetics Subroutine Library + +Each subroutine in the _Surface Kinetics_ Subroutine Library is described in +this chapter, together with a detailed description of the variables in the +call lists. For all arrays, information is given on the required dimensioning +in the calling program. For all variables having units, the cgs units are +stated. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/i13005api_list_transportlib.md b/2026R1/chemkin_26-r1/articles/i13005api_list_transportlib.md new file mode 100644 index 0000000000..345d10c3c4 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/i13005api_list_transportlib.md @@ -0,0 +1,12 @@ +# Chapter 9: Alphabetical Listing of the Transport Subroutine Library + +The following pages list detailed descriptions for the user interface to each +of the package's seventeen user-callable subroutines. They are listed in +alphabetical order. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/i13005api_quickref_gaskinetics.md b/2026R1/chemkin_26-r1/articles/i13005api_quickref_gaskinetics.md new file mode 100644 index 0000000000..d05f3b443b --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/i13005api_quickref_gaskinetics.md @@ -0,0 +1,14 @@ +# Chapter 4: Quick Reference Guide to the Gas-phase Kinetics Subroutine Library + +This chapter is arranged by topical area to provide a quick reference to each +of the _Gas-phase Kinetics_ Library Subroutines. In addition to the subroutine +call list itself, the purpose of the subroutine is briefly described. Where +appropriate, the description refers to an equation number in [Chemkin Theory Manual](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/chemkin_th.html) . Detailed descriptions of the +subroutines are included alphabetically in [Alphabetical Listing of the Gas- phase Kinetics Subroutine Library](i13005api_list_gpk.md "Chapter 7: Alphabetical Listing of the Gas-phase Kinetics Subroutine Library") . + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/i13005api_quickref_transp_lib.md b/2026R1/chemkin_26-r1/articles/i13005api_quickref_transp_lib.md new file mode 100644 index 0000000000..a12dd69569 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/i13005api_quickref_transp_lib.md @@ -0,0 +1,14 @@ +# Chapter 6: Quick Reference Guide to the Transport Subroutine Library + +Users creating their own Ansys Chemkin Applications may need to access the +_Transport_ Subroutine Library directly to calculate transport properties. +This chapter is arranged by topical area to provide a quick reference to each +of the _Transport_ subroutines. In addition to the subroutine call list +itself, the purpose of the subroutine is briefly described. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/i13005api_refsurfkineticslib.md b/2026R1/chemkin_26-r1/articles/i13005api_refsurfkineticslib.md new file mode 100644 index 0000000000..5693d18860 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/i13005api_refsurfkineticslib.md @@ -0,0 +1,13 @@ +# Chapter 5: Quick Reference Guide to the Surface Kinetics Subroutine Library + +This chapter is arranged by topical area to provide a quick reference to each +subroutine of the _Surface Kinetics_ Subroutine Library. In addition to the +subroutine call list itself, the purpose of the subroutine is briefly +described. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/i13005api_user_sup_prog.md b/2026R1/chemkin_26-r1/articles/i13005api_user_sup_prog.md new file mode 100644 index 0000000000..92e7dcc931 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/i13005api_user_sup_prog.md @@ -0,0 +1,26 @@ +# Chapter 2: User Supplemental Programming + +With many of the Ansys Chemkin pre-packaged Reactor Models, you have some +flexibility in modifying the behavior of the underlying programs through +supplemental programming. Many of the Reactor Models contain user-subroutine +options, which allow users to insert their own arbitrary formulations or sub- +models for describing heat transfer, inlet attributes, or time- or distance- +dependent problem constraints, such as pressure, volume, or temperature. This +chapter describes the use of this option, with particular attention to the +mechanics of recompiling the user program. + +* * * + +**Note:** For network-license installs, users who wish to take advantage of +user programming should be sure to have a local installation of Ansys Chemkin, +so that changes do not affect other users on the system. Please see your +system administrator for assistance in setting up a local install. + +* * * + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/i13005api_writing_userapps.md b/2026R1/chemkin_26-r1/articles/i13005api_writing_userapps.md new file mode 100644 index 0000000000..cc60d4cb29 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/i13005api_writing_userapps.md @@ -0,0 +1,16 @@ +# Chapter 3: Writing User Applications + +This chapter discusses the following topics: + + * [Basic Requirements of a Chemkin Program](pgfId-1102613.md "3.1. Basic Requirements of a Chemkin Program") + * [Gas-phase Kinetics Sample Program (CONP)](pgfId-1085459.md "3.2. Gas-phase Kinetics Sample Program (CONP)") + * [Surface Kinetics Sample Program (SKSAMPLE)](pgfId-1126317.md "3.3. Surface Kinetics Sample Program (SKSAMPLE)") + * [Transport Sample Problem (PROPS)](pgfId-1078341.md "3.4. Transport Sample Problem (PROPS)") + * [VODE Summary](pgfId-1126691.md "3.5. VODE Summary") + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/i43132.md b/2026R1/chemkin_26-r1/articles/i43132.md new file mode 100644 index 0000000000..3b04a5f1b4 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/i43132.md @@ -0,0 +1,29 @@ +# Compiler Compatibility + +There are many versions of FORTRAN and C or C++ compilers available for each +computer platform, especially for Linux. These compilers and linkers have many +compile, optimization, and linking options. There are also differences in the +runtime library functions associated with different versions of FORTRAN and +C/C++ packages. Here, we document which versions of FORTRAN and C/C++ are +known to work with our libraries. In the Ansys Chemkin installations, we +provide sample code and a **make** -file system. These files demonstrate the +compilation and linking of user-written programs and routines that involve +calls to the Chemkin libraries. The compile and link flags and system +libraries used in the **make** files have been verified with the supported +compilers and corresponding platforms, as indicated at our website. + +Due to these language, library, and system complexities, we cannot guarantee +that every module written in any version of FORTRAN or C/C++ will be linkable +with our libraries. We especially caution that FORTRAN-90/95 modules using +those language extensions may require system libraries that are not compatible +with the Ansys Chemkin libraries. Since the combination of operating system, +compilers, and third-party packages is often unique to your computing +environment, our ability to assist you in troubleshooting these combinations +will be limited. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/i71111.md b/2026R1/chemkin_26-r1/articles/i71111.md new file mode 100644 index 0000000000..9f369c29df --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/i71111.md @@ -0,0 +1,119 @@ +# Recompiling and Linking a User Subroutine + +* * * + +**Note:** Before starting to recompile or link, you must set up your compile +environment. For more information on the compiler compatibility with Ansys +Chemkin libraries, see [Compiler Compatibility](i43132.md "1.1. Compiler Compatibility"). + +* * * + +Incorporating customized user subroutines into Ansys Chemkin shared objects +requires the following basic steps, each of which are described in more detail +below: + + 1. On Windows platforms, set the environment variable `FLEXLM_ARCH` to:`win64`. + + 2. Modify the user routine for the option of interest. + + 3. Compile and update the user routine's static object-archive library. + + 4. Link the user routine library into the target run-time shared-object library. + +As an example, the following steps will incorporate a customized rate routine +in _cklib_user_routines.f_ , and/or a modified `FUNCTION PRQFUN` in +_premix_user_routines.f_ for the Premixed Laminar Flame Models, by recompiling +the modified user routines and updating the object archive library required by +the application program: + + 1. On Windows systems, set the FLEXLM_ARCH environment variable. + + 2. Locate the user routines' archive library file: + +For Windows/PC, this library is located at **\lib\user_routines.lib**. + +For UNIX, this library is located at **/lib/user_routines.a**. + + 3. Back up the library file; for example, rename the existing _user_routines.lib_ file (e.g. as _installed_user_routines.lib_), so that it does not get overwritten. + + 4. Using the makefile available in the _user_routines_ directory, the following will compile the changes made to the user routine files and create a new _user_routines.lib_. The command must be typed in an Intel FORTRAN command window (PC) or in a UNIX shell with the Intel FORTRAN environment, after using the `cd` command to reach the _user_routines_ directory: + +For Windows/PC, use: + +`nmake -i -f user_routines_pc.mak` + +For UNIX, use: + +`make -i -f user_routines_unix.mak` + +* * * + +**Note:** If you **copy** instead of **rename** the original library, you +will have to also explicitly delete the original file from the **lib** +directory before `make` will build a new version. + +* * * + + 5. On Windows platforms, set the environment variable `FLEXLM_ARCH` to: `win64`. + + 6. You must rebuild the target executable's shared-object library, thus linking the updated user routines' library. The shared-object libraries are located in the bin directory (for example, PC: %CHEMKIN_BIN% ; UNIX: $CHEMKIN_BIN). In this example, you create the shared-object library associated with the `PRQFUN` routine in [Table 2.1: Keyword and FORTRAN Code Relationships](pgfId-1074407.md#i77953 "Table 2.1: Keyword and FORTRAN Code Relationships"), to incorporate the modified routines cited in the previous step: + +For Windows/PC, the shared-object library consists of three files, +**premixdll.dll** , **premixdll.exp** , and **premixdll.lib**. + +For UNIX platforms, the corresponding file is **libpremix.so** (for LINUX). + + 7. Back up the shared-object library for the executable that you want to build. For example, rename the existing _premixdll.*_ files (for example, as _installed_premixdll.dll_), so that they do not get overwritten. + +* * * + +**Note:** If you **copy** instead of **rename** the original library, you +will have to also explicitly delete the original file from the **bin** +directory before `make` will build a new version. + +* * * + + 8. Change directories to the _drivers_cpp_ directory: + +For Windows/PC, use: + +`cd ..\drivers_cpp` + +For UNIX, use: + +`cd ../drivers_cpp` + + 9. For the Reactor Model you are targeting, make a new shared-object library using the makefile located in the drivers_cpp directory: + +For Windows/PC, use: + +`nmake -i -f drivers_cpp_pc.mak ..\bin\premixdll.dll` + +which also creates a new _premixdll.exp_ and _premixdll.lib_. + +For UNIX, use: + +`make -i -f drivers_cpp_unix.mak ../bin/libpremix.so` + +Now you can launch the Ansys Chemkin interface and process your input files as +usual with the modified run-time shared-object library for the associated +Reactor Models (in this case the Premixed Burner-stabilized Flame and the +Premixed Flame-speed Calculator). Remember to restore the backed-up shared- +object library when you want to return to the as-installed functionality. + +* * * + +**Note:** There are some features in the Reactor Models and Ansys Chemkin +utilities that will be incompatible with the global replacement of species +rates of production, such as sensitivity analysis and rate-of-production +analysis. Such features will return zero values when user rate-routine +programming is encountered. + +* * * + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/i78942.md b/2026R1/chemkin_26-r1/articles/i78942.md new file mode 100644 index 0000000000..404db5c9b6 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/i78942.md @@ -0,0 +1,42 @@ +# Chemical Production Rates + +**Table 4.12: Chemical Production Rates Subroutines[a]** + +| Subroutine | Description | +| --------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `SUBROUTINE CKCDC (T, C, ICKWRK, RCKWRK, CDOT, DDOT)` | Returns the molar creation and destruction rates of the species given temperature(s) and molar concentrations; see [Equation 3-51](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/i11616.html#i39748) . | +| `SUBROUTINE CKDOT (RKF, RKR, ICKWRK, RCKWRK, CDOT, DDOT)` | Returns the molar creation and destruction rates of the species given reactions' rates of progress. | +| `SUBROUTINE CKCDXP (P, T, X, ICKWRK, RCKWRK, CDOT, DDOT)` | Returns the molar creation and destruction rates of the species given pressure, temperature(s) and mole fractions; see [Equation 3-51](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/i11616.html#i39748) . | +| `SUBROUTINE CKCDXR (RHO, T, X, ICKWRK, RCKWRK, CDOT, DDOT)` | Returns the molar creation and destruction rates of the species given mass density, temperature(s) and mole fractions; see [Equation 3-51](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/i11616.html#i39748) . | +| `SUBROUTINE CKCDYP (P, T, Y, ICKWRK, RCKWRK, CDOT, DDOT)` | Returns the molar creation and destruction rates of the species given pressure, temperature(s) and mass fractions; see [Equation 3-51](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/i11616.html#i39748) . | +| `SUBROUTINE CKCDYR (RHO, T, Y, ICKWRK, RCKWRK, CDOT, DDOT)` | Returns the molar creation and destruction rates of the species given mass density, temperature(s) and mass fractions; see [Equation 3-51](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/i11616.html#i39748) . | +| `SUBROUTINE CKCONT (K, Q, ICKWRK, RCKWRK, CIK)` | Returns the contributions of the reactions to the molar production rate of a species; see [Equation 3-2](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075229.html#i12274) and [Equation 3-4](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075229.html#i91749) . | +| `SUBROUTINE CKCTC (T, C, ICKWRK, RCKWRK, CDOT, TAU)` | Returns the molar creation rates and characteristic destruction times of the species given temperature(s) and molar concentrations; see [Equation 3-54](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/i11616.html#i79011) and [Equation 3-56](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/i11616.html#i33517) . | +| `SUBROUTINE CKCTXP (P, T, X, ICKWRK, RCKWRK, CDOT, TAU)` | Returns the molar creation rates and characteristic destruction times of the species given pressure, temperature(s) and mole fractions; see [Equation 3-54](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/i11616.html#i79011) and [Equation 3-56](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/i11616.html#i33517) . | +| `SUBROUTINE CKCTXR (RHO, T, X, ICKWRK, RCKWRK, CDOT, TAU)` | Returns the molar creation rates and characteristic destruction times of the species given mass density, temperature(s) and mole fractions; see [Equation 3-54](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/i11616.html#i79011) and [Equation 3-56](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/i11616.html#i33517) . | +| `SUBROUTINE CKCTYP (P, T, Y, ICKWRK, RCKWRK, CDOT, TAU)` | Returns the molar creation rates and characteristic destruction times of the species given pressure, temperature(s) and mass fractions; see [Equation 3-54](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/i11616.html#i79011) and [Equation 3-56](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/i11616.html#i33517) . | +| `SUBROUTINE CKCTYR (RHO, T, Y, ICKWRK, RCKWRK, CDOT, TAU)` | Returns the molar creation rates and characteristic destruction times of the species given mass density, temperature(s) and mass fractions; see [Equation 3-54](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/i11616.html#i79011) and [Equation 3-56](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/i11616.html#i33517) . | +| `SUBROUTINE CKDHXP (P, T, X, ICKWRK, RCKWRK, HDOT)` | Returns the heat release rate of the mixture given pressure, temperature(s) and mole fractions. | +| `SUBROUTINE CKDHYP (P, T, Y, ICKWRK, RCKWRK, HDOT)` | Returns the heat release rate of the mixture given pressure, temperature(s) and mass fractions. | +| `SUBROUTINE CKKFKR (P, T, X, ICKWRK, RCKWRK, FWDK, REVK)` | Returns the forward and reverse reaction rates for reactions given pressure, temperature(s) and mole fractions. | +| `SUBROUTINE CKKFRT (P, T, ICKWRK, RCKWRK, RKFT, RKRT)` | Returns the forward and reverse reaction rates for reactions given pressure and temperature(s). This subroutine returns only the temperature-dependent part of the forward and reverse rate constants. The pressure is included in the interface so that general pressure dependence using the logarithmic interpolation is accounted for. | +| `SUBROUTINE CKRCXP (P, T, X, ICKWRK, RCKWRK, RCFT, RCRT)` | Returns the forward and reverse rate constants for all reactions given pressure, temperature and mole fractions; see [Equation 3-4](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075229.html#i91749) and [Equation 3-19](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1062725.html#i73167) . Note this subroutine will calculate a value for the reverse rate constant irrespective of whether the reaction was deemed reversible in the Pre-processor file. Also note that the concentration of third bodies for third body reactions is included in the returned rate constant. The units for the rate constant will depend on the number of reactants. | +| `SUBROUTINE CKRDEX (I, RCKWRK, RD)*` | Get/put the perturbation factor of the _i_ th reaction | +| `SUBROUTINE CKWC (T, C, ICKWRK, RCKWRK, WDOT)` | Returns the molar production rates of the species given temperature(s) and molar concentrations; see [Equation 3-2](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075229.html#i12274) . | +| `SUBROUTINE CKWXP (P, T, X, ICKWRK, RCKWRK, WDOT)` | Returns the molar production rates of the species given pressure, temperature(s) and mole fractions; see [Equation 3-2](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075229.html#i12274) . | +| `SUBROUTINE CKWXR (RHO, T, X, ICKWRK, RCKWRK, WDOT)` | Returns the molar production rates of the species given mass density, temperature(s) and mole fractions; see [Equation 3-2](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075229.html#i12274) . | +| `SUBROUTINE CKWYP (P, T, Y, ICKWRK, RCKWRK, WDOT)` | Returns the molar production rates of the species given pressure, temperature(s) and mass fractions; see [Equation 3-2](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075229.html#i12274) . | +| `SUBROUTINE CKWYPK (P, T, Y, RKFT, RKRT, ICKWRK, RCKWRK, WDOT)` | Returns the molar production rates of the species given pressure, temperature(s) and mass fractions; see [Equation 3-2](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075229.html#i12274) . | +| `SUBROUTINE CKWYR (RHO, T, Y, ICKWRK, RCKWRK, WDOT)` | Returns the molar production rates of the species given mass density, temperature and mass fractions; see [Equation 3-2](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075229.html#i12274) . | + +[a] Where appropriate, the description refers to an equation number in +[Chemkin Theory Manual](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/chemkin_th.html) . + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/marker-1017775.md b/2026R1/chemkin_26-r1/articles/marker-1017775.md new file mode 100644 index 0000000000..3c60b2b1eb --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/marker-1017775.md @@ -0,0 +1,120 @@ +# Example: Hydrogen Oxidation + +The input file to the _Gas-phase Kinetics_ Pre-processor for a hydrogen- +oxidation process is shown in [Example 1.1: Sample Reaction Mechanism as Read by the _Gas-phase Kinetics_ Pre-processor](marker-1017775.md#i62305 "Example 1.1: Sample Reaction Mechanism as Read by the Gas-phase Kinetics Pre- processor") . First, the file specifies the elements and species that appear in the mechanism, and then includes the reaction mechanism description. The +input is essentially format free. The elements and species names need only be +separated by blank spaces, but may also be separated by tabs or blank lines. +In the REACTIONS section, the character string that describes the reaction +appears on the left and is followed by the three Arrhenius coefficients (pre- +exponential factor, temperature exponent, and activation energy). Enhanced +third body efficiencies for selected species are specified in the line +following that for several reactions that contain an arbitrary third body, +`M`. Exclamation marks signify the beginning of comments and the remainder of +the line is ignored. + +**Example 1.1: Sample Reaction Mechanism as Read by the _Gas-phase Kinetics_ +Pre-processor** + + + + ELEMENTS H O N END + SPECIES H2 H O2 O OH HO2 H2O2 H2O N N2 NO END + REACTIONS + H2+O2=2OH 0.170E+14 0.00 47780 + OH+H2=H20+H 0.117E+10 1.30 3626 !D-L&W + O+OH=O2+H 0.400E+15 -0.50 0 !JAM 1986 + O+H2=OH+H 0.506E+05 2.67 6290 !KLEMM ET AL., 1986 + H+O2+M=HO2+M 0.361E+18 -0.72 0 !DIXON-LEWIS + H2O/18.6/ H2/2.86/ N2/1.26/ + OH+HO2=H2O+O2 0.750E+13 0.00 0 !D-L + H+HO2=2OH 0.140E+15 0.00 1073 !D-L + O+HO2=O2+OH 0.140E+14 0.00 1073 !D-L + 2OH=O+H2O 0.600E+09 1.30 0 !COHEN-WEST + H+H+M=H2+M 0.100E+19 -1.00 0 !D-L + H2O/0.0/ H2/0.0/ + H+H+H2=H2+H2 0.920E+17 -0.60 0 + H+H+H2O=H2+H2O 0.600E+20 -1.25 0 + H+OH+M=H2O+M 0.160E+23 -2.00 0 !D-L + H2O/5/ + H+O+M=OH+M 0.620E+17 -0.60 0 !D-L + H2O/5/ + O+O+M=O2+M 0.189E+14 0.00 -1788 !NBS + H+HO2=H2+O2 0.125E+14 0.00 0 !D-L + HO2+HO2=H2O2+O2 0.200E+13 0.00 0 + H2O2+M=OH+OH+M 0.130E+18 0.00 45500 + H2O2+H=HO2+H2 0.160E+13 0.00 3800 + H2O2+OH=H2O+HO2 0.100E+14 0.00 1800 + O+N2=NO+N 0.140E+15 0.00 75800 + N+O2=NO+O 0.640E+10 1.00 6280 + OH+N=NO+H 0.400E+14 0.00 0 + END + +Assume the governing equation we wish to study is the energy conservation +equation for a constant-pressure environment: + +| ![](graphics/pgfId-1017826.svg) | **(1 -1)** | +| ------------------------------- | ---------- | + +where ![](graphics/eq46866867-7696-0694-4316-160670959464.svg) is the temperature, ![](graphics/eq03997499-9721-2657-4837-302200179031.svg) the mass +density, ![](graphics/eq63147088-2251-7922-1261-201208011563.svg) the mean +specific heat, ![](graphics/eq13044458-1852-7664-2739-935200283902.svg) the +molar species enthalpies, and +![](graphics/eq81120276-6457-6675-0451-615086917044.svg) the species molar +production rates. The representation of this equation begins with _Gas-phase +Kinetics_ subroutine calls (the output variables are underlined to help +distinguish them): + +**Example 1.2:_Gas-phase Kinetics_ subroutine call** + + + + CALL CKINIT(LENIWK, LENRWK, LENCWK, LINKCK, LOUT, ICKWRK, RCKWRK, CCKWRK, IFLAG) + CALL CKINDX(ICKWRK, RCKWRK, MM, KK, II, NFIT) + CALL CKRHOY(P, T, Y, ICKWRK, RCKWRK, RHO) + CALL CKCPBS(T, Y, ICKWRK, RCKWRK, CPB) + CALL CKHML (T, ICKWRK, RCKWRK, HML) + CALL CKWYP (P, T, Y, ICKWRK, RCKWRK, WDOT) + +The complete details for these calls are explained in later sections of this +manual; the objective here is to illustrate the relative simplicity of writing +an Ansys Chemkin application. Briefly, the first call is to the initialization +subroutine `CKINIT`, which reads the Linking File created by the Pre-processor +and fills the three work arrays. `LENIWK`, `LENRWK` and `LENCWK` are +dimensions provided by the user for the data arrays `ICKWRK`, `RCKWRK`, and +`CCKWRK`. `IFLAG` is an error flag that is returned with a zero value if no +errors occur. `LINKCK` is the logical file unit number of the Linking File, +_chem.asc_ , and `LOUT` is the logical file number for printed diagnostic and +error messages. The call to `CKINDX` provides index information about the +reaction mechanism: `MM` is the number of elements contained in the species, +`KK` is the number of gas-phase species, `II` is the number of reactions, and +`NFIT` is the number of coefficients in the thermodynamic fits. In the +remaining calls, `P`, `T`, and `Y` are the pressure, temperature, and vector +of species mass fractions, respectively. The output variables correspond to +the various terms for describing the equation, that is, +![](graphics/eq36566803-6667-6571-7922-127283430023.svg), +![](graphics/eq22108436-4521-9416-6238-010525748851.svg), +![](graphics/eq16410964-9849-7019-0098-502088480680.svg), and +![](graphics/eq23187667-5429-7985-3164-448329329190.svg). + +The FORTRAN representation of the governing equation, given by combining the +results of the above subroutine calls, is simply + +**Figure 1.2: FORTRAN representation of an energy equation** + + + + SUM=0.0 + DO 100 K=1,KK + SUM = SUM + HML(K)*WDOT(K) + 100 CONTINUE + DTDT = -SUM/(RHO*CPB) + +One can see from this example that relatively little programming effort is +required to form a conservation equation for an arbitrary reaction mechanism. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/marker-1040891.md b/2026R1/chemkin_26-r1/articles/marker-1040891.md new file mode 100644 index 0000000000..44d2f684f8 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/marker-1040891.md @@ -0,0 +1,18 @@ +# Overview of Utilities Packages + +_CHEMKIN_ is highly structured and modular, consisting of three basic +utilities packages: _Gas Kinetics, Surface Kinetics, and Transport_. _Gas +Kinetics_ forms the core set of utilities, upon which the other two depend. +Use of these utilities requires the manipulation of a number of programs, +subroutines, and data files. This section describes the structure of the _Gas- +phase Kinetics_ package and the basic requirements for using it from within +your own application programs. [Structure and Use of the Surface Kinetics Utilities](pgfId-1017373.md "1.5. Structure and Use of the Surface Kinetics Utilities") provides similar information for the _Surface Kinetics_ utilities, +while [Structure and Use of the Transport Utilities](pgfId-1021250.md "1.6. Structure and Use of the Transport Utilities") provides an overview of the +_Transport_ utilities. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/marker-1082818.md b/2026R1/chemkin_26-r1/articles/marker-1082818.md new file mode 100644 index 0000000000..fa71cd8b8c --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/marker-1082818.md @@ -0,0 +1,17 @@ +# Input to Chemkin Sample Program (CONP) + + + + 1 1000 + H2 1 + O2 3 + N2 .1 + END + 3.0E-4 3.0E-5 + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/marker-1096354.md b/2026R1/chemkin_26-r1/articles/marker-1096354.md new file mode 100644 index 0000000000..000b625eeb --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/marker-1096354.md @@ -0,0 +1,67 @@ +# Output from Chemkin Sample Program (CONP) + + + + ADIABATIC FIXED PRESSURE PROBLEM, + + INPUT PRESSURE(ATM) AND TEMPERATURE(K): + 0.100E+01 0.100E+04 + + INPUT MOLES OF NEXT SPECIES + H2 1 + + INPUT MOLES OF NEXT SPECIES + O2 3 + + INPUT MOLES OF NEXT SPECIES + N2 .1 + + INPUT MOLES OF NEXT SPECIES + END + + INPUT FINAL TIME AND DT + 0.300E-03 0.300E-04 + + T(SEC) TMP(K) H2 H O2 O OH + HO2 H2O2 H2O N N2 + NO + 0.000E+00 0.100E+04 0.244E+00 0.000E+00 0.732E+00 0.000E+00 0.000E+00 + 0.000E+00 0.000E+00 0.000E+00 0.000E+00 0.244E-01 + 0.000E+00 + 0.300E-04 0.100E+04 0.244E+00 0.817E-05 0.732E+00 0.425E-05 0.144E-05 + 0.129E-04 0.103E-07 0.259E-04 0.181E-20 0.244E-01 + 0.375E-19 + 0.600E-04 0.196E+04 0.890E-02 0.169E-01 0.625E+00 0.570E-01 0.411E-01 + 0.174E-03 0.355E-04 0.224E+00 0.229E-09 0.262E-01 + 0.167E-07 + 0.900E-04 0.235E+04 0.367E-02 0.331E-02 0.658E+00 0.235E-01 0.392E-01 + 0.845E-04 0.445E-05 0.246E+00 0.193E-08 0.271E-01 + 0.163E-05 + 0.120E-03 0.243E+04 0.258E-02 0.185E-02 0.665E+00 0.165E-01 0.352E-01 + 0.693E-04 0.254E-05 0.251E+00 0.229E-08 0.272E-01 + 0.438E-05 + 0.150E-03 0.246E+04 0.216E-02 0.139E-02 0.669E+00 0.138E-01 0.330E-01 + 0.641E-04 0.197E-05 0.254E+00 0.236E-08 0.273E-01 + 0.730E-05 + 0.180E-03 0.248E+04 0.197E-02 0.120E-02 0.670E+00 0.125E-01 0.319E-01 + 0.619E-04 0.173E-05 0.255E+00 0.237E-08 0.273E-01 + 0.102E-04 + 0.210E-03 0.248E+04 0.188E-02 0.111E-02 0.671E+00 0.119E-01 0.313E-01 + 0.609E-04 0.162E-05 0.255E+00 0.238E-08 0.273E-01 + 0.131E-04 + 0.240E-03 0.249E+04 0.183E-02 0.106E-02 0.671E+00 0.116E-01 0.310E-01 + 0.604E-04 0.157E-05 0.256E+00 0.239E-08 0.273E-01 + 0.160E-04 + 0.270E-03 0.249E+04 0.181E-02 0.104E-02 0.672E+00 0.115E-01 0.308E-01 + 0.602E-04 0.154E-05 0.256E+00 0.240E-08 0.273E-01 + 0.188E-04 + 0.300E-03 0.249E+04 0.179E-02 0.103E-02 0.672E+00 0.114E-01 0.307E-01 + 0.600E-04 0.152E-05 0.256E+00 0.241E-08 0.273E-01 + 0.217E-04 0.217E-04 + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/marker-1126991.md b/2026R1/chemkin_26-r1/articles/marker-1126991.md new file mode 100644 index 0000000000..d71544a88f --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/marker-1126991.md @@ -0,0 +1,66 @@ +# Input to Surface Kinetics Pre-processor + + + + SITE/SI3N4/ SDEN/4.1683e-9/ + NHSIF(S)/2/ + SIF3NH2(S)/2/ + SIF2NH(S)/2/ + NH2SIFNH(S)/2/ + NHSIFNHSIFNH(S)/4/ + NHNH2(S)/2/ + END + BULK SI(D)/2.066/ + BULK N(D) /1.374/ + END + THERMO ALL + 300. 600. 1685. + NHSIF(S) J 3/67N 1H 1SI 1F 1S 300.000 1685.000 1 + 0.24753989E 01 0.88112187E-03-0.20939481E-06 0.42757187E-11 0.16006564E-13 2 + -0.81255620E 03-0.12188747E 02 0.84197538E 00 0.83710416E-02-0.13077030E-04 3 + 0.97593603E-08-0.27279380E-11-0.52486288E 03-0.45272678E 01 4 + NHNH2(S) J 3/67N 2H 3SI 0F 0S 300.000 1685.000 1 + 0.24753989E 01 0.88112187E-03-0.20939481E-06 0.42757187E-11 0.16006564E-13 2 + -0.81255620E 03-0.12188747E 02 0.84197538E 00 0.83710416E-02-0.13077030E-04 3 + 0.97593603E-08-0.27279380E-11-0.52486288E 03-0.45272678E 01 4 + SIF3NH2(S) J 3/67N 1H 2SI 1F 3S 300.000 1685.000 1 + 0.24753989E 01 0.88112187E-03-0.20939481E-06 0.42757187E-11 0.16006564E-13 2 + -0.81255620E 03-0.12188747E 02 0.84197538E 00 0.83710416E-02-0.13077030E-04 3 + 0.97593603E-08-0.27279380E-11-0.52486288E 03-0.45272678E 01 4 + SIF2NH(S) J 3/67N 1H 1SI 1F 2S 300.000 1685.000 1 + 0.24753989E 01 0.88112187E-03-0.20939481E-06 0.42757187E-11 0.16006564E-13 2 + -0.81255620E 03-0.12188747E 02 0.84197538E 00 0.83710416E-02-0.13077030E-04 3 + 0.97593603E-08-0.27279380E-11-0.52486288E 03-0.45272678E 01 4 + NH2SIFNH(S) J 3/67N 2H 3SI 1F 1S 300.000 1685.000 1 + 0.24753989E 01 0.88112187E-03-0.20939481E-06 0.42757187E-11 0.16006564E-13 2 + -0.81255620E 03-0.12188747E 02 0.84197538E 00 0.83710416E-02-0.13077030E-04 3 + 0.97593603E-08-0.27279380E-11-0.52486288E 03-0.45272678E 01 4 + NHSIFNHSIFNH(S) J 3/67N 3H 3SI 2F 2S 300.000 1685.000 1 + 0.24753989E 01 0.88112187E-03-0.20939481E-06 0.42757187E-11 0.16006564E-13 2 + -0.81255620E 03-0.12188747E 02 0.84197538E 00 0.83710416E-02-0.13077030E-04 3 + 0.97593603E-08-0.27279380E-11-0.52486288E 03-0.45272678E 01 4 + SI(D) J 3/67SI 100 000 000 0S 300.000 1685.000 1 + 0.24753989E 01 0.88112187E-03-0.20939481E-06 0.42757187E-11 0.16006564E-13 2 + -0.81255620E 03-0.12188747E 02 0.84197538E 00 0.83710416E-02-0.13077030E-04 3 + 0.97593603E-08-0.27279380E-11-0.52486288E 03-0.45272678E 01 4 + N(D) J 3/67N 100 000 000 0S 300.000 1685.000 1 + 0.24753989E 01 0.88112187E-03-0.20939481E-06 0.42757187E-11 0.16006564E-13 2 + -0.81255620E 03-0.12188747E 02 0.84197538E 00 0.83710416E-02-0.13077030E-04 3 + 0.97593603E-08-0.27279380E-11-0.52486288E 03-0.45272678E 01 4 + END + + REACTIONS + NH3 + NHSIF(S) => NHNH2(S) + SI(D) + HF 7.5620E08 0.5 0.0 + SIF4 + NHNH2(S) => SIF3NH2(S) + N(D) + HF 3.0967E08 0.5 0.0 + SIF3NH2(S) => SIF2NH(S) + HF 1.0000E05 0.0 0.0 + NH3 + SIF2NH(S) => NH2SIFNH(S) + HF 7.5620E08 0.5 0.0 + NH2SIFNH(S) + SIF2NH(S) => NHSIFNHSIFNH(S) + HF 1.0000E15 0.0 0.0 + NHSIFNHSIFNH(S) + SIF2NH(S) => 3NHSIF(S) + N(D) + HF 1.0000E15 0.0 0.0 + END + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1017373.md b/2026R1/chemkin_26-r1/articles/pgfId-1017373.md new file mode 100644 index 0000000000..f04fb4257d --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1017373.md @@ -0,0 +1,74 @@ +# Structure and Use of the Surface Kinetics Utilities + +Using the _Surface Kinetics_ utilities is analogous to using the _Gas-phase +Kinetics_ utilities, and the _Surface Kinetics_ Pre-processor can only be used +after the _Gas-phase Kinetics_ Pre-processor has been executed. The flow of +information from the _Gas-phase Kinetics_ Pre-processor to the Application +program is shown in [Figure 1.3: Relationships between the CHEMKIN Pre- processors and an Application](pgfId-1017373.md#i62358 "Figure 1.3: Relationships between the CHEMKIN Pre-processors and an Application") . A +third set of utilities, which handles gas-phase molecular transport, may or +may not be needed in a particular Application. The Transport utilities are +described in [Structure and Use of the Transport Utilities](pgfId-1021250.md "1.6. Structure and Use of the Transport Utilities"). + +The _Gas-phase Kinetics_ Pre-processor introduces the chemical elements that +are used in the entire Chemistry Set, whether they are in the gas-phase +reaction mechanism or the surface reaction mechanism. Gas-phase species (which +can appear in surface reactions) are also introduced with the _Gas-phase +Kinetics_ Pre-processor. Thus, if a gas-phase species appears in surface +reactions, they must be included in the input to the _Gas-phase Kinetics_ Pre- +processor, even if there are no gas-phase reactions. + +**Figure 1.3: Relationships between the CHEMKIN Pre-processors and an +Application** + +![Relationships between the CHEMKIN Pre-processors and an Application](graphics/CHEMKIN_Relationships_between_Pre-proc_and_Application.png) + + + +Like _Gas-phase Kinetics_ , the _Surface Kinetics_ package is composed of two +software components: + + * _Surface Kinetics_ Pre-processor + + * _Surface Kinetics_ Subroutine Library + +As with the _Gas-phase Kinetics_ subroutine library, your own routines or +application programs can call _Surface Kinetics_ subroutines that define the +terms in the equations relating to equation of state, chemical production +rates, and thermodynamics, and then combine the results to define the problem. +The _Surface Kinetics_ subroutines provide information specifically for +surface chemistry on a particular surface material. + +The _Surface Kinetics_ Pre-processor first reads the symbolic description of +the surface reaction mechanism and then extracts from a Thermodynamic Database +the appropriate thermodynamic information for the species involved in the +surface reaction mechanism. _Gas-phase Kinetics_ and _Surface Kinetics_ can +share a common database for this purpose. The output of the _Surface Kinetics_ +Pre-processor is the _Surface Kinetics_ Linking File, which contains all the +pertinent information on the elements, species, and reactions in the surface +reaction mechanism. Information on gas-phase species is brought in from the +_Gas-phase Kinetics_ Linking File, and thus is duplicated in the two linking +files for efficiency in subsequent data processing. + +The _Surface Kinetics_ Linking File is read by an initialization routine in +the _Surface Kinetics_ Subroutine Library (`SKINIT`) that is called from the +Ansys Chemkin application program. The purpose of the initialization is to +populate three data arrays (one integer, one floating point, and one character +data type), which must be allocated by your program, that are then passed into +and used internally by the other subroutines in the _Surface Kinetics_ +Subroutine Library. + +The _Surface Kinetics_ Subroutine Library has approximately seventy (70) +subroutines that return information on elements, species, reactions, +thermodynamic properties, and chemical production rates. Generally, the input +to these routines will be the state of the gas and the surface--pressure, +temperature, and species composition. The species composition is specified in +terms of gas-phase mole fractions, surface site fractions, and bulk-phase +activities; surface site densities are also input to complete the +specification of the state of the surface. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1017885.md b/2026R1/chemkin_26-r1/articles/pgfId-1017885.md new file mode 100644 index 0000000000..5f5bf9ea94 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1017885.md @@ -0,0 +1,160 @@ +# Example for a Multi-Temperature Plasma + +The application of _Gas-phase Kinetics_ to non-equilibrium plasma systems +requires that the kinetics coefficients can be specified independently of the +problem or application. For example, some assumption must be made _a priori_ +about the electron-energy distribution function (`EEDF`) when specifying +electron-impact kinetics. In reality the `EEDF` will depend on the reactor +conditions, such as the local electric field magnitude or the degree of +dissociation of a molecular gas. These conditions are problem-dependent, such +that including these effects requires coupling between the kinetics-rate +determination and the `EEDF` determination. While we foresee a need in future +_Gas-phase Kinetics_ development for treatment of fundamental reaction cross- +section data, there are many systems where application of problem-independent +kinetics in plasma modeling is reasonable. Such applications include plasma +conditions where the `EEDF` is nearly Maxwellian, such as near-thermal +atmospheric-pressure plasma jets, or very low-pressure, high-electron-density +systems for microelectronics processing. + +The input file to the _Gas-phase Kinetics_ Pre-processor for a chlorine-plasma +excitation process is shown in [Example 1.3: Sample Plasma Reaction Mechanism as Read by the _Gas-phase Kinetics_ Pre-processor](pgfId-1017885.md#i94426 "Example 1.3: Sample Plasma Reaction Mechanism as Read by the Gas-phase +Kinetics Pre-processor") . As with the previous hydrogen-oxidation example, +the file first specifies the elements and species that appear in the mechanism +and then describes the reaction mechanism. Here, electrons must be specified +both as an element and as a species. The elemental composition of a +unipositive ion is that of the corresponding neutral minus one electron. This +information is given in the species thermodynamic data and will be described +further in the next section. As in the thermal system, three Arrhenius +coefficients are used by default to describe reaction rates for electron- +impact kinetics. The auxiliary keyword '`TDEP` ' on a line following the +reaction statement indicates that the reaction rate is a function of the +temperature of the species specified in the slashes following the `TDEP` +keyword. + +As shown in [Example 1.3: Sample Plasma Reaction Mechanism as Read by the _Gas-phase Kinetics_ Pre-processor](pgfId-1017885.md#i94426 "Example 1.3: Sample Plasma Reaction Mechanism as Read by the Gas-phase Kinetics Pre- processor") , most of the plasma reactions require some auxiliary information +beyond the Arrhenius coefficients to distinguish the reaction description from +the default thermal reactions. `TDEP` is one example of an auxiliary keyword +that specifies the temperature dependence of the reaction. `EXCI` is used +typically to indicate an excitation reaction. Such "reactions" are often +included to allow calculation of inelastic energy loss rates for electrons, +without requiring the user to include all excited states as new species in the +reaction mechanism. The auxiliary information following the keyword `EXCI` +represents the energy-loss per collision in electron volts. The keyword `DUP` +is included to allow multiple occurrences of reaction statements that have +different rate coefficients or different auxiliary information, but otherwise +appear identical. This is frequently necessary in the specification of +multiple excitation reactions from the same ground-state species. The use of +auxiliary keywords is described in greater detail in the [Chemkin Input Manual](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_in/chemkin_in.html) Input Manual. + +Another important aspect of the plasma reactions shown in [Example 1.3: Sample Plasma Reaction Mechanism as Read by the _Gas-phase Kinetics_ Pre- processor](pgfId-1017885.md#i94426 "Example 1.3: Sample Plasma Reaction Mechanism as Read by the Gas-phase Kinetics Pre-processor") is that they are +all specified as irreversible reactions. This is in contrast to thermal +reactions, which are usually reversible and reverse rates can be calculated +directly from species thermodynamic properties. In the case of electron +kinetics, the interactions between electrons and neutral species can be +intrinsically irreversible. While detailed balancing may be appropriate for +near-thermal plasmas, the use of Ansys Chemkin thermodynamics is not +appropriate for determining reverse rates. In such cases, the user should +explicitly supply reverse kinetic parameters, or specify a reverse path as an +additional irreversible reaction. + +**Example 1.3: Sample Plasma Reaction Mechanism as Read by the _Gas-phase +Kinetics_ Pre-processor** + + + + ELEMENTS E CL END + SPECIES E CL+ CL2+ CL- CL* CL CL2 END + REACTIONS KELVIN MOLECULES + ! reaction rates from Maxwellian EEDF + E + CL2 => E + CL2 2.5141E-02 -1.4443E+00 1.6650E+04 + TDEP/E/ !vibrational excitation + EXCI/ 0.07/ + DUP + E + CL2 => CL- + CL 5.8901E-09 -2.5619E-01 1.5834E+04 + TDEP/E/ !dissociative attachment + E + CL2 => 2CL + E 1.5356E-06 -3.4642E-01 7.0850E+04 + TDEP/E/ !dissociation + E + CL2 => E + CL2 6.3477E-06 -5.3987E-01 1.3920E+05 + TDEP/E/ !electronic excitation + EXCI/ 9.25/ + DUP + E + CL2 => CL2+ + 2E 1.1227E-04 -6.0067E-01 1.8070E+05 + TDEP/E/ !ionization + E + CL- => CL + 2E 3.1197E-06 -2.8757E-01 7.2058E+04 + TDEP/E/ !detachment + E + CL => E + CL* 1.2363E-05 -6.1356E-01 1.3297E+05 + TDEP/E/ !4s excitation + E + CL => E + CL 1.2363E-05 -6.1356E-01 1.3297E+05 + TDEP/E/ !4s excitation energy loss + EXCI/ 9.55/ + DUP + E + CL => E + CL 9.4444E-05 -7.3093E-01 1.5413E+05 + TDEP/E/ !3d excitation + EXCI/11.65/ + DUP + E + CL => CL+ + 2E 2.3736E-04 -7.0894E-01 1.8374E+05 + TDEP/E/ !ionization + E + CL* => CL+ + 2E 2.6471E-05 -4.3906E-01 6.3670E+04 + TDEP/E/ !Cl* ionization + CL- + CL2+ => CL + CL2 5.00E-08 0.0 0 + CL- + CL+ => 2CL 5.00E-08 0.0 0 + END + +Consider a simple form of the electron conservation equation for a closed +system: + +| ![](graphics/pgfId-1017950.svg) | **(1 -2)** | +| ------------------------------- | ---------- | + +where ![](graphics/eq70293795-5452-9866-0474-453739521730.svg) is the electron +molar concentration and +![](graphics/eq84267563-8249-6958-8288-169867362915.svg) the electron molar +production rate. The representation of this equation begins with _Gas-phase +Kinetics_ subroutine calls: + +**Example 1.4:_Gas-phase Kinetics_ Subroutine** + + + + CALL CKINIT(LENIWK, LENRWK, LENCWK, LINKCK, LOUT, ICKWRK, RCKWRK, CCKWRK, IFLAG) + CALL CKINDX(ICKWRK, RCKWRK, MM, KK, II, NFIT) + CALL PKINDX(ICKWRK, KEL, KKION) + CALL CKKTFL(ICKWRK, KTFL) + CALL CKWC(T, C, ICKWRK, RCKWRK, WDOT) + +As in the hydrogen-oxidation example, the first call is to the initialization +subroutine `CKINIT`. `CKINDX` provides general chemistry indices, while +`PKINDX` provides plasma-specific index information. In this case, we call +`PKINDX` to get `KEL`, the location in the species array of the electron. In +other words, there is no requirement for the species '`E` ' to be in any +particular order in the mechanism species list. `KKION` is the number of +positive and negative ions in the chemistry mechanism. The call to `CKKTFL` +initializes the species temperature flag array in the _Gas-phase Kinetics_ +workspace. Without this call, it is assumed that all species share a common +temperature, which is always the first entry in the temperature array passed +to _Gas-phase Kinetics_ in all subsequent calls. `KTFL` is a user-defined +vector that defines the locations in the temperature array that correspond to +each species temperature. This allows the application to define a different +number of temperatures in the system than the total number of species. For +example, in a two-temperature plasma, where `T(1)` is the gas temperature and +`T(2)` is the electron temperature, the user sets `KTFL(KEL) = 2`, and all +other entries are set to '`1` '. Finally, in the call to `CKWC`, `T` is the +temperature array, and `C` is the vector of species molar concentrations. The +output variable, `WDOT`, is the +![](graphics/eq22231585-5692-0452-7401-330238388594.svg) vector, where +![](graphics/eq66094508-0315-9064-8010-069988328246.svg) is the `KEL`th entry. + +* * * + +**Note:** This API does not support user-written programs or subroutines. +Developing user programs should therefore be considered only by advanced users +with appropriate programming skills. + +* * * + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1020396.md b/2026R1/chemkin_26-r1/articles/pgfId-1020396.md new file mode 100644 index 0000000000..4b6f4bb8fb --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1020396.md @@ -0,0 +1,161 @@ +# Example of Using the Surface Kinetics Pre-processor + +We illustrate the use of _Surface Kinetics_ by a simple example involving +deposition of silicon. The surface reaction mechanism is shown in [Example 1.5: Sample Reaction Mechanism as Read by the _Surface Kinetics_ Pre- processor](pgfId-1020396.md#i40383 "Example 1.5: Sample Reaction Mechanism as Read by the Surface Kinetics Pre-processor") as it appears for the input file to the _Surface Kinetics_ Pre-processor. The first two lines identify a +site type called `SILICON` that has a site density of 1.66 × 10-9 mole/cm2. +Only one species, SI(S), exists on this site type. The bulk material is +identified as SI(B), and it has a mass bulk density of 2.33 g/cm3. This is a +very simple example that has only one site type occupied by only one species +and only one pure bulk material. In general, however, an input file could +specify many different site types, each of which could be occupied by a +variety of species. Furthermore, there could be several bulk-phase mixtures +that could each be composed of several species. Examples of all these +possibilities appear in the [Chemkin Input Manual](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_in/chemkin_in.html) Input Manual. + +The reaction mechanism itself is listed next. The symbol `=>` in each reaction +expression indicates that all of the reactions are irreversible. The three +numbers following each reaction expression are its Arrhenius rate parameters ( +pre-exponential factor, temperature exponent, and activation energy). + +**Example 1.5: Sample Reaction Mechanism as Read by the _Surface Kinetics_ +Pre-processor** + + + + SITE/SILICON/ SDEN/1.66E-09/ + SI(S) + BULK SI(B) /2.33/ + + REACTIONS + + SIH4 + SI(S) =>SI(S) + SI(B) + 2H2 1.05E17 0.5 40000 + SI2H6 +2SI(S) =>2SI(S) + 2SI(B) + 3H2 4.55E26 0.5 40000 + SIH2 + SI(S) =>SI(S) + SI(B) + H2 3.9933E11 0.5 0 + SI2H2 +2SI(S) => 2SI(S) + 2SI(B) + H2 1.7299E20 0.5 0 + 2SI2H3 +4SI(S) => 4SI(S) + 4SI(B) + 3H2 6.2219E37 0.5 0 + H2SISIH2 +2SI(S) => 2SI(S) + 2SI(B) + 2H2 1.7007E20 0.5 0 + 2SI2H5 +4SI(S)=> 4SI(S) + 4SI(B) + 5H2 6.1186E37 0.5 0 + 2SIH3 +2SI(S) => 2SI(S) + 2SI(B) + 3H2 2.3659E20 0.5 0 + 2SIH +2SI(S) => 2SI(S) + 2SI(B) + H2 2.4465E20 0.5 0 + SI + SI(S) => SI(S) + SI(B) 4.1341E11 0.5 0 + H3SISIH +2SI(S) => 2SI(S) + 2SI(B) + 2H2 1.7007E20 0.5 0 + SI2 +2SI(S) => 2SI(S) + 2SI(B) 1.7607E20 0.5 0 + SI3 +3SI(S) => 3SI(S) + 3SI(B) 8.6586E28 0.5 0 + END + +All of the reactions in this mechanism have the same form: a gas-phase species +reacting on a silicon site. The reaction of silane at the surface is +illustrated in [Figure 1.4: Illustration of Gas-Phase Silane Reaction](pgfId-1020396.md#i30411 "Figure 1.4: Illustration of Gas-Phase Silane Reaction") . Each silicon-containing gas-phase species can react on an +atomic surface site, SI(S), to deposit a silicon atom as SI(B) and release +hydrogen back into the gas phase. We have included SI(S) as both a reactant +and a product to indicate that a "site" must be available at which the gas- +phase species can react. In the example, however, the surface silicon SI(S) is +distinguished from the bulk deposit SI(B) by virtue of its position as the +top-most atom at the surface. Therefore, each time a SI(S) is consumed by a +reaction the bulk layer becomes one atom thicker and the silicon atom that +just left the gas now forms the top-most surface layer, that is, SI(S). For +this mechanism, the SI(S) could have been just as well left out of the +mechanism entirely. However, if other gas-phase species had been present (say +phosphine carrying phosphorus as a dopant), these species could compete for +the available silicon sites on the surface. Thus, by writing the reactions as +we have, we have left open the possibility for other species to occupy surface +sites and thus inhibit the deposition of silicon. + +**Figure 1.4: Illustration of Gas-Phase Silane Reaction** + +![Illustration of Gas-Phase Silane Reaction](graphics/CHEMKIN_Illustr_Gas-Phase_Silane_Reaction.png) + + + +As an example of the full use of _Surface Kinetics_ , assume that the program +we are writing needs to evaluate a boundary condition concerning the energy +balance at a surface of an isothermal particle. + +The energy balance would take the following form (with the surface normal +![](graphics/eq49317123-2176-3484-4931-033635321250.svg) pointing into the +particle): + +| ![](graphics/i61143.svg) | **(1 -3)** | +| ------------------------ | ---------- | + +The dependent variables in this expression are the temperature +![](graphics/eq44571692-4145-7004-9578-559495981262.svg), gas-phase mass +fractions ![](graphics/eq06842689-6285-3940-1317-920449819165.svg) and +convective velocity ![](graphics/eq40400771-9402-2923-0067-859801334946.svg). +The surface site fractions and the bulk-species activities are also dependent +variables, but do not appear explicitly in the expression. The first term in +this equation describes thermal conduction to the surface from the gas phase. +The thermal conductivity +![](graphics/eq14861225-4879-0995-5364-035411427608.svg) would be evaluated by +a call to the _Transport_ Subroutine Library, and the temperature gradient +could be evaluated by finite differences. The second term concerns the +diffusive and convective flux of energy by gas-phase species at the surface. +The mass density ![](graphics/eq93152584-7975-3113-7550-670098777819.svg) and +the gas-phase enthalpies +![](graphics/eq75279664-2707-6194-5831-395933810193.svg) would be evaluated by +calls to the _Gas-phase Kinetics_ Subroutine Library. The gas-phase species +diffusion velocities ![](graphics/eq21591324-9935-5242-0451-561379655072.svg) +would be evaluated in terms of diffusion coefficients that are obtained from +the _Transport_ Package and finite difference approximations to the species +gradients. The first term on the right-hand side concerns the thermal +radiation to or from the surface. + +We now concentrate on the final term, which concerns the energy generated or +consumed from surface reaction. The summation is over all surface and bulk +species, and the factors in the summation are the production rate of surface +and bulk species by surface reaction, +![](graphics/eq02907090-1529-9750-1881-235928793508.svg), the species +molecular weights, ![](graphics/eq28353307-7133-1078-1979-282715205698.svg), +and the enthalpies of the surface and bulk species, +![](graphics/eq79624287-1510-6777-1481-332300794039.svg). The FORTRAN +representation of this term begins with _Surface Kinetics_ Subroutine Library +subroutine calls (the output variables are underlined to help distinguish +them): + +**Example 1.6: Example calls to the _Surface Kinetics_ Subroutine Library** + + + + CALL SKINIT(LSIWK, LSRWK, LSCWK, LINKSK, LOUT, ISKWRK, RSKWRK, CSKWRK, IFLAG) + CALL SKWT(ISKWRK, RSKWRK, WT) + CALL SKHMS(T, ISKWRK, RSKWRK, HMS) + CALL SKRAT(P, T, ACT, SDEN, ISKWRK, RSKWRK, SDOT, SITDOT) + +The complete details for these calls are explained in later chapters of this +manual; the objective here is to illustrate the relative simplicity of writing +an Ansys Chemkin program. Briefly, the first call is to the initialization +subroutine `SKINIT`, which reads the _Surface Kinetics_ Linking File created +by the _Surface Kinetics_ Pre-processor and populates the three work arrays. +`LSIWK`, `LSRWK`, and `LSCWK` are the dimensions provided by the user for the +data arrays `ISKWRK`, `RSKWRK`, and `CSKWRK`. `LINKSK` is the logical file +number of the _Surface Kinetics_ Linking File, `LOUT` is the logical file +number for printed diagnostic and error messages, and `IFLAG` is an integer +error flag. In the remaining calls, `P` and `T` are the pressure and +temperature. The array `ACT` contains the gas-phase mole fractions, the +surface site fractions, and the bulk species activities, in that order. The +output variable arrays, `HMS` and `SDOT`, correspond to the factors in the +summation from [Equation 1-3](pgfId-1020396.md#i61143 "(1–3)") , that is, +`HMS` = ![](graphics/eq19135887-8623-2438-8563-132844781676.svg), and `SDOT` = +![](graphics/eq33719021-8375-1353-5972-733423400408.svg). + +The FORTRAN representation of the summation in the last term, given by +combining the results of the above subroutine calls, is simply + +**Example 1.7: Example FORTRAN code for calculating equation terms** + + + + SUM=0.0 + DO 100 K=FIRST_SURFACE_SPECIES, LAST_BULK_SPECIES + SUM = SUM + SDOT(K)*WT(K)*HMS(K) + 100 CONTINUE + +The species indices `FIRST_SURFACE_SPECIES` and `LAST_BULK_SPECIES` are also +available from a call to the _Surface Kinetics_ Subroutine Library. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1021042.md b/2026R1/chemkin_26-r1/articles/pgfId-1021042.md new file mode 100644 index 0000000000..3e3af388e2 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1021042.md @@ -0,0 +1,19 @@ +# Thermal Diffusion + +**Table 6.5: Thermal Diffusion Subroutines** + +| Subroutine | Description | +| ---------------------------------------------------------------------- | --------------------------------------------------------------------------------------------- | +| `SUBROUTINE MCATDR (T, X, IMCWRK, RMCWRK, TDR)` | This subroutine computes the thermal diffusion ratios for the light species into the mixture. | +| `SUBROUTINE MCMCDT (P, T, X, IMCWRK, RMCWRK, ICKWRK, CKWRK, DT, COND)` | This | +subroutine computes the thermal diffusion coefficients, and mixture thermal +conductivities given the pressure, temperature, and mole fractions. + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1021250.md b/2026R1/chemkin_26-r1/articles/pgfId-1021250.md new file mode 100644 index 0000000000..e1ea0a0832 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1021250.md @@ -0,0 +1,44 @@ +# Structure and Use of the Transport Utilities + +The _Transport_ utilities must be used in conjunction with the _Gas-phase +Kinetics_ utilities. The general flow of information is depicted in [Figure 1.3: Relationships between the CHEMKIN Pre-processors and an Application](pgfId-1017373.md#i62358 "Figure 1.3: Relationships between the CHEMKIN Pre-processors and an Application") . The _Transport_ utilities can be +used with or without the _Surface Kinetics_ utilities. + +As with the _Surface Kinetics_ utilities, the _Gas-phase Kinetics_ Pre- +processor must be run prior to the _Transport_ Pre-processor. The _Transport_ +Pre-processor requires input from the Transport Database, and from the _Gas- +phase Kinetics_ Linking File. The Transport Database contains molecular +parameters for a number of species; these parameters are: The Lennard-Jones +well depth ![](graphics/eq71036551-1681-9604-2918-673011385917.svg) in +Kelvins, the Lennard-Jones collision diameter +![](graphics/eq20681490-1039-3612-7152-814451337282.svg) in Angstroms, the +dipole moment ![](graphics/eq66249785-7445-0260-8347-157091667088.svg) in +Debyes, the polarizability +![](graphics/eq00280314-3537-3805-6224-978331845878.svg) in cubic angstroms, +rotational relaxation collision number +![](graphics/eq97454377-1223-6035-1708-479487087431.svg) and an indicator +regarding the nature and geometrical configuration of the molecule. A +supplemental input file may also contain this information. The information +coming from the _Gas-phase Kinetics_ Linking File contains the species names +and molecular weights, as well as thermodynamic data. Like the _Gas-phase +Kinetics_ Pre-processor, the _Transport_ Pre-processor produces a _Transport_ +Linking File that is later needed in the _Transport_ Subroutine Library. + +Both the _Gas-phase Kinetics_ and the _Transport_ Subroutine Libraries must be +initialized before use and there is a similar initialization subroutine in +each. The _Transport_ Subroutine Library is initialized by a call to +subroutine `MCINIT`. Its purpose is to read the _Transport_ Linking File and +populate the storage arrays, allocated by the calling program, which must be +made available to all other subroutines in the library. Once initialized, any +subroutine in the library may be called from the application program. There +are just eighteen (18) subroutines contained in the Transport subroutine +library. These return pure-species, binary, and gas-mixture transport +properties, using either a mixture-averaged or full multicomponent +formulation, as described in the [Chemkin Theory Manual](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/chemkin_th.html) Theory Manual. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1021445.md b/2026R1/chemkin_26-r1/articles/pgfId-1021445.md new file mode 100644 index 0000000000..7a7330c40a --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1021445.md @@ -0,0 +1,17 @@ +# Prerequisite Skills + +We presume that a user is familiar with the rudiments of setting environment +and path variables; the basic Ansys Chemkin requirements in that regard are +adequately provided by the README files, with further extensive information +and tutorial sessions in [Chemkin Getting Started Guide](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_gs/chemkin_gs.html/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_gs/chemkin_gs.html) . It is further presumed that a user- +programmer is familiar with the fundamentals of using the compiler, linker, +and make processes of the platform. The Chemkin Application Programming +Interface documentation is not designed to provide detailed information on +those processes, only on how to use them with Chemkin programs and libraries. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1040829.md b/2026R1/chemkin_26-r1/articles/pgfId-1040829.md new file mode 100644 index 0000000000..a04f4f082c --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1040829.md @@ -0,0 +1,90 @@ +# Structure and Use of Gas-phase Kinetics Utilities + +The _Gas-phase Kinetics_ utilities are composed of the following: + + * _Gas-phase Kinetics_ Pre-processor (a program) + + * _Gas-phase Kinetics_ Subroutine Library (a set of FORTRAN subroutines) + +The Gas-phase Kinetics Pre-processor is included as part of the Pre-processor +utility accessed from the Ansys Chemkin interface and described in [Chemkin Getting Started Guide](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_gs/chemkin_gs.html) . However, the Gas-phase +Kinetics Pre-processor can also be run independently, through the command- +line, as described in [Chemkin Getting Started Guide](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_gs/chemkin_gs.html) . In either case, the Pre-processor must +be run in order to produce a gas-phase Linking File, which contains all of the +chemistry-specific information for the gas-phase−kinetics portion of the +particular Chemistry Set identified for the problem. This Linking File must be +available to any Chemkin application program that makes calls to the Gas-phase +Kinetics Subroutine Library. The Pre-processor program must therefore be run +prior to running a Chemkin application program or Reactor Model. + +The general structure of the _Gas-phase Kinetics_ utilities and the +relationship between the utilities and an Ansys Chemkin application program +are shown in [Figure 1.1: Schematic representing the relationship of Gas-phase Kinetics and the Application.](pgfId-1040829.md#i32598 "Figure 1.1: Schematic representing the relationship of Gas-phase Kinetics and the Application.") . The _Gas-phase Kinetics_ Pre-processor is a program that +reads a symbolic description of a gas-phase reaction mechanism and then +extracts the needed thermodynamic data for each species involved in that +mechanism from a Thermodynamic Database file. The primary output from the Pre- +processor is the _Gas-phase Kinetics_ Linking File. This file contains +information that contains all required information about the elements, +species, and reactions in the user's mechanism. However, users should not +attempt to read this file directly, as the structure changes from version to +version of Chemkin utilities. Instead, calls to initialization routines within +the _Gas-phase Kinetics_ Library facilitate extraction of the data stored. + +* * * + +**Note:** If any errors occur during pre-processing, the error state will be +reflected in the Linking File and when called, the `CKINIT` will print a +diagnostic message and execution will stop. + +* * * + +The **Linking File** is read by an initialization subroutine, CKINIT. The +purpose of the initialization is to populate three data arrays (one integer, +one floating point, and one character data type) in stored memory within your +program. These arrays are then passed into other subroutines in the _Gas-phase +Kinetics_ Subroutine Library, for internal use within the subroutines. These +arrays should not be modified within your program once they have been +initialized. Before the initialization routine is called, your application +program must first allocate the memory for the three arrays. A call into the +subroutine library can be made to retrieve the needed dimensions for this +purpose. The _Gas-phase Kinetics_ subroutine to perform derived calculations +or extract chemistry-specific information during the simulation. + +* * * + +**Note:** Although the Linking File is a formatted file (for example, +_chem.asc)_ , user programs should not attempt to read this file directly; +instead, always use the Ansys Chemkin initialization routine `CKINIT` to +extract information from it. The format of the file will change from version +to version, but the subroutine library calling lists are static. + +* * * + +If you are writing your own application that describes a particular set of +governing equations, the programming required is highly leveraged by the Ansys +Chemkin subroutine libraries. For example, through a simple call to _Gas-phase +Kinetics_ subroutines the program can obtain chemistry-specific terms in the +governing equations that relate to equations of state, chemical production, +and thermodynamics. You can then focus on the form of the equations and the +solver methodology, letting Chemkin subroutines handle all of the chemistry- +specific part of the problem definition. + +The _Gas-phase Kinetics_ Subroutine Library has over 150 subroutines that +return information on elements, species, reactions, equations of state, +thermodynamic properties, and chemical production rates. Generally, the input +to these routines will be the state of the gas--pressure or density, +temperature(s), and species composition. + +**Figure 1.1: Schematic representing the relationship of Gas-phase Kinetics +and the Application.** + +![Schematic representing the relationship of Gas-phase Kinetics and the Application.](graphics/CHEMKIN_relationship_Gas-phase_Kinetics_and_Application.png) + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1062650.md b/2026R1/chemkin_26-r1/articles/pgfId-1062650.md new file mode 100644 index 0000000000..a97bb940c7 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1062650.md @@ -0,0 +1,39 @@ +# Mnemonics + +There are seventeen user-callable subroutines in the package. All subroutine +names begin with `MC`. The following letter is either an `S`, an `A`, or an +`M`, indicating whether pure species (`S`), mixture-averaged (`A`), or +multicomponent (`M`) properties are returned. The remaining letters indicate +which property is returned: `CON` for conductivity, `VIS` for viscosity, `DIF` +for diffusion coefficients, `CDT` for both conductivity and thermal diffusion +coefficients, and `TDR` for the thermal diffusion ratios. + +A call to the initialization subroutine `MCINIT` must precede any other call. +This subroutine is normally called only once at the beginning of a problem; it +reads the Linking File and sets up the internal storage and working space - +arrays `IMCWRK` and `RMCWRK`. These arrays are required input to all other +subroutines in the library. Besides `MCINIT` there is only one other non- +property subroutine, called `MCPRAM` ; it is used to return the arrays of +molecular parameters that came from the database for the species in the +problem. All other subroutines are used to compute either viscosities, thermal +conductivities, or diffusion coefficients. They may be called to return pure +species properties, mixture-averaged properties, or multicomponent properties. + +In the input to all subroutines, the state of the gas is specified by the +pressure in dynes per square centimeter, temperature in Kelvin, and the +species mole fractions. The properties are returned in standard CGS units. The +order of vector information, such as the vector of mole fractions or pure +species viscosities, is the same as the order declared in the _Gas-phase +Kinetics_ Pre-processor input. + +Here we provide a short description of each subroutine according to its +function. In [Alphabetical Listing of the Transport Subroutine Library](i13005api_list_transportlib.md "Chapter 9: Alphabetical Listing of the Transport Subroutine Library") we list the subroutines in alphabetical +order and provide a longer description of each subroutine including call-list +details. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1062725api.md b/2026R1/chemkin_26-r1/articles/pgfId-1062725api.md new file mode 100644 index 0000000000..901c1906ce --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1062725api.md @@ -0,0 +1,27 @@ +# Initialization and Parameters + +**Table 6.1: Initialization and Parameter Subroutines** + +| Subroutine | Description | +| ------------------------------------------------------------------ | ----------- | +| `SUBROUTINE MCINIT (LINKMC, LOUT, LENIMC, LENRMC, IMCWRK, RMCWRK)` | This | +subroutine serves to read the Linking File from the fitting code and to create +the internal storage and work arrays, IMCWRK(*) and RMCWRK (*). MCINIT must be +called before any other _Transport_ subroutine is called. It must be called +after the _Gas-phase Kinetics_ package is initialized. +`SUBROUTINE MCPRAM (IMCWRK, RMCWRK EPS, SIG, DIP, POL, ZROT, NLIN)`| This +subroutine is called to return the arrays of molecular parameters as read from +the Transport database. +`SUBROUTINE MCPNT (LSAVE, LOUT, NPOINT, V, P, LI, LR, IERR)` | Reads from a binary file information about a _Transport_ linkfile, pointers for the _Transport_ Library, and returns lengths of work arrays. +`SUBROUTINE MCSAVE (LOUT, LSAVE, IMCWRK, RMCWRK)` | Writes to a binary file information about a _Transport_ linkfile, pointers for the _Transport_ library, and _Transport_ work arrays. +`SUBROUTINE MCREWR (LINKMC, LOUT, IMCWRK, RMCWRK, IFLAG)` | This subroutine writes a new the _Transport_ linkfile from the data stored in the integer and real work arrays, IMCWRK(*) and RMCWRK(*). +`SUBROUTINE MCLEN (LINKMC, LOUT, LI, LR, IFLAG)` | Returns the lengths required for work arrays. + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1062756.md b/2026R1/chemkin_26-r1/articles/pgfId-1062756.md new file mode 100644 index 0000000000..2a8e5f7a38 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1062756.md @@ -0,0 +1,18 @@ +# Viscosity + +**Table 6.2: Viscosity Subroutines** + +| Subroutine | Description | +| --------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `SUBROUTINE MCSVIS (T, RMCWRK, VIS)` | This subroutine computes the array of pure species viscosities given the temperature. | +| `SUBROUTINE MCAVIS (T, X, RMCWRK, VISMIX)` | This subroutine computes the mixture viscosity given the temperature and the species mole fractions. It uses modifications of the Wilke semi-empirical formulas. | +| `SUBROUTINE MCCVEX (K, KDIM, RCKWRK, COFVIS)` | Gets or puts values of the fitting coefficients for the polynomial fits to species viscosity. | + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1062795.md b/2026R1/chemkin_26-r1/articles/pgfId-1062795.md new file mode 100644 index 0000000000..ba7a6c10ce --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1062795.md @@ -0,0 +1,24 @@ +# Conductivity + +**Table 6.3: Conductivity Subroutines** + +| Subroutine | Description | +| ------------------------------------ | --------------------------------------- | +| `SUBROUTINE MCSCON (T, RMCWRK, CON)` | This subroutine computes the array pure | +species conductivities given the temperature. +`SUBROUTINE MCACON (T, X, RMCWRK, CONMIX)`| This subroutine computes the +mixture thermal conductivity given the temperature and the species mole +fractions. +`SUBROUTINE MCMCDT (P, T, X, IMCWRK, RMCWRK, ICKWRK, CKWRK, DT, COND)`| This +subroutine computes the thermal diffusion coefficients and mixture thermal +conductivities given the pressure, temperature, and mole fractions. +`SUBROUTINE MCCCEX (K, KDIM, RCKWRK, COFCON)` | Gets or puts values of the fitting coefficients for the polynomial fits to species conductivity. + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1062833.md b/2026R1/chemkin_26-r1/articles/pgfId-1062833.md new file mode 100644 index 0000000000..ac61f6bb01 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1062833.md @@ -0,0 +1,21 @@ +# Diffusion Coefficients + +**Table 6.4: Diffusion Coefficients Subroutines** + +| Subroutine | Description | +| --------------------------------------------- | ---------------------------------------------------------------------------------------------- | +| `SUBROUTINE MCSDIF (P, T, KDIM, RMCWRK, DJK)` | This subroutine computes the binary diffusion coefficients given the pressure and temperature. | +| `SUBROUTINE MCADIF (P, T, X, RMCWRK, D)` | This subroutine computes the | +mixture-averaged diffusion coefficients given the pressure, temperature, and +species mole fractions. +`SUBROUTINE MCMDIF (P, T, X, KDIM, IMCWRK, RMCWRK, D)` | This subroutine computes the ordinary multicomponent diffusion coefficients given the pressure, temperature, and mole fractions. +`SUBROUTINE MCCDEX (K, KDIM, RCKWRK, COFDIF)` | Gets or puts values of the fitting coefficients for the polynomial fits to species binary diffusion coefficients. + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1066782.md b/2026R1/chemkin_26-r1/articles/pgfId-1066782.md new file mode 100644 index 0000000000..59a5d07df7 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1066782.md @@ -0,0 +1,51 @@ +# Mnemonics + +There are some good rules of thumb that explain the subroutine naming +conventions. All subroutine names (with the exception of `PKINDX`) begin with +the letters `CK` so that _Gas-phase Kinetics_ subroutines are easily +recognized and so that they are likely different from any user subroutine +names. The four remaining letters identify the purpose of the subroutine: The +first one or two usually refer to the variable that is being computed; the +last letters refer to either the input variables or the units. + +State variables are denoted by `P` (pressure), `T` (temperature), `Y` ( mass +fraction), `X` ( mole fraction), and `C` ( molar concentration). Thermodynamic +properties are referred to by `CP` and `CV` (Specific heats), `H` (enthalpy), +`S` (entropy), `U` (internal energy), `G` (Gibbs free energy), and `A` +(Helmholtz free energy). The thermodynamic property subroutines may be called +to return properties in mass units, denoted by `MS` or `S` as the last +letter(s), or in molar units, denoted by `ML` or `L` as the last letter(s). +The letter `B` (for the bar as in +![](graphics/eq73873444-8841-3181-0623-555850045825.svg)) in a thermodynamic +property subroutine name indicates that it returns mean mixture properties. + +Subroutines that return net chemical production rates have a `W` (for +![](graphics/eq77412692-1043-8389-0663-974839952253.svg)) following the `CK`, +and routines that return creation and destruction rates or creation rates and +destruction times have a `CD` or a `CT`, respectively, following the `CK`. +Rate-of-progress variables are denoted by `Q` and equilibrium constants by +`EQ`. + +The mnemonics for the input and output variable names in the subroutine calls +are roughly the same as for the subroutine names. + +In most cases the subroutines are backwards compatible with previous versions +of _Chemkin_. However, there are a few cases where either the functionality is +different or the call list has changed, but we have kept the same subroutine +name. These are annotated with an asterisk(s). + +* * * + +**Note:** All routines for which the call list or functionality may have +changed from the original version of _Chemkin_ are identified by an asterisk. +Subroutines whose call lists have changed since later versions, known as +_Chemkin_ II, are indicated by a double asterisk. + +* * * + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1066867.md b/2026R1/chemkin_26-r1/articles/pgfId-1066867.md new file mode 100644 index 0000000000..9a96faed35 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1066867.md @@ -0,0 +1,24 @@ +# Initialization + +**Table 4.1: Initialization Subroutines** + +| Subroutine | Description | +| ------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `SUBROUTINE CKINDX (ICKWRK, RCKWRK, MM, KK, II, NFIT)*` | Returns a group of indices defining the size of the particular reaction mechanism. | +| `SUBROUTINE CKINIT (LENICK, LENRCK, LENCCK, LINC, LOUT, ICKWRK, RCKWRK, CCKWRK, IFLAG)**` | Reads the linkfile and creates the internal work arrays ICKWRK, RCKWRK and CCKWRK. CKINIT must be called before any other _Gas-phase Kinetics_ subroutine can be used, as the work arrays must be available as their input. | +| `SUBROUTINE CKKTFL (ICKWRK, KTFL)` | Allows the user to assign a location in the temperature array to use for each gas-phase species. | +| `SUBROUTINE CKLEN (LINC, LOUT, LENI, LENR, LENC, IFLAG)` | Returns the lengths required for work arrays. | +| `SUBROUTINE CKLEN2 (LINC, LOUT, LI, LR, LC, MM, KK, II, MAXSP, MAXTP, MAXTB, MAXORD, KKI, IFLAG)` | Returns the lengths required for work arrays, as well as mechanism size information for memory allocation. | +| `SUBROUTINE CKPNT (LSAVE, LOUT, NPOINT, VERS, PREC, LENI, LENR, LENC, KERR)` | Reads from a file information about a _Gas-phase Kinetics_ linkfile, and pointers for work arrays. | +| `SUBROUTINE CKREWR (LINC, LOUT, ICKWRK, RCKWRK, CCKWRK, IFLAG)` | Rewrites a new linkfile from the data stored in ICKWRK, RCKWRK and CCKWRK. | +| `SUBROUTINE CKSAVE (LOUT, LSAVE, ICKWRK, RCKWRK, CCKWRK)` | Writes to a binary file information about a _Gas-phase Kinetics_ linkfile, pointers for the _Gas-phase Kinetics_ Subroutine Library, and _Gas-phase Kinetics_ work arrays. | +| `SUBROUTINE PKINDX (ICKWRK, KELECT, KKION)` | Returns plasma indices for the particular reaction mechanism. | + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1066901.md b/2026R1/chemkin_26-r1/articles/pgfId-1066901.md new file mode 100644 index 0000000000..397bc87c73 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1066901.md @@ -0,0 +1,19 @@ +# Information About Elements + +**Table 4.2: Information about Elements Subroutines** + +| Subroutine | Description | +| ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `REAL FUNCTION CKATOM (ENAME)` | Returns atomic weight, given character-string element name. | +| `SUBROUTINE CKAWT (ICKWRK, RCKWRK, AWT)` | Returns the atomic weights of the elements. | +| `SUBROUTINE CKCOMP (IST, IRAY, II, I)*` | Returns the index of an element of a reference character string array which corresponds to a character string; leading and trailing blanks are ignored. | +| `SUBROUTINE CKSYME (CCKWRK, LOUT, ENAME, KERR)*` | Returns the character strings of element names. | + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1066953.md b/2026R1/chemkin_26-r1/articles/pgfId-1066953.md new file mode 100644 index 0000000000..f1bc136817 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1066953.md @@ -0,0 +1,22 @@ +# Information About Species + +**Table 4.3: Information about Species Subroutines** + +| Subroutine | Description | +| ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `SUBROUTINE CKCHRG (ICKWRK, RCKWRK, KCHARG)` | Returns the electronic charges of the species. | +| `SUBROUTINE CKCOMP (IST, IRAY, II, I)*` | Returns the index of an element of a reference character string array which corresponds to a character string; leading and trailing blanks are ignored. | +| `SUBROUTINE CKION (ICKWRK, KION)` | Returns the ion species indices. | +| `SUBROUTINE CKNCF (MDIM, ICKWRK, RCKWRK, NCF)` | Returns the elemental composition of the species. | +| `SUBROUTINE CKPHAZ (ICKWRK, RCKWRK, KPHASE)` | Returns a set of flags indicating phases of the species | +| `SUBROUTINE CKSYMS (CCKWRK, LOUT, KNAME, KERR)*` | Returns the character strings of species names. | +| `SUBROUTINE CKWT (ICKWRK, RCKWRK, WT)` | Returns the molecular weights of the species. | + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1067107.md b/2026R1/chemkin_26-r1/articles/pgfId-1067107.md new file mode 100644 index 0000000000..a7494a7ef9 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1067107.md @@ -0,0 +1,39 @@ +# Information About Reactions + +**Table 4.4: Information about Reactions Subroutines[a]** + +| Subroutine | Description | +| ----------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `SUBROUTINE CKABE (ICKWRK, RCKWRK, RA, RB, RE)` | Returns the Arrhenius coefficients of the reactions; see [Equation 3-5](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075229.html#i71194) . | +| `SUBROUTINE CKFAL (NDIM, ICKWRK, RCKWRK, IFOP, IFLO, KFAL, FPAR)` | Returns a set of flags indicating whether a reaction has pressure- dependent behavior and an array of parameters. | +| `SUBROUTINE CKFALP (P, T, X, ICKWRK, RCKWRK, I, RKLOW, CTB, PR, FC, PCOR)` | Returns details concerning the reaction rate constant for pressure-dependent reactions. | +| `SUBROUTINE CKHRX (I, HML, ICKWRK, RCKWRK, HRXI)` | Returns the molar heat of reaction I. | +| `SUBROUTINE CKIEXC (ICKWRK, RCKWRK, IEXC, EEXC)` | Returns a set of flags indicating whether the reactions are excitation reactions and, if so, the energy loss per event in eV. | +| `SUBROUTINE CKIMOM (ICKWRK, IMOM)` | Returns a set of flags indicating whether the reactions are electron momentum-transfer collision frequencies and, if so, the index of the species with which the electron collides. | +| `SUBROUTINE CKINU (I, NDIM, ICKWRK, RCKWRK, NSPEC, KI, NU)` | Returns a count of species in a reaction, and their indices and stoichiometric coefficients; see [Equation 3-3](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075229.html#i44415) . | +| `SUBROUTINE CKIORD (IDIM, KDIM, ICKWRK, RCKWRK, NIORD, IORD, FORD, RORD)` | Returns the count and indices of reactions with modified species order and the order values for the species. | +| `SUBROUTINE CKIREV (IR, ICKWRK, RCKWRK, IREV, RAR, RBR, RER)` | Returns an integer flag to indicate whether reaction IR has an explicitly assigned reverse rate constant. It also returns the reverse Arrhenius expression values for reaction IR, if it was explicitly assigned in the _Gas-phase Kinetics_ Pre-processor. If reverse Arrhenius values were not explicitly assigned, RAR, RBR and RER will be zero. | +| `SUBROUTINE CKIRNU (IDIM, NDIM, ICKWRK, RCKWRK, NIRNU, IRNU, NSPEC, KI, RNU)` | Returns the count and indices of reactions with real stoichiometric coefficients, counts of species in the reactions, and the species indices and coefficients; see [Equation 3-3](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075229.html#i44415) . | +| `SUBROUTINE CKITDE (ICKWRK, RCKWRK, ITDE)` | Returns a set of flags indicating whether the reactions are non-thermal, and if so, returns the index of the species on which the reaction depends. | +| `SUBROUTINE CKITR (ICKWRK, RCKWRK, ITHB, IREV)` | Returns a set of flags indicating whether the reactions are reversible or whether they contain arbitrary third bodies. | +| `SUBROUTINE CKIUQ (ICKWRK, RCKWRK, IQUSR)` | Returns a set of flags indicating whether the reactions are user-modify rate-of-progress reactions, and if so, the user-modify type. | +| `SUBROUTINE CKIXSM (ICKWRK, IXSM, IXSK)` | Returns a set of flags indicating whether the reactions are ion momentum-transfer cross sections. | +| `SUBROUTINE CKKUW (ICKWRK, KWUSR)` | Returns a set of flags indicating whether the species are user-modify rate-of-production species, and if so, the user-modify type. | +| `SUBROUTINE CKNU (KDIM, ICKWRK, RCKWRK, NUKI)` | Returns the stoichiometric coefficients of the reactions; see [Equation 3-3](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075229.html#i44415) . | +| `SUBROUTINE CKNUF (KDIM, ICKWRK, RCKWRK, NUFKI)` | Returns the forward stoichiometric coefficients for reactions; by definition, reactants' coefficients are negative; see [Equation 3-3](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075229.html#i44415) . Contrast this subroutine with subroutine CKNU, which returns the net stoichiometric coefficients for a reaction. | +| `SUBROUTINE CKRAEX (I, RCKWRK, RA)*` | Get/put the Pre-exponential coefficient of the _i_ th reaction | +| `SUBROUTINE CKSYMR (I, LOUT, ICKWRK, RCKWRK, CCKWRK, LT, ISTR, KERR)*` | Returns a character string which describes the _i_ th reaction, and the effective length of the character string. | +| `SUBROUTINE CKTHB (KDIM, ICKWRK, RCKWRK, AKI)` | Returns matrix of enhanced third body coefficients; see [Equation 3-19](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1062725.html#i73167) . | +| `SUBROUTINE CKWL (ICKWRK, RCKWRK, WL)` | Returns a set of flags providing information on the wave length of photon radiation. | + +[a] Where appropriate, the description refers to an equation number in +[Chemkin Theory Manual](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/chemkin_th.html) . + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1067123api.md b/2026R1/chemkin_26-r1/articles/pgfId-1067123api.md new file mode 100644 index 0000000000..e3c252e34b --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1067123api.md @@ -0,0 +1,16 @@ +# Gas Constants and Units + +**Table 4.5: Gas Constant and Units Subroutines** + +| Subroutine | Description | +| ----------------------------------------------- | ---------------------------------------------------------------------------- | +| `SUBROUTINE CKRP (ICKWRK, RCKWRK, RU, RUC, PA)` | Returns universal gas constants and the pressure of one standard atmosphere. | + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1067294.md b/2026R1/chemkin_26-r1/articles/pgfId-1067294.md new file mode 100644 index 0000000000..9abb20a277 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1067294.md @@ -0,0 +1,35 @@ +# Equations of State and Mole-Mass Conversions + +**Table 4.6: Equations of State and Mole-Mass Conversions Subroutines[a]** + +| Subroutine | Description | +| -------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `SUBROUTINE CKMMWC (C, ICKWRK, RCKWRK, WTM)` | Returns the mean molecular weight of the gas mixture given molar concentrations; see [Equation 2-9](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/i92220.html#i29051) . | +| `SUBROUTINE CKMMWX (X, ICKWRK, RCKWRK, WTM)` | Returns the mean molecular weight of the gas mixture given mole fractions; see [Equation 2-8](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/i92220.html#i28883) . | +| `SUBROUTINE CKMMWY (Y, ICKWRK, RCKWRK, WTM)` | Returns the mean molecular weight of the gas mixture given mass fractions; see [Equation 2-7](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/i92220.html#i88404) . | +| `SUBROUTINE CKPC (T, C, ICKWRK, RCKWRK, P)` | Returns the pressure of the gas mixture given temperature(s) and molar concentrations; see [Equation 2-5](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/i92220.html#i83323) . | +| `SUBROUTINE CKPX (RHO, T, X, ICKWRK, RCKWRK, P)` | Returns the pressure of the gas mixture given mass density, temperature(s) and mole fractions; see [Equation 2-5](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/i92220.html#i83323) . | +| `SUBROUTINE CKPY (RHO, T, Y, ICKWRK, RCKWRK, P)` | Returns the pressure of the gas mixture given mass density, temperature(s) and mass fractions; see [Equation 2-5](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/i92220.html#i83323) . | +| `SUBROUTINE CKRHOC (P, T, C, ICKWRK, RCKWRK, RHO)` | Returns the mass density of the gas mixture given pressure, temperature(s) and molar concentrations; see [Equation 2-6](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/i92220.html#i39928) . | +| `SUBROUTINE CKRHOX (P, T, X, ICKWRK, RCKWRK, RHO)` | Returns the mass density of the gas mixture given pressure, temperature(s) and mole fractions; see [Equation 2-6](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/i92220.html#i39928) . | +| `SUBROUTINE CKRHOY (P, T, Y, ICKWRK, RCKWRK, RHO)` | Returns the mass density of the gas mixture given pressure, temperature(s) and mass fractions; see [Equation 2-6](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/i92220.html#i39928) . | +| `SUBROUTINE CKCTX (C, ICKWRK, RCKWRK, X)` | Returns the mole fractions given molar concentrations; see [Equation 2-17](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075332.html#i85573) . | +| `SUBROUTINE CKCTY (C, ICKWRK, RCKWRK, Y)` | Returns the mass fractions given molar concentrations; see [Equation 2-16](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075325.html#i95737) . | +| `SUBROUTINE CKXTCP (P, T, X, ICKWRK, RCKWRK, C)` | Returns the molar concentrations given pressure, temperature(s) and mole fractions; see [Equation 2-14](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075313.html#i34169) . | +| `SUBROUTINE CKXTCR (RHO, T, X, ICKWRK, RCKWRK, C)` | Returns the molar concentrations given mass density, temperature(s), and mole fractions; see [Equation 2-15](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075313.html#i95185) . | +| `SUBROUTINE CKXTY (X, ICKWRK, RCKWRK, Y)` | Returns the mass fractions given mole fractions; see [Equation 2-13](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075306.html#i49933) . | +| `SUBROUTINE CKYTCP (P, T, Y, ICKWRK, RCKWRK, C)` | Returns the molar concentrations given pressure, temperature(s) and mass fractions; see [Equation 2-11](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075294.html#i73590) . | +| `SUBROUTINE CKYTCR (RHO,T, Y, ICKWRK, RCKWRK, C)` | Returns the molar concentrations given mass density, temperature(s) sand mass fractions; see [Equation 2-12](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075294.html#i82753) . | +| `SUBROUTINE CKYTX (Y, ICKWRK, RCKWRK, X)` | Returns the mole fractions given mass fractions; see [Equation 2-10](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075287.html#i29580) . | + +[a] Where appropriate, the description refers to an equation number in +[Chemkin Theory Manual](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/chemkin_th.html) . + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1067361.md b/2026R1/chemkin_26-r1/articles/pgfId-1067361.md new file mode 100644 index 0000000000..112276eb09 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1067361.md @@ -0,0 +1,25 @@ +# Thermodynamic Properties (Nondimensional) + +**Table 4.7: Thermodynamic Properties (Nondimensional) Subroutines[a]** + +| Subroutine | Description | +| --------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `SUBROUTINE CKATHM (NDIM1, NDIM2, ICKWRK, RCKWRK, MAXTP, NT, TMP, A)` | Returns the coefficients of the fits for thermodynamic properties of species; see [Equation 2-29](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1116264.html#i18868) through [Equation 2-31](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1116264.html#i59672) . | +| `SUBROUTINE CKCPOR (T, ICKWRK, RCKWRK, CPOR)` | Returns the nondimensional specific heats at constant pressure; see [Equation 2-29](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1116264.html#i18868) . | +| `SUBROUTINE CKHORT (T, ICKWRK, RCKWRK, HORT)` | Returns the nondimensional enthalpies; see [Equation 2-30](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1116264.html#i57749) . | +| `SUBROUTINE CKMXTP (ICKWRK, MAXTP)` | Returns the maximum number of temperatures used in fitting the thermodynamic properties of the species. | +| `SUBROUTINE CKRHEX (K, RCKWRK, A6)` | Returns an array of the sixth thermodynamic polynomial coefficients for a species, or changes their value, depending on the sign of K. | +| `SUBROUTINE CKSMH (T, ICKWRK, RCKWRK, SMH)*` | Returns the array of entropies minus enthalpies for species. It is normally not called directly by the user. | +| `SUBROUTINE CKSOR (T, ICKWRK, RCKWRK, SOR)` | Returns the nondimensional entropies; see [Equation 2-31](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1116264.html#i59672) . | + +[a] Where appropriate, the description refers to an equation number in +[Chemkin Theory Manual](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/chemkin_th.html) . + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1067446.md b/2026R1/chemkin_26-r1/articles/pgfId-1067446.md new file mode 100644 index 0000000000..f9c296900c --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1067446.md @@ -0,0 +1,25 @@ +# Thermodynamic Properties (Mass Units) + +**Table 4.8: Thermodynamic Properties (Mass Units) Subroutines[a]** + +| Subroutine | Description | +| --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------ | +| `SUBROUTINE CKAMS (T, ICKWRK, RCKWRK, AMS)` | Returns the standard state Helmholtz free energies in mass units; see [Equation 2-42](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1116840.html#i55357) . | +| `SUBROUTINE CKCPMS (T, ICKWRK, RCKWRK, CPMS)` | Returns the specific heats at constant pressure in mass units; see [Equation 2-36](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1116840.html#i56436) . | +| `SUBROUTINE CKCVMS (T, ICKWRK, RCKWRK, CVMS)` | Returns the specific heats at constant volume in mass units; see [Equation 2-39](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1116840.html#i63774) . | +| `SUBROUTINE CKGMS (T, ICKWRK, RCKWRK, GMS)` | Returns the standard state Gibbs free energies in mass units; see [Equation 2-36](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1116840.html#i56436) . | +| `SUBROUTINE CKHMS (T, ICKWRK, RCKWRK, HMS)` | Returns the enthalpies in mass units; see [Equation 2-37](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1116840.html#i20354) . | +| `SUBROUTINE CKSMS (T, ICKWRK, RCKWRK, SMS)` | Returns the standard state entropies in mass units; see [Equation 2-38](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1116840.html#i54754) . | +| `SUBROUTINE CKUMS (T, ICKWRK, RCKWRK, UMS)` | Returns the internal energies in mass units; see [Equation 2-40](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1116840.html#i20871) . | + +[a] Where appropriate, the description refers to an equation number in +[Chemkin Theory Manual](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/chemkin_th.html) . + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1067510.md b/2026R1/chemkin_26-r1/articles/pgfId-1067510.md new file mode 100644 index 0000000000..87951ae3f4 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1067510.md @@ -0,0 +1,25 @@ +# Thermodynamic Properties (Molar Units) + +**Table 4.9: Thermodynamic Properties (Molar Units) Subroutines[a]** + +| Subroutine | Description | +| --------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | +| `SUBROUTINE CKAML (T, ICKWRK, RCKWRK, AML)` | Returns the standard state Helmholtz free energies in molar units; see [Equation 2-35](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1174322.html#i65292) . | +| `SUBROUTINE CKCPML (T, ICKWRK, RCKWRK, CPML)` | Returns the specific heats at constant pressure in molar units. | +| `SUBROUTINE CKCVML (T, ICKWRK, RCKWRK, CVML)` | Returns the specific heats in constant volume in molar units; see [Equation 2-32](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1174322.html#i12950) . | +| `SUBROUTINE CKGML (T, ICKWRK, RCKWRK, GML)` | Returns the standard state Gibbs free energies in molar units; see [Equation 2-34](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1174322.html#i81341) . | +| `SUBROUTINE CKHML (T, ICKWRK, RCKWRK, HML)` | Returns the enthalpies in molar units. | +| `SUBROUTINE CKSML (T, ICKWRK, RCKWRK, SML)` | Returns the standard state entropies in molar units. | +| `SUBROUTINE CKUML (T, ICKWRK, RCKWRK, UML)` | Returns the internal energies in molar units; see [Equation 2-33](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1174322.html#i65952) . | + +[a] Where appropriate, the description refers to an equation number in +[Chemkin Theory Manual](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/chemkin_th.html) . + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1067584.md b/2026R1/chemkin_26-r1/articles/pgfId-1067584.md new file mode 100644 index 0000000000..4c4f2b0fd5 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1067584.md @@ -0,0 +1,25 @@ +# Mean Thermodynamic Properties (Mass Units) + +**Table 4.10: Mean Thermodynamic Properties (Mass Units) Subroutines[a]** + +| Subroutine | Description | +| ---------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `SUBROUTINE CKABMS (P, T, Y, ICKWRK, RCKWRK, ABMS)*` | Returns the mean Helmholtz free energy of the mixture in mass units given pressure, temperature(s) and mass fractions; see [Equation 2-57](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1116238.html#i79378e) . | +| `SUBROUTINE CKCPBS (T, Y, ICKWRK, RCKWRK, CPBMS)` | Returns the mean specific heat at constant pressure; see [Equation 2-44](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1116238.html#i57588) . | +| `SUBROUTINE CKCVBS (T, Y, ICKWRK, RCKWRK, CVBMS)` | Returns the mean specific heat at constant volume in mass units; see [Equation 2-46](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1116238.html#i59175) . | +| `SUBROUTINE CKGBMS (P, T, Y, ICKWRK, RCKWRK, GBMS)*` | Returns the mean Gibbs free energy of the mixture in mass units given pressure, temperature(s), and mass fractions; see [Equation 2-55](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1116238.html#i91617) . | +| `SUBROUTINE CKHBMS (T, Y, ICKWRK, RCKWRK, HBMS)` | Returns the mean enthalpy of the mixture in mass units; see [Equation 2-48](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1116238.html#i45291) . | +| `SUBROUTINE CKSBMS (P, T, Y, ICKWRK, RCKWRK, SBMS)*` | Returns the mean entropy of the mixture in mass units given pressure, temperature(s) and mass fractions; see [Equation 2-53](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1116238.html#i67018) . | +| `SUBROUTINE CKUBMS (T, Y, ICKWRK, RCKWRK, UBMS)` | Returns the mean internal energy of the mixture in mass units; see [Equation 2-50](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1116238.html#i65954) . | + +[a] Where appropriate, the description refers to an equation number in +[Chemkin Theory Manual](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/chemkin_th.html) . + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1067658.md b/2026R1/chemkin_26-r1/articles/pgfId-1067658.md new file mode 100644 index 0000000000..f71bc249c7 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1067658.md @@ -0,0 +1,25 @@ +# Mean Thermodynamic Properties (Molar Units) + +**Table 4.11: Mean Thermodynamic Properties (Molar Units) Subroutines[a]** + +| Subroutine | Description | +| ---------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `SUBROUTINE CKABML (P, T, X, ICKWRK, RCKWRK, ABML)*` | Returns the Helmholtz free energy of the mixture in molar units given pressure, temperature(s), and mole fractions; see [Equation 2-56](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1116238.html#i73934) . | +| `SUBROUTINE CKCPBL (T, X, ICKWRK, RCKWRK, CPBML)` | Returns the mean specific heat at constant pressure in molar units; see [Equation 2-43](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1116238.html#i86374) . | +| `SUBROUTINE CKCVBL (T, X, ICKWRK, RCKWRK, CVBML)` | Returns the mean specific heat at constant volume in molar units; see [Equation 2-45](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1116238.html#i46488) . | +| `SUBROUTINE CKGBML (P, T, X, ICKWRK, RCKWRK, GBML)*` | Returns the mean Gibbs free energy of the mixture in molar units given pressure, temperature(s) and mole fractions; see [Equation 2-54](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1116238.html#i39137) . | +| `SUBROUTINE CKHBML (T, X, ICKWRK, RCKWRK, HBML)` | Returns the mean enthalpy of the mixture in molar units; see [Equation 2-47](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1116238.html#i27761) . | +| `SUBROUTINE CKSBML (P, T, X, ICKWRK, RCKWRK, SBML)*` | Returns the mean entropy of the mixture in molar units given pressure, temperature(s) and mole fractions; see [Equation 2-52](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1116238.html#i49244) . | +| `SUBROUTINE CKUBML (T, X, ICKWRK, RCKWRK, UBML)` | Returns the mean internal energy of the mixture in molar units; see [Equation 2-49](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1116238.html#i40745) . | + +[a] Where appropriate, the description refers to an equation number in +[Chemkin Theory Manual](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/chemkin_th.html) . + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1068000.md b/2026R1/chemkin_26-r1/articles/pgfId-1068000.md new file mode 100644 index 0000000000..989fdfc246 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1068000.md @@ -0,0 +1,28 @@ +# Equilibrium Constants and Rate of Progress Variables + +**Table 4.13: Equilibrium Constants and Rate of Progress Variables +Subroutines[a]** + +| Subroutine | Description | +| ----------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `SUBROUTINE CKEQC (T, C, ICKWRK, RCKWRK, EQKC)` | Returns the equilibrium constants for reactions given temperature(s) and molar concentrations; see [Equation 3-7](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075229.html#i49537) . | +| `SUBROUTINE CKEQXP (P, T, X, ICKWRK, RCKWRK, EQKC)` | Returns the equilibrium constants for reactions given pressure, temperature(s) and mole fractions; see [Equation 3-7](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075229.html#i49537) . | +| `SUBROUTINE CKEQXR (RHO, T, X, ICKWRK, RCKWRK, EQKC)` | Returns the equilibrium constants of the reactions given mass density, temperature(s) and mole fractions; see [Equation 3-7](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075229.html#i49537) . | +| `SUBROUTINE CKEQYP (P, T, Y, ICKWRK, RCKWRK, EQKC)` | Returns the equilibrium constants for reactions given pressure temperature(s) and mass fractions; see [Equation 3-7](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075229.html#i49537) . | +| `SUBROUTINE CKEQYR (RHO, T, Y, ICKWRK, RCKWRK, EQKC)` | Returns the equilibrium constants of the reactions given mass density, temperature(s) and mass fractions; see [Equation 3-7](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075229.html#i49537) . | +| `SUBROUTINE CKQC (T, C, ICKWRK, RCKWRK, Q)` | Returns the rates of progress for reactions given temperature(s) and molar concentrations; see [Equation 3-4](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075229.html#i91749) and [Equation 3-19](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1062725.html#i73167) . | +| `SUBROUTINE CKQXP (P, T, X, ICKWRK, RCKWRK, Q)` | Returns the rates of progress for reactions given pressure, temperature(s) and mole fractions; see [Equation 3-4](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075229.html#i91749) and [Equation 3-19](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1062725.html#i73167) . | +| `SUBROUTINE CKQYP (P, T, Y, ICKWRK, RCKWRK, Q)` | Returns the rates of progress for reactions given pressure, temperature(s) and mass fractions; see [Equation 3-4](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075229.html#i91749) and [Equation 3-19](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1062725.html#i73167) . | +| `SUBROUTINE CKQYR (RHO, T, Y, ICKWRK, RCKWRK, Q)` | Returns the rates of progress for reactions given mass density, temperature(s) and mass fractions; see [Equation 3-4](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1075229.html#i91749) and [Equation 3-19](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/pgfId-1062725.html#i73167) . | + +[a] Where appropriate, the description refers to an equation number in +[Chemkin Theory Manual](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/chemkin_th.html) . + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1068172.md b/2026R1/chemkin_26-r1/articles/pgfId-1068172.md new file mode 100644 index 0000000000..3e503c83f2 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1068172.md @@ -0,0 +1,41 @@ +# Utilities + +**Table 4.14: Utility Subroutines** + +| Subroutine | Description | +| ------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `SUBROUTINE CKAVG (NN, S1, S2, SAVG)` | For arrays of length _nn_ , SAVG(_n_) is the average value of S1(_n_) and S2(_n_). | +| `REAL FUNCTION CKBSEC (NPTS, X, XX, TT)` | Interpolate f(_X_) using bisection, given _X_ and other pairs of _X_ and f(_X_). | +| `CHARACTER FUNCTION CKCHUP (ISTR, ILEN)` | Convert characters of a character string to upper case. | +| `CHARACTER FUNCTION CKCHLO (ISTR, ILEN)` | Convert ILEN characters in a character string to lower-case. | +| `SUBROUTINE CKCOMP (IST, IRAY, II, I)` | Returns the index of an element of a reference character string array which corresponds to a character string; leading and trailing blanks are ignored. | +| `SUBROUTINE CKCOPY (NN, X1, X2)` | Copy X1(*) array members into X2(*) array. | +| `SUBROUTINE CKCRAY (LINE, NN, KRAY, LOUT, NDIM, NRAY, NF, KERR)` | Searches a character string, LINE, and compares the space-delimited substrings in LINE, to an array of character strings, KRAY; if a substring in LINE is located in KRAY, the index of its location in KRAY is stored in the integer array NRAY. For example, the subroutine might be called to assign _Gas-phase Kinetics_ species indices to a given list of species names. | +| `SUBROUTINE CKDLIM (STRING, DELIM, I1, I2)` | Returns pointers into a character string of the first and second occurrences of a particular character. | +| `SUBROUTINE CKDTAB (STRING)` | Replaces any tab character in a character string with one space. | +| `INTEGER FUNCTION CKFRCH (STR)` | Returns the index of the first non-blank, non-tab character in a string. | +| `INTEGER FUNCTION CKLSCH (STR)` | Returns the index of the final non-blank, non-tab character in a string. | +| `SUBROUTINE CKI2CH (NUM, STR, I, KERR)` | Returns a character string representation of an integer and the character count of the string. | +| `INTEGER FUNCTION CKLKUP (ITEM, LIST, NLIST)` | Looks up an item in an integer list. If an item is found, it returns the first position of the item in the list. If an item is not found, this routine returns the value 0. | +| `SUBROUTINE CKNCMP (STR, IRAY, II, I, NF)` | Returns the first index of the character string STR if it occurs in the character string IRAY, and returns the total number of times STR occurs in IRAY. | +| `SUBROUTINE CKNORM (ARRAY, NN)` | Utility to normalize the real members of an array. | +| `SUBROUTINE CKNPAR (LINE, NPAR, LOUT, IPAR, ISTART, KERR)` | Searches a character string LINE from last to first character, to create a substring IPAR containing NPAR blank-delimited numbers; ISTART is the column of LINE containing IPAR. This allows format- free input of combined alpha-numeric data. | +| `SUBROUTINE CKR2CH (RNUM, STR, I, KERR)` | Returns a character string representation of a real number and the effective length of the string. | +| `SUBROUTINE CKSCAL (ARRAY, NN, SCAL)` | Utility to scale the real members of an array. | +| `INTEGER FUNCTION CKSLEN (LINE)` | Returns the effective length of a character string, that is, the index of the last character before an exclamation mark (!) indicating a comment. | +| `SUBROUTINE CKSNUM (LINE, NEXP, LOUT, KRAY, NN, KNUM, NVAL, RVAL, KERR)` | Search a character string, LINE, for (1) a character substring which may also appear in an array of character substrings KRAY, and (2) some number of character substrings representing numbers. In the case of (1), if the character substring appears in KRAY, KNUM is its index position. In the case of (2), the character substrings are converted to NVAL real numbers and stored in RVAL, until NEXP are converted. This allows format-free input of combined alpha-numeric data. For example, the subroutine might be called to find a _Gas-phase Kinetics_ species index and convert the other substrings to real values. | +| `SUBROUTINE CKSUBS (LINE, LOUT, NDIM, SUB, NFOUND, KERR)` | Returns an array of substrings in a character string with blanks or tabs as deli miters. | +| `REAL FUNCTION CKSUM (ARRAY, NN)` | Return the sum of entries in a real array. | +| `SUBROUTINE CKXMIN (X, NN, XMIN, IMIN)` | Returns the minimum value in an array and its location in the array. | +| `SUBROUTINE CKXMAX (X, NN, XMAX, IMAX)` | Returns the maximum value in an array and its location in the array. | +| `SUBROUTINE CKXNUM (LINE, NEXP, LOUT, NVAL, RVAL, KERR)` | Searches a character string, LINE, for NEXP space-delimited substrings representing numbers, until NVAL real values are converted and stored in the array, RVAL. This allows format-free input of numerical data. For example: | +| `SUBROUTINE CKXTND (NDIM, NPTS, XSTR, XEND, X, F, IFLAG)` | Ensure that XSTR ![](graphics/eq13794111-5613-0060-1806-796358613253.svg) X(N) ![](graphics/eq93886591-3571-1452-0627-613334995233.svg) XEND. NPTS may be increased to add XSTR < X(1) or XEND > X(NPTS). NPTS may be decreased to drop X(N) < XSTR or X(N) > XEND. If NDIM does not allow adding a new endpoint, CKXTND replaces the endpoint and sets IFLAG=1 if new XSTR, IFLAG=2 if new XEND. | + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1070384.md b/2026R1/chemkin_26-r1/articles/pgfId-1070384.md new file mode 100644 index 0000000000..70deec0690 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1070384.md @@ -0,0 +1,30 @@ +# MCACON + + + + MCACON MCACON MCACON MCACON MCACON MCACON MCACON + ********************************************** + ************************** + ****** + + SUBROUTINE MCACON (T, X, RMCWRK, CONMIX) + Returns the mixture thermal conductivity given temperature and + species mole fractions. + + INPUT + T - Real scalar, temperature. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + + OUTPUT + CONMIX - Real scalar, mixture thermal conductivity. + cgs units, erg/cm*K*s + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1070406api.md b/2026R1/chemkin_26-r1/articles/pgfId-1070406api.md new file mode 100644 index 0000000000..4dc20d1f74 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1070406api.md @@ -0,0 +1,33 @@ +# MCADIF + + + + MCADIF MCADIF MCADIF MCADIF MCADIF MCADIF MCADIF + ********************************************** + ************************** + ****** + + SUBROUTINE MCADIF (P, T, X, RMCWRK, D) + Returns mixture-averaged diffusion coefficients given pressure, + temperature, and species mole fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T - Real scalar, temperature. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + + OUTPUT + D(*) - Real array, mixture diffusion coefficients; + dimension at least KK, the total species count. + cgs units, cm**2/s + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1070431.md b/2026R1/chemkin_26-r1/articles/pgfId-1070431.md new file mode 100644 index 0000000000..9570dd1906 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1070431.md @@ -0,0 +1,33 @@ +# MCATDR + + + + MCATDR MCATDR MCATDR MCATDR MCATDR MCATDR MCATDR + ********************************************** + ************************** + ****** + + SUBROUTINE MCATDR (T, X, IMCWRK, RMCWRK, TDR) + This subroutine computes the thermal diffusion ratios for the light + species into the mixture. + + INPUT + T - Real scalar, temperature. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + IMCWRK(*) - Integer workspace array; dimension at least LENIMC. + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + + OUTPUT + TDR(*) - Real array, thermal diffusion ratios for the species; + dimension at least KK, the total species count. + TDR(K) = 0 for any species with molecular weight less + than 5. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1070456.md b/2026R1/chemkin_26-r1/articles/pgfId-1070456.md new file mode 100644 index 0000000000..01a0d4cccb --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1070456.md @@ -0,0 +1,31 @@ +# MCAVIS + + + + MCAVIS MCAVIS MCAVIS MCAVIS MCAVIS MCAVIS MCAVIS + ********************************************** + ************************** + ****** + + SUBROUTINE MCAVIS (T, X, RMCWRK, VISMIX) + Returns mixture viscosity, given temperature and species mole + fractions. It uses modification of the Wilke semi-empirical + formulas. + + INPUT + T - Real scalar, temperature. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + + OUTPUT + VISMIX - Real scalar, mixture viscosity. + cgs units, gm/cm*s + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1070479.md b/2026R1/chemkin_26-r1/articles/pgfId-1070479.md new file mode 100644 index 0000000000..18e6573ba6 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1070479.md @@ -0,0 +1,36 @@ +# MCCCEX + + + + MCCCEX MCCCEX MCCCEX MCCCEX MCCCEX MCCCEX MCCCEX + ********************************************** + ************************** + ****** + + SUBROUTINE MCCCEX (K, RMCWRK, COFCON) + Gets or puts values of the fitting coefficients for the + polynomial fits to species conductivity. + + INPUT + K - Integer scalar, species index. + K > 0 gets coefficients from RMCWRK + K < 0 puts coefficients into RMCWRK + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + + If K < 1: + COFCON - Real vector of polynomial coefficients for + the species' conductivity; dimension at least NO, + usually 4. + + OUTPUT + If K > 1: + COFCON - Real vector of polynomial coefficients for + the species' conductivity; dimension at least NO, + usually 4. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1070507.md b/2026R1/chemkin_26-r1/articles/pgfId-1070507.md new file mode 100644 index 0000000000..c8165220b7 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1070507.md @@ -0,0 +1,43 @@ +# MCCDEX + + + + MCCDEX MCCDEX MCCDEX MCCDEX MCCDEX MCCDEX MCCDEX + ********************************************** + + ************************** + ****** + + SUBROUTINE MCCDEX (K, KDIM, RMCWRK, COFDIF) + Gets or puts values of the fitting coefficients for the + polynomial fits to species binary diffusion coefficients. + + INPUT + K - Integer scalar, species index. + K > 0 gets coefficients from RMCWRK + K < 0 puts coefficients into RMCWRK + KDIM - First dimension for COFDIF matrix; + KDIM should be at least KK, the total number of species + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + + If K < 1: + COFDIF - Real matrix of polynomial coefficients for + the species' binary diffusion coefficient with all + other species; the first dimension is KDIM, + which should be at least KK, the total number of species; + the second dimension should be at least NO, usually 4 + + OUTPUT + If K > 1: + COFDIF - Real matrix of polynomial coefficients for + the species' binary diffusion coefficient with all + other species; the first dimension is KDIM, + which should be at least KK, the total number of species; + the second dimension should be at least NO, usually 4 + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1070541.md b/2026R1/chemkin_26-r1/articles/pgfId-1070541.md new file mode 100644 index 0000000000..241fa6cb74 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1070541.md @@ -0,0 +1,34 @@ +# MCCVEX + + + + MCCVEX MCCVEX MCCVEX MCCVEX MCCVEX MCCVEX MCCVEX + ********************************************** + ************************** + ****** + + SUBROUTINE MCCVEX (K, RMCWRK, COFVIS) + Gets or puts values of the fitting coefficients for the + polynomial fits to species viscosity. + + INPUT + K - Integer scalar, species index. + K > 0 gets coefficients from RMCWRK + K < 0 puts coefficients into RMCWRK + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + + If K < 1: + COFVIS - Real vector of polynomial coefficients for + the species' viscosity; dimension at least NO, usually 4 + + OUTPUT + If K > 1: + COFVIS - Real vector of polynomial coefficients; dimension + at least NO, usually 4 + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1070567.md b/2026R1/chemkin_26-r1/articles/pgfId-1070567.md new file mode 100644 index 0000000000..bd52698a24 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1070567.md @@ -0,0 +1,46 @@ +# MCINIT + + + + MCINIT MCINIT MCINIT MCINIT MCINIT MCINIT MCINIT + ********************************************** + ************************** + ****** + + SUBROUTINE MCINIT (LINKMC, LOUT, LENIMC, LENRMC, IMCWRK, RMCWRK, + IFLAG) + This subroutine reads the transport linkfile from the fitting code + and creates the internal storage and work arrays, IMCWRK(*) and + RMCWRK(*). MCINIT must be called before any other transport + subroutine is called. It must be called after the CHEMKIN package + is initialized. + + INPUT + LINKMC - Integer scalar, transport linkfile input unit number. + LOUT - Integer scalar, formatted output file unit number. + LENIMC - Integer scalar, minimum dimension of the integer + storage and workspace array IMCWRK(*); + LENIMC must be at least: + LENIMC = 4*KK + NLITE, + where KK is the total species count, and + NLITE is the number of species with molecular + weight less than 5. + LENRMC - Integer scalar, minimum dimension of the real storage + and workspace array RMCWRK(*); + LENRMC must be at least: + LENRMC = KK*(19 + 2*NO + NO*NLITE) + (NO+15)*KK**2, + where KK is the total species count, + NO is the order of the polynomial fits (NO=4), + NLITE is the number of species with molecular + weight less than 5. + + OUTPUT + IMCWRK(*) - Integer workspace array; dimension at least LENIMC. + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1070605.md b/2026R1/chemkin_26-r1/articles/pgfId-1070605.md new file mode 100644 index 0000000000..e7d0f1d576 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1070605.md @@ -0,0 +1,30 @@ +# MCLEN + + + + MCLEN MCLEN MCLEN MCLEN MCLEN MCLEN MCLEN + ********************************************** + ************************** + ****** + + SUBROUTINE MCLEN (LINKMC, LOUT, LI, LR, IFLAG) + Returns the lengths required for work arrays. + + INPUT + LINKMC - Integer scalar, input file unit for the linkfile. + LOUT - Integer scalar, formatted output file unit. + + OUTPUT + LI - Integer scalar, minimum length required for the + integer work array. + LR - Integer scalar, minimum length required for the + real work array. + IFLAG - Integer scalar, indicates successful reading of + linkfile; IFLAG>0 indicates error type. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1070627.md b/2026R1/chemkin_26-r1/articles/pgfId-1070627.md new file mode 100644 index 0000000000..4698a93068 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1070627.md @@ -0,0 +1,46 @@ +# MCMCDT + + + + MCMCDT MCMCDT MCMCDT MCMCDT MCMCDT MCMCDT MCMCDT + ********************************************** + ************************** + ****** + + SUBROUTINE MCMCDT (P, T, X, IMCWRK, RMCWRK, ICKWRK, CKWRK, + DT, COND) + Returns thermal diffusion coefficients, and mixture thermal + conductivities, given pressure, temperature, and mole fraction. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T - Real scalar, temperature. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + + IMCWRK(*) - Integer TRANSPORT workspace array; + dimension at least LENIMC. + RMCWRK(*) - Real TRANSPORT workspace array; + dimension at least LENRMC. + ICKWRK(*) - Integer CHEMKIN workspace array; + dimension at least LENICK. + RCKWRK(*) - Real CHEMKIN workspace array; + dimension at least LENRCK. + + OUTPUT + DT(*) - Real array, thermal multicomponent diffusion + coefficients; + dimension at least KK, the total species count. + cgs units, gm/(cm*sec) + CGS UNITS - GM/(CM*SEC) + COND - Real scalar, mixture thermal conductivity. + cgs units, erg/(cm*K*s) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1070665.md b/2026R1/chemkin_26-r1/articles/pgfId-1070665.md new file mode 100644 index 0000000000..65ec1fc476 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1070665.md @@ -0,0 +1,38 @@ +# MCMDIF + + + + MCMDIF MCMDIF MCMDIF MCMDIF MCMDIF MCMDIF MCMDIF + ********************************************** + ************************** + ****** + + SUBROUTINE MCMDIF (P, T, X, KDIM, IMCWRK, RMCWRK, D) + Returns the ordinary multicomponent diffusion coefficients, + given pressure, temperature, and mole fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T - Real scalar, temperature. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + KDIM - Integer scalar, actual first dimension of D(KDIM,KK); + KDIM must be at least KK, the total species count. + IMCWRK(*) - Integer workspace array; dimension at least LENIMC. + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + + OUTPUT + D(*,*) - Real matrix, ordinary multicomponent diffusion + coefficients; + dimension at least KK, the total species count, for + both the first and second dimensions. + cgs units, cm**2/s + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1070695.md b/2026R1/chemkin_26-r1/articles/pgfId-1070695.md new file mode 100644 index 0000000000..8dda39e0b4 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1070695.md @@ -0,0 +1,34 @@ +# MCPNT + + + + MCPNT MCPNT MCPNT MCPNT MCPNT MCPNT MCPNT + ********************************************** + ************************** + ****** + + SUBROUTINE MCPNT (LSAVE, LOUT, NPOINT, V, P, LI, LR, IERR) + Reads from a binary file information about a Transport linkfile, + pointers for the Transport Library, and returns lengths of work + arrays. + + INPUT + LSAVE - Integer scalar, input unit for binary data file. + LOUT - Integer scalar, formatted output file unit. + + OUTPUT + NPOINT - Integer scalar, total number of pointers. + V - Real scalar, version number of the Transport linkfile. + P - Character string, machine precision of the linkfile. + LI - Integer scalar, minimum dimension required for integer + workspace array. + LR - Integer scalar, minimumm dimension required for real + workspace array. + IERR - Logical, error flag. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1070721api.md b/2026R1/chemkin_26-r1/articles/pgfId-1070721api.md new file mode 100644 index 0000000000..4308bb19b2 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1070721api.md @@ -0,0 +1,47 @@ +# MCPRAM + + + + MCPRAM MCPRAM MCPRAM MCPRAM MCPRAM MCPRAM MCPRAM + ********************************************** + ************************** + ****** + + SUBROUTINE MCPRAM (IMCWRK, RMCWRK, EPS, SIG, DIP, POL, ZROT, NLIN) + Returns the arrays of molecular parameters as read from the + transport database. + + INPUT + IMCWRK(*) - Integer workspace array; dimension at least LENIMC. + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + + OUTPUT + EPS(*) - Real array, Lennard-Jones Potential well depths for + the species; + dimension at least KK, the total species count. + cgs units, K + SIG(*) - Real array, Lennary-Jones collision diameters for + the species; + dimension at least KK, the total species count. + cgs units, Angstrom + DIP(*) - Real array, dipole moments for the species; + dimension at least KK, the total species count. + cgs units, Debye + POL(*) - Real array, polarizabilities for the species; + dimension at least KK, the total species count. + cgs units, Angstrom**3 + ZROT(*) - Real array, rotational collision numbers evaluated at + 298K for the species; + dimension at least KK, the total species count. + NLIN(*) - Integer array, flags for species linearity; + dimension at least KK, the total species count. + NLIN=0, single atom, + NLIN=1, linear molecule, + NLIN=2, linear molecule. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1070760.md b/2026R1/chemkin_26-r1/articles/pgfId-1070760.md new file mode 100644 index 0000000000..bc58bf057b --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1070760.md @@ -0,0 +1,28 @@ +# MCREWR + + + + MCREWR MCREWR MCREWR MCREWR MCREWR MCREWR MCREWR + ********************************************** + ************************** + ****** + + SUBROUTINE MCREWR (LINKMC, LOUT, IMCWRK, RMCWRK, IFLAG) + This subroutine writes a new the transport linkfile from + the data stored in the integer and real work arrays, + IMCWRK(*) and RMCWRK(*). + + INPUT + LINKMC - Integer scalar, transport linkfile output unit number. + LOUT - Integer scalar, formatted output file unit number. + + OUTPUT + IMCWRK(*) - Integer workspace array; dimension at least LENIMC. + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1070780.md b/2026R1/chemkin_26-r1/articles/pgfId-1070780.md new file mode 100644 index 0000000000..54cfcce3e1 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1070780.md @@ -0,0 +1,25 @@ +# MCSAVE + + + + MCSAVE MCSAVE MCSAVE MCSAVE MCSAVE MCSAVE MCSAVE + ********************************************** + ************************** + ****** + + SUBROUTINE MCSAVE (LOUT, LSAVE, IMCWRK, RMCWRK) + Writes to a binary file information about a Transport linkfile, + pointers for the Transport library, and Transport work arrays. + + INPUT + LOUT - Integer scalar, formatted output file unit number. + LSAVE - Integer scalar, unformatted output file unit number. + IMCWRK(*) - Integer workspace array; dimension at least LENIMC. + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1070797.md b/2026R1/chemkin_26-r1/articles/pgfId-1070797.md new file mode 100644 index 0000000000..af1c362f52 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1070797.md @@ -0,0 +1,28 @@ +# MCSCON + + + + MCSCON MCSCON MCSCON MCSCON MCSCON MCSCON MCSCON + ********************************************** + ************************** + ****** + + SUBROUTINE MCSCON (T, RMCWRK, CON) + Returns the array of pur species conductivities given temperature. + + INPUT + T - Real scalar, temperature. + cgs units, K + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + + OUTPUT + CON(*) - Real array, species thermal conductivities; + dimension at least KK, the total species count. + cgs units, erg/cm*K*s + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1070817.md b/2026R1/chemkin_26-r1/articles/pgfId-1070817.md new file mode 100644 index 0000000000..0099fab7fa --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1070817.md @@ -0,0 +1,35 @@ +# MCSDIF + + + + MCSDIF MCSDIF MCSDIF MCSDIF MCSDIF MCSDIF MCSDIF + ********************************************** + ************************** + ****** + + SUBROUTINE MCSDIF (P, T, KDIM, RMCWRK, DJK) + Returns the binary diffusion coefficients given pressure and + temperature. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T - Real scalar, temperature. + cgs units, K + KDIM - Integer scalar, actual first dimension of DJK(KDIM,KK). + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + + OUTPUT + DJK(*,*) - Real matrix, binary diffusion coefficients; + dimension at least KK, the total species count, for + both the first and second dimensions. + cgs units, cm**2/s + CJK(J,K) is the diffusion coefficient of species J + in species K. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1070844.md b/2026R1/chemkin_26-r1/articles/pgfId-1070844.md new file mode 100644 index 0000000000..3a55280bcf --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1070844.md @@ -0,0 +1,28 @@ +# MCSVIS + + + + MCSVIS MCSVIS MCSVIS MCSVIS MCSVIS MCSVIS MCSVIS + ********************************************** + ************************** + ****** + + SUBROUTINE MCSVIS (T, RMCWRK, VIS) + Returns the array of pure species viscosities, given temperature. + + INPUT + T - Real scalar, temperature. + cgs units, K + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + + OUTPUT + VIS(*) - Real array, species viscosities; + dimension at least KK, the total species count. + cgs units, gm/cm*s + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1071662.md b/2026R1/chemkin_26-r1/articles/pgfId-1071662.md new file mode 100644 index 0000000000..2c240aa470 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1071662.md @@ -0,0 +1,42 @@ +# User-programmed Subroutines + +Ansys Chemkin has the added flexibility to incorporate user programming for +certain terms in equations solved in Chemkin, or to parameterize time- or +distance-dependent variables. Templates for each of the user subroutine +options are provided in the standard Chemkin installation, under the +subdirectory _user_routines_ , that is, + +For Windows/Win64: + + + + + **C:\Program Files\ANSYS Inc\V251\reaction\chemkinpro.win64\user_routines** + +For Linux8664: + + + + **/ansys_inc/v251 ⁄reaction⁄chemkinpro.linuxx8664/user_routines** + +There are two types of User Subroutine options: + + 1. Subroutines that provide customer reaction-rate formulations and supplement or replace certain functionality in the Ansys Chemkin subroutine libraries, and + + 2. Subroutines that add to or replace certain functionality in a Reactor Model application program. + +For Reactor Model user routines, in addition to programming, compiling, and +linking code into the application programs, users must also specifically +select the use of the user-subroutine option, either through the appropriate +Ansys Chemkin interface input panel, or through manually adding keywords to a +Reactor Model input file. Similarly, for utility or reaction-rate user +routines, users must explicitly include auxiliary information in the _Gas- +phase Kinetics_ or _Surface Kinetics_ input file that activates the user +subroutine. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1071760.md b/2026R1/chemkin_26-r1/articles/pgfId-1071760.md new file mode 100644 index 0000000000..4fc3a81eb4 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1071760.md @@ -0,0 +1,23 @@ +# Mnemonics + +There are some rules of thumb for explaining the subroutine naming +conventions. All subroutine names begin with the letters `SK` so that _Surface +Kinetics_ Subroutines are easily recognized and so that they are likely +different from any user subroutine names. The four remaining letters generally +identify the purpose of the subroutine. + +Thermodynamic properties are referred to by `CP` (specific heat), `H` ( +enthalpy), `S` ( entropy), `U` ( internal energy), `G` (Gibbs free energy), +and `A` (Helmholtz free energy). The thermodynamic property subroutines may be +called to return properties in mass units, denoted by `MS` or `S` as the last +letter(s), or in molar units, denoted by `ML` or `L` as the last letter(s). + +The mnemonics for the variable names in the subroutine call lists are roughly +the same as for the subroutine names. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1071816.md b/2026R1/chemkin_26-r1/articles/pgfId-1071816.md new file mode 100644 index 0000000000..97884963ee --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1071816.md @@ -0,0 +1,27 @@ +# Initialization + +**Table 5.1: Initialization Subroutines** + +| Subroutine | Description | +| ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------- | +| `SUBROUTINE SKINDX (ISKWRK, NELM, KKGAS, KKSUR, KKBULK, KKTOT, NNPHAS, NNSURF, NFSURF, NLSURF, NNBULK, NFBULK, NLBULK, IISUR)` | Returns a group of indices defining the size of the surface reaction mechanism. | +`SUBROUTINE SKINIT (LENISK, LENRSK, LENCSK, LINSK, LOUT, ISKWRK, RSKWRK, CSKWRK, IFLAG)`| Reads the surface linkfile and creates internal work arrays +ISKWRK, RSKWRK, and CSKWRK. SKINIT must be called before any other _Surface +Kinetics_ subroutine can be used, as the work arrays must be available as +their input. +`SUBROUTINE SKLEN (LINSK, LOUT, LENI, LENR, LENC, IFLAG)` | Reads the first record of the linkfile to return the lengths required for the integer, real, and character work arrays. +`SUBROUTINE SKLEN2 (LINSK, LOUT, LENI, LENR, LENC, NELEM, NKKGAS, NKKSUR, NKKBLK, NKKTOT, NPHASE, NNSUR, NNBLK, NIISUR, NIICON, MORE, IFLAG)`| Reads the +first record of the linkfile to return the lengths required for the integer, +real, and character work arrays, as well as other size information needed for +memory allocation. The routine also advances to the end of the first material. +`SUBROUTINE SKREWR (LINSK, LOUT, ISKWRK, RSKWRK, CSKWRK, IFLAG)`| Rewrites a +new linkfile from the data stored in ISKWRK, RSKWRK and CSKWRK. + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1071835.md b/2026R1/chemkin_26-r1/articles/pgfId-1071835.md new file mode 100644 index 0000000000..3ac6514dbd --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1071835.md @@ -0,0 +1,16 @@ +# Information about Elements + +**Table 5.2: Information about Elements Subroutines** + +| Subroutine | Description | +| ------------------------------------------------------ | -------------------------------------------------- | +| `SUBROUTINE SKSYME (ISKWRK, CSKWRK, LOUT, ENAM, KERR)` | Returns a character string array of element names. | + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1071910.md b/2026R1/chemkin_26-r1/articles/pgfId-1071910.md new file mode 100644 index 0000000000..b2d342177c --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1071910.md @@ -0,0 +1,24 @@ +# Information about Species + +**Table 5.3: Information about Species Subroutines** + +| Subroutine | Description | +| ------------------------------ | ---------------------------------------- | +| `SUBROUTINE SKATCZ (P, T, ACT, SDEN, ISKWRK, RSKWRK, CZ)` | Returns the concentrations of the species, given the pressure, temperature and activities. | +| `SUBROUTINE SKCHRG (ISKWRK, RSKWRK, KCHARG)` | Returns an array containing electronic charges of the species. +|`SUBROUTINE SKCOV (ISKWRK, KOCC)`| Returns an array of site occupancy numbers for the species. +|`SUBROUTINE SKCZTA (T, CZ, SDEN, ISKWRK, RSKWRK, ACT)` | Returns the activities of the species, given the pressure, temperature and concentrations. +|`SUBROUTINE SKDEN (P, T, ACT, SDEN, ISKWRK, RSKWRK, DEN)` | Returns a real array of species densities. +|`SUBROUTINE SKKTFL (ISKWRK, KTFL)`| Allows the user to assign a location in the temperature array to use for the gas-phase species. +|`SUBROUTINE SKNCF (NELDIM, ISKWRK, NEL)`| Returns the elemental composition of the species. +|`SUBROUTINE SKSYMS (ISKWRK, CSKWRK, LOUT, KNAM, KERR)` | Returns a character array of species names. +|`SUBROUTINE SKWT (ISKWRK, RSKWRK, WT)`| Returns the molecular weights of the species. + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1071956.md b/2026R1/chemkin_26-r1/articles/pgfId-1071956.md new file mode 100644 index 0000000000..5fa289ddcc --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1071956.md @@ -0,0 +1,22 @@ +# Information about Phases and Materials + +**Table 5.4: Information about Phases and Materials Subroutines** + +| Subroutine | Description | +| -------------------------------------------------- | -------------------------------------------------- | +| `SUBROUTINE SKPKK (ISKWRK, KKPHAS, KFIRST, KLAST)` | Returns arrays of species pointers for the phases. | +| `SUBROUTINE SKPNDX (ISKWRK, KELECT, KKION)` | Returns plasma indices for the | +particular reaction mechanism. +`SUBROUTINE SKSDEN (ISKWRK, RSKWRK, SDEN0)`| Returns a real array of standard- +state phase densities as given on input to the Pre-processor. +`SUBROUTINE SKSYMM (ISKWRK, CSKWRK, LOUT, MATNAM, KERR)` | Returns the character string name of a material. +`SUBROUTINE SKSYMP (ISKWRK, CSKWRK, LOUT, PNAM, KERR)` | Returns a character string array of phase names. + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1072129.md b/2026R1/chemkin_26-r1/articles/pgfId-1072129.md new file mode 100644 index 0000000000..85206c48a8 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1072129.md @@ -0,0 +1,69 @@ +# Information about Surface Reactions + +**Table 5.5: Information about Surface Reactions Subroutines** + +| Subroutine | Description | +| ------------------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------- | +| `SUBROUTINE SKABE (ISKWRK, RSKWRK, RA, RB, RE, ISTFL)` | Returns the Arrhenius coefficients or the sticking coefficients of the surface reactions, and integer flags to indicate the type of the coefficients. | +`SUBROUTINE SKFLGS (IR, ISKWRK, NRPP, IREV, ISTFL, ICOV, IMOTZ, IEDP, IBHM, IORD, IYLD)`| Returns several integer flags describing surface reaction IR. +`SUBROUTINE SKIBHM (IR, ISKWRK, IBMFL)`| Returns an integer flag to indicate +whether reaction IR uses Bohm coefficients. +`SUBROUTINE SKICOV (IR, NDIM, ISKWRK, RSKWRK, NCOVI, KCOVI, CPARI)`| Returns +the coverage species index numbers and their coverage parameters for reaction +IR. +`SUBROUTINE SKIENR (IR, ISKWRK, SKWRK, IENRFL, IEION, PEDEP)`| Returns an +integer flag to indicate if reaction IR is ion-energy-dependent, and if so, +formulation-specific parameters. +`SUBROUTINE SKINU (IS, NDIM, ISKWRK, RSKWRK, NSPEC, KI, NU)` | Returns the number of species in a surface reaction, and the species indices and stoichiometric coefficients. +`SUBROUTINE SKIORD (IDIM, KDIM, ISKWRK, RSKWRK, NFORD, IFORD, FORD, NRORD, IRORD, RORD)`| Returns the number and indices of surface reactions with +modified species orders, and the order values for the species in the surface +mechanism. +`SUBROUTINE SKIREV (IR, ISKWRK, RSKWRK, IREV, RAR, RBR, RER)`| Returns an +integer flag to indicate whether reaction IR has an explicitly assigned +reverse rate constant. It also returns the reverse Arrhenius expression values +for surface reaction IR, if it was explicitly assigned in the _Surface +Kinetics_ Pre-processor. If reverse Arrhenius values were not explicitly +assigned, RAR, RBR and RER will be zero. +`SUBROUTINE SKIRNU (IDIM, NDIM, ISKWRK, RSKWRK, NIRNU, IRNU, NSPEC, KI, RNU)`| +Returns the number and indices of surface reactions with real stoichiometric +coefficients, number of species in the reactions, and the species indices and +coefficients; +`SUBROUTINE SKISTK (IR, ISKWRK, ISTFL)`| Returns an integer flag to indicate +whether reaction IR uses sticking coefficients. +`SUBROUTINE SKIUQ (ISKWRK, IQUSR)`| Returns a set of flags indicating whether +the reactions are user-modify rate-of-progress reactions, and if so, the user- +modify type. +`SUBROUTINE SKIYLD (IR, ISKWRK, RSKWRK, IYLD, IYION, KYLD, PYLD)`| Returns an +integer flag to indicate whether reaction IR has yield-modified species, the +species index of its ion, yield-modify flags for its reactants and products, +and parameters for the yield expression. +`SUBROUTINE SKKION (ISKWRK, KELECT, KKION, KION)` | Returns the species number of the electron, the number of positive ions in the gas-phase, and an array of species number for each positive ion +`SUBROUTINE SKKUW (ISKWRK, KWUSR)`| Returns a set of flags indicating whether +the species are user-modify rate-of-production species, and if so, the user- +modify type. +`SUBROUTINE SKNCON (ISKWRK, RSKWRK, NCON)`| Returns the total number of +surface reactions which do not conserve sites of the phases. +`SUBROUTINE SKNU (IDIM, ISKWRK, RSKWRK, KSTOIC, NSTOIC)` | Returns the stoichiometric coefficients of the species and the net change in phases for all of the surface reactions in a mechanism. +`SUBROUTINE SKNUF (IDIM, ISKWRK, KSTOIF)`| Returns the stoichiometric +coefficients of the species for all reactants in all surface reactions in a +mechanism. (note - reactants only! - they will all be negative) +`SUBROUTINE SKRAEX (IR, ISKWRK, RSKWRK, RA)`| Returns the Pre-exponential rate +constant (or sticking coefficient) of the IRth reaction, or changes its value, +depending on the sign of IR. +`SUBROUTINE SKRDEX (IR, ISKWRK, RSKWRK, RD)`| Returns the perturbation factor +of the IRth reaction, or changes its value, depending on the sign of IR. +`SUBROUTINE SKRPAR (ISKWRK, RSKWRK, ENRGI)`| Allows the user to input +auxiliary reaction-rate parameters for special types of reactions. The first +parameter is the species (ion) directed energy for ion-energy-dependent +reactions. +`SUBROUTINE SKSYMR (IR, LOUT, ISKWRK, RSKWRK, CSKWRK, LT, RNAM, KERR)`| +Returns the character string representation of reaction IR. + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1072147.md b/2026R1/chemkin_26-r1/articles/pgfId-1072147.md new file mode 100644 index 0000000000..20e0de3e53 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1072147.md @@ -0,0 +1,16 @@ +# Gas Constants and Units + +**Table 5.6: Gas Constants and Units Subroutines** + +| Subroutine | Description | +| ------------------------------------------------- | ---------------------------------------------------------------------------- | +| `SUBROUTINE SKRP (ISKWRK, RSKWRK, RU, RUC, PATM)` | Returns universal gas constants and the pressure of one standard atmosphere. | + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1072203.md b/2026R1/chemkin_26-r1/articles/pgfId-1072203.md new file mode 100644 index 0000000000..3184ef87a9 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1072203.md @@ -0,0 +1,27 @@ +# Thermodynamic Properties (Non dimensional) + +**Table 5.7: Thermodynamic Properties (Non dimensional) Subroutines** + +| Subroutine | Description | +| -------------------------------------------------------------------- | ----------- | +| `SUBROUTINE SKATHM (MDIM, NDIM1, NDIM2, ISKWRK, RSKWRK, NT, TMP, A)` | Returns | +the polynomial coefficients of the fits for thermodynamic properties of all of +the species. +`SUBROUTINE SKCHORT (T, ACT, ISKWRK, RSKWRK, HORT)` | Returns an array of the non dimensional enthalpies. +`SUBROUTINE SKCPOR (T, ISKWRK, RSKWRK, CPOR)` | Returns an array of the non dimensional specific heats at constant pressure. +`SUBROUTINE SKMXTP (ISKWRK, MXTP)`| Returns the maximum number of temperatures +used in fitting the thermodynamic properties of the species. +`SUBROUTINE SKRHEX (K, ISKWRK, RSKWRK, A6)`| Returns an array of the sixth +thermodynamic polynomial coefficients for a species, or changes their value, +depending on the sign of K. +`SUBROUTINE SKSOR (T, ISKWRK, RSKWRK, SOR)`| Returns an array of the non +dimensional entropies. + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1072258.md b/2026R1/chemkin_26-r1/articles/pgfId-1072258.md new file mode 100644 index 0000000000..08beb9d8bf --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1072258.md @@ -0,0 +1,26 @@ +# Thermodynamic Properties (Mass Units) + +**Table 5.8: Thermodynamic Properties (Mass Units) Subroutines** + +| Subroutine | Description | +| ------------------------------------------- | -------------------------------- | +| `SUBROUTINE SKAMS (T, ISKWRK, RSKWRK, AMS)` | Returns an array of the standard | +state Helmholtz free energies in mass units. +`SUBROUTINE SKCPMS (T, ISKWRK, RSKWRK, CPMS)` | Returns an array of the specific heats at constant pressure in mass units. +`SUBROUTINE SKGMS (T, ISKWRK, RSKWRK, GMS)`| Returns an array of the standard +state Gibbs free energies in mass units. +`SUBROUTINE SKHMS (T, ISKWRK, RSKWRK, HMS)`| Returns an array of the +enthalpies in mass units. +`SUBROUTINE SKSMS (T, ISKWRK, RSKWRK, SMS)`| Returns an array of the standard- +state entropies in mass units. +`SUBROUTINE SKUMS (T, ISKWRK, RSKWRK, UMS)`| Returns an array of the internal +energies in mass units. + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1072309.md b/2026R1/chemkin_26-r1/articles/pgfId-1072309.md new file mode 100644 index 0000000000..baf67ffa47 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1072309.md @@ -0,0 +1,22 @@ +# Thermodynamic Properties (Molar Units) + +**Table 5.9: Thermodynamic Properties (Molar Units) Subroutines** + +| Subroutine | Description | +| ------------------------------------------------- | ------------------------------------------------------------------------------ | +| `SUBROUTINE SKCAML (T, ACT, ISKWRK, RSKWRK, AML)` | Returns an array of the standard state Helmholtz free energies in molar units. | +| `SUBROUTINE SKCGML (T, ACT, ISKWRK, RSKWRK, GML)` | Returns an array of the standard state Gibbs free energies in molar units. | +| `SUBROUTINE SKCHML (T, ACT, ISKWRK, RSKWRK, HML)` | Returns an array of the enthalpies in molar units. | +| `SUBROUTINE SKCPML (T, ISKWRK, RSKWRK, CPML)` | Returns an array of the specific heats at constant pressure in molar units. | +| `SUBROUTINE SKCUML (T, ACT, ISKWRK, RSKWRK, UML)` | Returns an array of the internal energies in molar units. | +| `SUBROUTINE SKSML (T, ISKWRK, RSKWRK, SML)` | Returns an array of the standard- | +state entropies in molar units. + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1072364.md b/2026R1/chemkin_26-r1/articles/pgfId-1072364.md new file mode 100644 index 0000000000..081c2f9c6c --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1072364.md @@ -0,0 +1,31 @@ +# Chemical Production Rates + +**Table 5.10: Chemical Production Rates Subroutines** + +| Subroutine | Description | +| ---------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | +| `SUBROUTINE SKCONT (KSPEC, ROP, ISKWRK, RSKWRK, CIK)` | Returns the contributions of the surface reactions to the molar production rate of species KSPEC. | +| `SUBROUTINE SKDRDA (IR, P, T, ACT, SDEN, ISKWRK, RSKWRK, DKDAI)` | Returns the | +partial of the rates of production of the species with respect to the pre- +exponential constant of surface reaction IR. +`SUBROUTINE SKDRDC (KSPEC, P, T, ACT, SDEN, ISKWRK, RSKWRK, DKDC)`| Returns +the partial derivative of the production rates of the species with respect to +the concentration of species KSPEC. +`SUBROUTINE SKDSDC (P, T, X, ACT, SDEN, ISKWRK, RSKWRK, DSDC, KKTOT, SDOT, SITDOT)`| Returns the partial derivative of the production rates of the +species with respect to the concentration of each species. It also returns the +matching production rates. +`SUBROUTINE SKDSDX (P, T, X, ACT, SDEN, ISKWRK, RSKWRK, DSDX, KKTOT, SDOT, SITDOT)`| Returns the partial derivative of the production rates of the +species with respect to the activity for each species. It also returns the +matching production rates. +`SUBROUTINE SKRAT (P, T, ACT, SDEN, ISKWRK, RSKWRK, SDOT, SITDOT)`| Returns +production rates for the species and sites. +`SUBROUTINE SKRATI (IR, ROP, ISKWRK, RSKWRK, SDOTI, SITDTI)` | Returns rates of production of the species by surface reaction IR. + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1072392.md b/2026R1/chemkin_26-r1/articles/pgfId-1072392.md new file mode 100644 index 0000000000..073340aedc --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1072392.md @@ -0,0 +1,18 @@ +# Equilibrium Constants and Rate-of-Progress Variables + +**Table 5.11: Equilibrium Constants and Rate-of-Progress Variables +Subroutines** + +| Subroutine | Description | +| --------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ | +| `SUBROUTINE SKEQ (P, T, ACT, SDEN, ISKWRK, RSKWRK, EQKC)` | Returns the equilibrium constants for the surface reactions given pressure, temperature, species activities, and the site densities. | +| `SUBROUTINE SKROP (P, T, ACT, SDEN, ISKWRK, RSKWRK, ROP)` | Returns rates of progress for the surface reactions. | + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1072442.md b/2026R1/chemkin_26-r1/articles/pgfId-1072442.md new file mode 100644 index 0000000000..3515c16839 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1072442.md @@ -0,0 +1,29 @@ +# Utilities + +**Table 5.12: Utility Subroutines** + +| Subroutine | Description | +| ---------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `SUBROUTINE SKCOMP (ISTR, IRAY, NN, IND, NT) ` | Search for the occurrence of character string ISTR, in the NN character strings of array IRAY; IND is the first location in IRAY of ISTR if found, or 0 if not found, and NT is the total number of times it occurs. Consider the following example, | +| `SUBROUTINE SKPCMP (ISTR, IRAY, NN, SETS, NSETS, ISET, IND, NT)` | This | +subroutine can do everything that the subroutine SKCOMP can do, and +additionally, has the capabilities of separating the elements of IRAY into +categories and then search IRAY by element and category. +`SUBROUTINE SKPNT (LSAVE, LOUT, VERS, PREC, LENI, LENR, LENC, IERR)`| Reads +from a file information about a _Surface Kinetics_ Linking File, pointers for +the _Surface Kinetics_ Subroutine Library, and returns lengths of work arrays. +`SUBROUTINE SKSNUM (LINE, NEXP, LOUT, KNAM, KKTOT, PNAM, NNPHAS, KKPHAS, KNUM, NT, NVAL, RVAL, KERR)`| This subroutine is used to read a format-free input +line of combined alphanumeric data. It can be used to parse an input character +string, LINE, which may be composed of several blank-delimited substrings. +This subroutine assumes that the first substring in LINE is the name of a +species in the _Surface Kinetics_ mechanism. +`SUBROUTINE SKSAVE (LOUT, LSAVE, ISKWRK, RSKWRK, CSKWRK)` | Writes to a binary file information about a _Surface Kinetics_ Linking File, pointers for the _Surface Kinetics_ Subroutine Library, and _Surface Kinetics_ work arrays. + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1073967.md b/2026R1/chemkin_26-r1/articles/pgfId-1073967.md new file mode 100644 index 0000000000..b25d4f4140 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1073967.md @@ -0,0 +1,26 @@ +# User-programmed Reaction Rate Routines + +For both gas-phase and surface kinetics reaction mechanisms, users have the +option to provide custom reaction-rate formulations or to actually over-ride +the entire species rates-of-production calculations with a user-provided +subroutine. These options are described in more detail in [Chemkin Input Manual](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_in/chemkin_in.html). Briefly, to turn on user-programmed +rate routines, the user must include either `USRPROG`, or `USRPROD` auxiliary +keywords in the _Gas-phase Kinetics_ or _Surface Kinetics_ input file. The +`USRPROG ` option is entered after a specific reaction line, and serves to +override the rate-of-progress calculation for that particular reaction. The +`USRPROD ` option, however, is entered on the `REACTION` line and signals that +a user routine will provide calculation of all species net production rates, +regardless of the rest of the kinetics input in the file. + +For gas-phase chemistry, the applicable user routines for the `USRPROG ` and` USRPROD ` options are `CKUPROG` and `CKUPROD`, respectively. Templates for +these subroutines are provide in the FORTRAN file **cklib_user_routines.f**. + +For surface chemistry, the applicable user routines for the `USRPROG ` and` USRPROD ` options are `SKUPROG` and `SKUPROD`, respectively. Templates of +these subroutines are found in **sklib_user_routines.f**. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1074407.md b/2026R1/chemkin_26-r1/articles/pgfId-1074407.md new file mode 100644 index 0000000000..75e5dd7de2 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1074407.md @@ -0,0 +1,82 @@ +# User-programmed Subroutines in Reactor Models + +User-programmed subroutines (or functions) are used to provide flexibility in +specifying problem constraints that may involve an arbitrary function of time, +distance, or other reactor variable. Before employing user-subroutine options, +users should consider the various piece-wise linear profile options that are +readily available through the user interface and require no programming and +described in the [Chemkin Input Manual](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_in/chemkin_in.html) Input +Manual. These profile options provide similar flexibility to the user +routines, but do not require any programming, recompiling and/or linking of +code. + +For each user routine, there is an associated Input option in the associated +Reactor Model input panel, to activate the user routine from the user +interface. To view user routine options in the Ansys Chemkin interface, you +must first go to the Preferences panel (**Edit > Preferences**) and check the +box that says **Display User Routine Options**. Once this box is checked, when +you open a new input panel, any user-routine options will be displayed among +the other input options. When manually assembling Reactor Model Input files, +this corresponds to "keyword" that must be included in the input file, which +are described in the [Chemkin Input Manual](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_in/chemkin_in.html) +Input Manual. + +[Table 2.1: Keyword and FORTRAN Code Relationships](pgfId-1074407.md#i77953 "Table 2.1: Keyword and FORTRAN Code Relationships") lists the corresponding +keywords described in the [Chemkin Input Manual](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_in/chemkin_in.html) Input Manual with the name of the +subroutine or function that is turned on by this keyword, and the user routine +file in which a template of the function is found. Also listed is the +corresponding application program shared object (UNIX) or dynamically linked +library (PC) that is used when running the Reactor Model program. + +* * * + +**Note:** If a user replaces or modifies a shared-object's function, that +change will apply to all Reactor Models that employ that shared object, when +the user routine option is enabled. The table of reactor models (Reactor Class +Name column) associated with a particular shared object library (License +column) can be found in the _ReactorModels.csv_ file located in the data +directory of an Ansys Chemkin install. + +* * * + +**Table 2.1: Keyword and FORTRAN Code Relationships** + +| Keyword(s) | FORTRAN code | File name | Shared Object | +| ----------------------------------------------------- | ------------------------------------ | ---------------------- | ----------------------- | +| Always used unless other geometric keywords are given | SUBROUTINE PLGEOM | | | +| aurora_user_routines.f | PC: auroradll.dll UNIX: libaurora.so | | | +| UIGN | SUBROUTINE PSIGNT | aurora_user_routines.f | PC: auroradll.dll UNIX: | +libaurora.so +QFUNQFIX| FUNCTION PSQFUN| aurora_user_routines.f| PC: auroradll.dll UNIX: +libaurora.so +TTIMTFIX| SUBROUTINE PSTEMPT| aurora_user_routines.f| PC: auroradll.dll UNIX: +libaurora.so +VTIM| SUBROUTINE PSVOLT| aurora_user_routines.f| PC: auroradll.dll UNIX: +libaurora.so +QXFU| FUNCTION QTRX| aurora_user_routines.f| PC: auroradll.dll UNIX: +libaurora.so +USRIN| SUBROUTINE USRINLET| aurora_user_routines.f| PC: auroradll.dll UNIX: +libaurora.so +UPROF| SUBROUTINE CRUPROF| creslaf_user_routines.f| PC: creslafdll.dll UNIX: +libcreslaf.so +UTRN| SUBROUTINE CRUTRANS| creslaf_user_routines.f| PC: creslafdll.dll UNIX: +libcreslaf.so +QFUN| FUNCTION OPQFUN| oppdif_user_routines.f| PC: oppdifdll.dll UNIX: +liboppdif.so +UTRN| SUBROUTINE OPUTRANS| oppdif_user_routines.f| PC: oppdifdll.dll UNIX: +liboppdif.so +Always used unless keyword APRO is given| FUNCTION AREA| +premix_user_routines.f| PC: premixdll.dll UNIX: libpremix.so +QFUN| FUNCTION PRQFUN| premix_user_routines.f| PC: premixdll.dll UNIX: +libpremix.so +UTRN| SUBROUTINE PRUTRANS| premix_user_routines.f| PC: premixdll.dll UNIX: +libpremix.so + + + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1078341.md b/2026R1/chemkin_26-r1/articles/pgfId-1078341.md new file mode 100644 index 0000000000..cdbdb28d0a --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1078341.md @@ -0,0 +1,43 @@ +# Transport Sample Problem (PROPS) + +**PROPS** is an example FORTRAN program for directly accessing the _Transport_ +Subroutine Library. The interactive interface will prompt the user through a +command-line interface for input to define the requested calculation, or the +input can be provided by an input file, a sample of which is provided. The +user can request calculation of temperature-dependent pure-species values of: + + 1. Binary diffusion coefficient + + 2. Thermal conductivities + + 3. Viscosities + + 4. Kinematic viscosities + + 5. Constant-pressure specific heats + + 6. Constant-volume specific heats + + 7. Specific heat ratios + + 8. Isentropic speed of sound + +Also, if a previously generated solution is available, the user can +additionally request calculation of solution-dependent mixture values of: + + 9. Mixture-averaged diffusion coefficients + + 10. Ordinary multi-component diffusion coefficients + + 11. Thermal diffusion coefficients + + 12. Mixture thermal conductivities + + 13. Mixture viscosity + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1080354.md b/2026R1/chemkin_26-r1/articles/pgfId-1080354.md new file mode 100644 index 0000000000..b95ddd2bc2 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1080354.md @@ -0,0 +1,55 @@ +# Input to Gas-phase Kinetics Pre-processor + + + + ELEMENTS H N SI F + END + SPECIES + H2 H N2 N NH NH2 NNH N2H2 N2H3 N2H4 + HF F SIF4 SIF3 SIHF3 SIF3NH2 NH3 + END + + REACTIONS + H+H+M=H2+M 0.100E+19 -1.000 0.000 ! D-L + H2/0.0/ + H+H+H2=H2+H2 0.920E+17 -0.600 0.000 + NH+N=N2+H 0.300E+14 0.000 0.000 ! JAM + NH+H=N+H2 0.100E+15 0.000 0.000 ! NH3 CST + NH2+H=NH+H2 0.692E+14 0.000 3650.000 + NH3+H=NH2+H2 0.636E+06 2.390 10171.000 ! MICHAEL + NNH=N2+H 0.100E+05 0.000 0.000 ! JAM + NNH+H=N2+H2 0.100E+15 0.000 0.000 ! JAM + NNH+NH2=N2+NH3 0.500E+14 0.000 0.000 ! JAM + NNH+NH=N2+NH2 0.500E+14 0.000 0.000 ! JAM + NH2+NH=N2H2+H 0.500E+14 0.000 0.000 ! NH3CST + NH+NH=N2+H+H 0.254E+14 0.000 0.000 ! NH3 CST + NH2+N=N2+H+H 0.720E+14 0.000 0.000 ! PG + N2H2+M=NNH+H+M 0.500E+17 0.000 50000.000 ! NH3 CST + N2/2/ H2/2/ + N2H2+H=NNH+H2 0.500E+14 0.000 1000.000 ! NH3 CST + N2H2+NH=NNH+NH2 0.100E+14 0.000 1000.000 ! NH3 CST + N2H2+NH2=NH3+NNH 0.100E+14 0.000 1000.000 ! NH3 CST + NH2+NH2=N2H2+H2 0.500E+12 0.000 0.000 ! NH3 CST + NH3+M=NH2+H+M 0.140E+17 0.000 90600.000 ! MSGK + N2H3+H=NH2+NH2 1.60E+12 0.0 0.0 ! MSGK + N2H3+M=N2H2+H+M 3.50E+16 0.0 46000.0 ! MSGK + N2H3+NH=NH2+N2H2 2.00E+13 0.0 0.0 ! MSGK + NH2+NH2+M=N2H4+M 3.00E+20 -1.0 0.0 ! MSGK + H+N2H4=H2+N2H3 1.30E+13 0.0 2500.0 ! MSGK + NH2+N2H4=NH3+N2H3 3.90E+12 0.0 1500.0 ! MSGK + NH+H+M=NH2+M 2.00E+16 -0.5 0.0 ! MSGK + NH2+NH2=NH3+NH 5.00E+12 0.0 10000.0 ! MSGK + F+NH3=NH2+HF 4.27E+11 0.5 800.0 ! KONDRATIEV + SIF4=SIF3+F 3.00E+12 0.0 147170.0 ! PHO&MEC + H+SIF4=HF+SIF3 1.00E+13 0.0 50000.0 ! PHO&MEC + NH2+SIF4=SIF3NH2+F 1.00E+11 0.0 40950.0 ! GUESS + NH3+SIF3=SIF3NH2+H 1.00E+11 0.0 5000.0 ! GUESS + NH3+SIF3=SIHF3+NH2 1.00E+11 0.0 10000.0 ! PHO&MEC + END + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1080556.md b/2026R1/chemkin_26-r1/articles/pgfId-1080556.md new file mode 100644 index 0000000000..c48e09db4f --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1080556.md @@ -0,0 +1,67 @@ +# Output from Surface Kinetics Pre-processor + + + + + + ------------------------------------------------------------------------------- + SPECIES MOLECULAR ELEMENT COUNT + CONSIDERED WEIGHT Density Nsites H N SI F + ------------------------------------------------------------------------------- + + Gas phase species: + 1. H2 2.0159E+00 2 0 0 0 + 2. H 1.0080E+00 1 0 0 0 + 3. N2 2.8013E+01 0 2 0 0 + 4. N 1.4007E+01 0 1 0 0 + 5. NH 1.5015E+01 1 1 0 0 + 6. NH2 1.6023E+01 2 1 0 0 + 7. NNH 2.9021E+01 1 2 0 0 + 8. N2H2 3.0029E+01 2 2 0 0 + 9. N2H3 3.1037E+01 3 2 0 0 + 10. N2H4 3.2045E+01 4 2 0 0 + 11. HF 2.0006E+01 1 0 0 1 + 12. F 1.8998E+01 0 0 0 1 + 13. SIF4 1.0408E+02 0 0 1 4 + 14. SIF3 8.5081E+01 0 0 1 3 + 15. SIHF3 8.6089E+01 1 0 1 3 + 16. SIF3NH2 1.0110E+02 2 1 1 3 + 17. NH3 1.7031E+01 3 1 0 0 + + SITE: SI3N4 0.417E-08 moles/cm**2 + 18. NHSIF(S) 6.2099E+01 2 1 1 1 1 + 19. SIF3NH2(S) 1.0110E+02 2 2 1 1 3 + 20. SIF2NH(S) 8.1097E+01 2 1 1 1 2 + 21. NH2SIFNH(S) 7.8122E+01 2 3 2 1 1 + 22. NHSIFNHSIFNH(S) 1.3921E+02 4 3 3 2 2 + 23. NHNH2(S) 3.1037E+01 2 3 2 0 0 + + BULK: BULK1 + 24. SI(D) 2.8086E+01 2.066E+00 g/cm**3 0 0 1 0 + + BULK: BULK2 + 25. N(D) 1.4007E+01 1.374E+00 g/cm**3 0 1 0 0 + + ------------------------------------------------------------------------------- + (k = A T**b exp(-E/RT)) + SURFACE REACTIONS CONSIDERED A b E + + 1. NH3+NHSIF(S)=>NHNH2(S)+SI(D)+HF 7.56E+08 0.5 0.0 + 2. SIF4+NHNH2(S)=>SIF3NH2(S)+N(D)+HF 3.10E+08 0.5 0.0 + 3. SIF3NH2(S)=>SIF2NH(S)+HF 1.00E+05 0.0 0.0 + 4. NH3+SIF2NH(S)=>NH2SIFNH(S)+HF 7.56E+08 0.5 0.0 + 5. NH2SIFNH(S)+SIF2NH(S) 1.00E+15 0.0 0.0 + =>NHSIFNHSIFNH(S)+HF + 6. NHSIFNHSIFNH(S)+SIF2NH(S) 1.00E+15 0.0 0.0 + =>3NHSIF(S)+N(D)+HF + + NOTE: A units mole-cm-sec-K, E units cal/mole + + NO ERRORS FOUND ON INPUT: + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1081192.md b/2026R1/chemkin_26-r1/articles/pgfId-1081192.md new file mode 100644 index 0000000000..b9f4afd885 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1081192.md @@ -0,0 +1,294 @@ +# Output from Chemkin Sample Program (SKSAMPLE) + + + + INPUT INITIAL PRESSURE(ATM) AND TEMPERATURE(K) + 0.263E-02 0.171E+04 + + INPUT INITIAL ACTIVITY OF NEXT SPECIES + SIF4 0.14286 + + INPUT INITIAL ACTIVITY OF NEXT SPECIES + NH3 0.85714 + + INPUT INITIAL ACTIVITY OF NEXT SPECIES + NHSIF(S) 6.251E-2 + + INPUT INITIAL ACTIVITY OF NEXT SPECIES + NHNH2(S) 0.91587 + + INPUT INITIAL ACTIVITY OF NEXT SPECIES + SIF3NH2(S) 2.354E-4 + + INPUT INITIAL ACTIVITY OF NEXT SPECIES + SIF2NH(S) 2.0837E-2 + + INPUT INITIAL ACTIVITY OF NEXT SPECIES + NH2SIFNH(S) 1.806E-4 + + INPUT INITIAL ACTIVITY OF NEXT SPECIES + NHSIFNHSIFNH(S) 3.6127E-4 + + INPUT INITIAL ACTIVITY OF NEXT SPECIES + N(D) 1.0 + + INPUT INITIAL ACTIVITY OF NEXT SPECIES + SI(D) 1.0 + + INPUT INITIAL ACTIVITY OF NEXT SPECIES + END + + INPUT SURFACE AREA TO VOLUME RATIO + 0.600E+01 + + INPUT FINAL TIME AND DT + 0.500E-01 0.500E-02 + + TIME = 0.000000000000000E+000 + GAS-PHASE STATE + P = 2.6648E+03 T = 1.7130E+03 DENSITY = 5.5132E-07 + GAS-PHASE MOLE FRACTIONS + H2 = 0.000E+00 H = 0.000E+00 N2 = 0.000E+00 + N = 0.000E+00 NH = 0.000E+00 NH2 = 0.000E+00 + NNH = 0.000E+00 N2H2 = 0.000E+00 N2H3 = 0.000E+00 + N2H4 = 0.000E+00 HF = 0.000E+00 F = 0.000E+00 + SIF4 = 1.429E-01 SIF3 = 0.000E+00 SIHF3 = 0.000E+00 + SIF3NH2 = 0.000E+00 NH3 = 8.571E-01 + SURFACE SITE FRACTIONS ON PHASE (SITE) 2 + NHSIF(S) = 6.251E-02 SIF3NH2(S) = 2.354E-04 SIF2NH(S) = 2.084E-02 + NH2SIFNH(S) = 1.806E-04 NHSIFNHSIFNH= 3.613E-04 NHNH2(S) = 9.159E-01 + SUM OF SURFACE SITE FRACTIONS 1.000E+00 + SURFACE SITE DENSITY 4.168E-09 + BULK DEPOSITION (GM/CM**2) IN PHASE 3 + SI(D) = 0.000E+00 + BULK DEPOSITION (GM/CM**2) IN PHASE 4 + N(D) = 0.000E+00 + + TIME = 5.000000000000000E-003 + GAS-PHASE STATE + P = 3.0065E+03 T = 1.7130E+03 DENSITY = 4.8817E-07 + GAS-PHASE MOLE FRACTIONS + H2 = 2.704E-06 H = 2.254E-08 N2 = 1.863E-10 + N = 2.284E-14 NH = 3.420E-10 NH2 = 5.428E-06 + NNH = 1.422E-11 N2H2 = 3.396E-10 N2H3 = 1.230E-11 + N2H4 = 5.744E-13 HF = 2.829E-01 F = 3.559E-11 + SIF4 = 6.035E-02 SIF3 = 8.522E-11 SIHF3 = 2.630E-11 + SIF3NH2 = 1.277E-10 NH3 = 6.568E-01 + SURFACE SITE FRACTIONS ON PHASE (SITE) 2 + NHSIF(S) = 4.850E-02 SIF3NH2(S) = 1.534E-04 SIF2NH(S) = 1.291E-02 + NH2SIFNH(S) = 2.084E-04 NHSIFNHSIFNH= 4.171E-04 NHNH2(S) = 9.378E-01 + SUM OF SURFACE SITE FRACTIONS 1.000E+00 + SURFACE SITE DENSITY 4.168E-09 + BULK DEPOSITION (GM/CM**2) IN PHASE 3 + SI(D) = 4.700E-08 + BULK DEPOSITION (GM/CM**2) IN PHASE 4 + N(D) = 2.659E-08 + + TIME = 1.000000000000000E-002 + GAS-PHASE STATE + P = 3.1752E+03 T = 1.7130E+03 DENSITY = 4.5844E-07 + GAS-PHASE MOLE FRACTIONS + H2 = 5.055E-06 H = 2.264E-08 N2 = 2.256E-09 + N = 2.490E-13 NH = 1.807E-09 NH2 = 1.011E-05 + NNH = 7.943E-11 N2H2 = 1.742E-09 N2H3 = 5.209E-11 + N2H4 = 2.231E-12 HF = 4.074E-01 F = 1.104E-10 + SIF4 = 2.667E-02 SIF3 = 5.378E-11 SIHF3 = 4.881E-11 + SIF3NH2 = 2.443E-10 NH3 = 5.659E-01 + SURFACE SITE FRACTIONS ON PHASE (SITE) 2 + NHSIF(S) = 2.927E-02 SIF3NH2(S) = 7.350E-05 SIF2NH(S) = 6.970E-03 + NH2SIFNH(S) = 1.896E-04 NHSIFNHSIFNH= 3.797E-04 NHNH2(S) = 9.631E-01 + SUM OF SURFACE SITE FRACTIONS 1.000E+00 + SURFACE SITE DENSITY 4.168E-09 + BULK DEPOSITION (GM/CM**2) IN PHASE 3 + SI(D) = 7.497E-08 + BULK DEPOSITION (GM/CM**2) IN PHASE 4 + N(D) = 3.963E-08 + + TIME = 1.500000000000000E-002 + GAS-PHASE STATE + P = 3.2558E+03 T = 1.7130E+03 DENSITY = 4.4466E-07 + GAS-PHASE MOLE FRACTIONS + H2 = 7.295E-06 H = 2.281E-08 N2 = 8.864E-09 + N = 9.816E-13 NH = 4.684E-09 NH2 = 1.453E-05 + NNH = 1.978E-10 N2H2 = 4.189E-09 N2H3 = 1.147E-10 + N2H4 = 4.816E-12 HF = 4.647E-01 F = 1.958E-10 + SIF4 = 1.193E-02 SIF3 = 2.873E-11 SIHF3 = 6.054E-11 + SIF3NH2 = 3.091E-10 NH3 = 5.233E-01 + SURFACE SITE FRACTIONS ON PHASE (SITE) 2 + NHSIF(S) = 1.601E-02 SIF3NH2(S) = 3.431E-05 SIF2NH(S) = 3.499E-03 + NH2SIFNH(S) = 1.798E-04 NHSIFNHSIFNH= 3.600E-04 NHNH2(S) = 9.799E-01 + SUM OF SURFACE SITE FRACTIONS 1.000E+00 + SURFACE SITE DENSITY 4.168E-09 + BULK DEPOSITION (GM/CM**2) IN PHASE 3 + SI(D) = 8.990E-08 + BULK DEPOSITION (GM/CM**2) IN PHASE 4 + N(D) = 4.585E-08 + + TIME = 2.000000000000000E-002 + GAS-PHASE STATE + P = 3.2934E+03 T = 1.7130E+03 DENSITY = 4.3840E-07 + GAS-PHASE MOLE FRACTIONS + H2 = 9.524E-06 H = 2.306E-08 N2 = 2.265E-08 + N = 2.505E-12 NH = 9.016E-09 NH2 = 1.888E-05 + NNH = 3.679E-10 N2H2 = 7.662E-09 N2H3 = 1.994E-10 + N2H4 = 8.295E-12 HF = 4.914E-01 F = 2.798E-10 + SIF4 = 5.356E-03 SIF3 = 1.435E-11 SIHF3 = 6.631E-11 + SIF3NH2 = 3.429E-10 NH3 = 5.032E-01 + SURFACE SITE FRACTIONS ON PHASE (SITE) 2 + NHSIF(S) = 8.165E-03 SIF3NH2(S) = 1.573E-05 SIF2NH(S) = 1.670E-03 + NH2SIFNH(S) = 1.749E-04 NHSIFNHSIFNH= 3.502E-04 NHNH2(S) = 9.896E-01 + SUM OF SURFACE SITE FRACTIONS 1.000E+00 + SURFACE SITE DENSITY 4.168E-09 + BULK DEPOSITION (GM/CM**2) IN PHASE 3 + SI(D) = 9.750E-08 + BULK DEPOSITION (GM/CM**2) IN PHASE 4 + N(D) = 4.874E-08 + + TIME = 2.500000000000000E-002 + GAS-PHASE STATE + P = 3.3106E+03 T = 1.7130E+03 DENSITY = 4.3558E-07 + GAS-PHASE MOLE FRACTIONS + H2 = 1.178E-05 H = 2.339E-08 N2 = 4.629E-08 + N = 5.001E-12 NH = 1.472E-08 NH2 = 2.322E-05 + NNH = 5.909E-10 N2H2 = 1.220E-08 N2H3 = 3.066E-10 + N2H4 = 1.267E-11 HF = 5.038E-01 F = 3.595E-10 + SIF4 = 2.405E-03 SIF3 = 6.877E-12 SIHF3 = 6.908E-11 + SIF3NH2 = 3.599E-10 NH3 = 4.937E-01 + SURFACE SITE FRACTIONS ON PHASE (SITE) 2 + NHSIF(S) = 3.963E-03 SIF3NH2(S) = 7.140E-06 SIF2NH(S) = 7.736E-04 + NH2SIFNH(S) = 1.725E-04 NHSIFNHSIFNH= 3.455E-04 NHNH2(S) = 9.947E-01 + SUM OF SURFACE SITE FRACTIONS 1.000E+00 + SURFACE SITE DENSITY 4.168E-09 + BULK DEPOSITION (GM/CM**2) IN PHASE 3 + SI(D) = 1.012E-07 + BULK DEPOSITION (GM/CM**2) IN PHASE 4 + N(D) = 5.006E-08 + + TIME = 3.000000000000000E-002 + GAS-PHASE STATE + P = 3.3184E+03 T = 1.7130E+03 DENSITY = 4.3431E-07 + GAS-PHASE MOLE FRACTIONS + H2 = 1.408E-05 H = 2.380E-08 N2 = 8.252E-08 + N = 8.522E-12 NH = 2.167E-08 NH2 = 2.756E-05 + NNH = 8.688E-10 N2H2 = 1.786E-08 N2H3 = 4.368E-10 + N2H4 = 1.794E-11 HF = 5.095E-01 F = 4.354E-10 + SIF4 = 1.080E-03 SIF3 = 3.211E-12 SIHF3 = 7.037E-11 + SIF3NH2 = 3.683E-10 NH3 = 4.894E-01 + SURFACE SITE FRACTIONS ON PHASE (SITE) 2 + NHSIF(S) = 1.861E-03 SIF3NH2(S) = 3.222E-06 SIF2NH(S) = 3.526E-04 + NH2SIFNH(S) = 1.714E-04 NHSIFNHSIFNH= 3.433E-04 NHNH2(S) = 9.973E-01 + SUM OF SURFACE SITE FRACTIONS 1.000E+00 + SURFACE SITE DENSITY 4.168E-09 + BULK DEPOSITION (GM/CM**2) IN PHASE 3 + SI(D) = 1.030E-07 + BULK DEPOSITION (GM/CM**2) IN PHASE 4 + N(D) = 5.066E-08 + + TIME = 3.500000000000000E-002 + GAS-PHASE STATE + P = 3.3220E+03 T = 1.7130E+03 DENSITY = 4.3374E-07 + GAS-PHASE MOLE FRACTIONS + H2 = 1.643E-05 H = 2.429E-08 N2 = 1.342E-07 + N = 1.300E-11 NH = 2.974E-08 NH2 = 3.191E-05 + NNH = 1.203E-09 N2H2 = 2.465E-08 N2H3 = 5.901E-10 + N2H4 = 2.413E-11 HF = 5.121E-01 F = 5.086E-10 + SIF4 = 4.849E-04 SIF3 = 1.476E-12 SIHF3 = 7.096E-11 + SIF3NH2 = 3.723E-10 NH3 = 4.874E-01 + SURFACE SITE FRACTIONS ON PHASE (SITE) 2 + NHSIF(S) = 8.564E-04 SIF3NH2(S) = 1.450E-06 SIF2NH(S) = 1.594E-04 + NH2SIFNH(S) = 1.709E-04 NHSIFNHSIFNH= 3.422E-04 NHNH2(S) = 9.985E-01 + SUM OF SURFACE SITE FRACTIONS 1.000E+00 + SURFACE SITE DENSITY 4.168E-09 + BULK DEPOSITION (GM/CM**2) IN PHASE 3 + SI(D) = 1.038E-07 + BULK DEPOSITION (GM/CM**2) IN PHASE 4 + N(D) = 5.093E-08 + + TIME = 4.000000000000000E-002 + GAS-PHASE STATE + P = 3.3236E+03 T = 1.7130E+03 DENSITY = 4.3349E-07 + GAS-PHASE MOLE FRACTIONS + H2 = 1.884E-05 H = 2.486E-08 N2 = 2.041E-07 + N = 1.831E-11 NH = 3.881E-08 NH2 = 3.625E-05 + NNH = 1.596E-09 N2H2 = 3.262E-08 N2H3 = 7.664E-10 + N2H4 = 3.121E-11 HF = 5.132E-01 F = 5.803E-10 + SIF4 = 2.177E-04 SIF3 = 6.732E-13 SIHF3 = 7.123E-11 + SIF3NH2 = 3.743E-10 NH3 = 4.865E-01 + SURFACE SITE FRACTIONS ON PHASE (SITE) 2 + NHSIF(S) = 3.895E-04 SIF3NH2(S) = 6.515E-07 SIF2NH(S) = 7.180E-05 + NH2SIFNH(S) = 1.707E-04 NHSIFNHSIFNH= 3.418E-04 NHNH2(S) = 9.990E-01 + SUM OF SURFACE SITE FRACTIONS 1.000E+00 + SURFACE SITE DENSITY 4.168E-09 + BULK DEPOSITION (GM/CM**2) IN PHASE 3 + SI(D) = 1.041E-07 + BULK DEPOSITION (GM/CM**2) IN PHASE 4 + N(D) = 5.105E-08 + + TIME = 4.500000000000000E-002 + GAS-PHASE STATE + P = 3.3243E+03 T = 1.7130E+03 DENSITY = 4.3337E-07 + GAS-PHASE MOLE FRACTIONS + H2 = 2.131E-05 H = 2.553E-08 N2 = 2.953E-07 + N = 2.427E-11 NH = 4.878E-08 NH2 = 4.060E-05 + NNH = 2.047E-09 N2H2 = 4.177E-08 N2H3 = 9.658E-10 + N2H4 = 3.920E-11 HF = 5.138E-01 F = 6.511E-10 + SIF4 = 9.773E-05 SIF3 = 3.069E-13 SIHF3 = 7.135E-11 + SIF3NH2 = 3.752E-10 NH3 = 4.861E-01 + SURFACE SITE FRACTIONS ON PHASE (SITE) 2 + NHSIF(S) = 1.760E-04 SIF3NH2(S) = 2.926E-07 SIF2NH(S) = 3.228E-05 + NH2SIFNH(S) = 1.706E-04 NHSIFNHSIFNH= 3.416E-04 NHNH2(S) = 9.993E-01 + SUM OF SURFACE SITE FRACTIONS 1.000E+00 + SURFACE SITE DENSITY 4.168E-09 + BULK DEPOSITION (GM/CM**2) IN PHASE 3 + SI(D) = 1.043E-07 + BULK DEPOSITION (GM/CM**2) IN PHASE 4 + N(D) = 5.111E-08 + + TIME = 5.000000000000000E-002 + GAS-PHASE STATE + P = 3.3246E+03 T = 1.7130E+03 DENSITY = 4.3332E-07 + GAS-PHASE MOLE FRACTIONS + H2 = 2.386E-05 H = 2.628E-08 N2 = 4.107E-07 + N = 3.071E-11 NH = 5.957E-08 NH2 = 4.494E-05 + NNH = 2.558E-09 N2H2 = 5.211E-08 N2H3 = 1.188E-09 + N2H4 = 4.810E-11 HF = 5.140E-01 F = 7.215E-10 + SIF4 = 4.387E-05 SIF3 = 1.412E-13 SIHF3 = 7.140E-11 + SIF3NH2 = 3.756E-10 NH3 = 4.859E-01 + SURFACE SITE FRACTIONS ON PHASE (SITE) 2 + NHSIF(S) = 7.928E-05 SIF3NH2(S) = 1.314E-07 SIF2NH(S) = 1.450E-05 + NH2SIFNH(S) = 1.705E-04 NHSIFNHSIFNH= 3.415E-04 NHNH2(S) = 9.994E-01 + SUM OF SURFACE SITE FRACTIONS 1.000E+00 + SURFACE SITE DENSITY 4.168E-09 + BULK DEPOSITION (GM/CM**2) IN PHASE 3 + SI(D) = 1.044E-07 + BULK DEPOSITION (GM/CM**2) IN PHASE 4 + N(D) = 5.113E-08 + + TIME = 5.000000000000000E-002 + GAS-PHASE STATE + P = 3.3246E+03 T = 1.7130E+03 DENSITY = 4.3332E-07 + GAS-PHASE MOLE FRACTIONS + H2 = 2.386E-05 H = 2.628E-08 N2 = 4.107E-07 + N = 3.071E-11 NH = 5.957E-08 NH2 = 4.494E-05 + NNH = 2.558E-09 N2H2 = 5.211E-08 N2H3 = 1.188E-09 + N2H4 = 4.810E-11 HF = 5.140E-01 F = 7.215E-10 + SIF4 = 4.387E-05 SIF3 = 1.412E-13 SIHF3 = 7.140E-11 + SIF3NH2 = 3.756E-10 NH3 = 4.859E-01 + SURFACE SITE FRACTIONS ON PHASE (SITE) 2 + NHSIF(S) = 7.928E-05 SIF3NH2(S) = 1.314E-07 SIF2NH(S) = 1.450E-05 + NH2SIFNH(S) = 1.705E-04 NHSIFNHSIFNH= 3.415E-04 NHNH2(S) = 9.994E-01 + SUM OF SURFACE SITE FRACTIONS 1.000E+00 + SURFACE SITE DENSITY 4.168E-09 + + BULK DEPOSITION (GM/CM**2) IN PHASE 3 + SI(D) = 1.044E-07 + BULK DEPOSITION (GM/CM**2) IN PHASE 4 + N(D) = 5.113E-08 + STOP...TIME LIMIT REACHED... + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1082370.md b/2026R1/chemkin_26-r1/articles/pgfId-1082370.md new file mode 100644 index 0000000000..eeaed12369 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1082370.md @@ -0,0 +1,43 @@ +# Input to Gas-phase Kinetics Pre-processor + + + + ELEMENTS H O N END + SPECIES H2 H O2 O OH HO2 H2O2 H2O N N2 NO END + REACTIONS + H2+O2=2OH 0.170E+14 0.00 47780 + OH+H2=H2O+H 0.117E+10 1.30 3626 ! D-L&W + O+OH=O2+H 0.400E+15 -0.50 0 ! JAM 1986 + O+H2=OH+H 0.506E+05 2.67 6290 ! KLEMM,ET AL + H+O2+M=HO2+M 0.361E+18 -0.72 0 ! DIXON-LEWIS + H2O/18.6/ H2/2.86/ N2/1.26/ + OH+HO2=H2O+O2 0.750E+13 0.00 0 ! D-L + H+HO2=2OH 0.140E+15 0.00 1073 ! D-L + O+HO2=O2+OH 0.140E+14 0.00 1073 ! D-L + 2OH=O+H2O 0.600E+09 1.30 0 ! COHEN-WEST. + H+H+M=H2+M 0.100E+19 -1.00 0 ! D-L + H2O/0.0/ H2/0.0/ + H+H+H2=H2+H2 0.920E+17 -0.60 0 + H+H+H2O=H2+H2O 0.600E+20 -1.25 0 + H+OH+M=H2O+M 0.160E+23 -2.00 0 ! D-L + H2O/5/ + H+O+M=OH+M 0.620E+17 -0.60 0 ! D-L + H2O/5/ + + O+O+M=O2+M 0.189E+14 0.00 -1788 ! NBS + H+HO2=H2+O2 0.125E+14 0.00 0 ! D-L + HO2+HO2=H2O2+O2 0.200E+13 0.00 0 + H2O2+M=OH+OH+M 0.130E+18 0.00 45500 + H2O2+H=HO2+H2 0.160E+13 0.00 3800 + H2O2+OH=H2O+HO2 0.100E+14 0.00 1800 + O+N2=NO+N 0.140E+15 0.00 75800 + N+O2=NO+O 0.640E+10 1.00 6280 + OH+N=NO+H 0.400E+14 0.00 0 + END + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1082404.md b/2026R1/chemkin_26-r1/articles/pgfId-1082404.md new file mode 100644 index 0000000000..cd77f38ac9 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1082404.md @@ -0,0 +1,82 @@ +# Output from Gas-phase Kinetics Pre-processor + + + + -------------------- + ELEMENTS ATOMIC + CONSIDERED WEIGHT + -------------------- + 1. H 1.00797 + 2. O 15.9994 + 3. N 14.0067 + -------------------- + ------------------------------------------------------------------------------- + C + P H + H A + A R + SPECIES S G MOLECULAR TEMPERATURE ELEMENT COUNT + CONSIDERED E E WEIGHT LOW HIGH H O N + + ------------------------------------------------------------------------------- + 1. H2 G 0 2.0159E+00 300 5000 2 0 0 + 2. H G 0 1.0080E+00 300 5000 1 0 0 + 3. O2 G 0 3.1999E+01 300 5000 0 2 0 + 4. O G 0 1.5999E+01 300 5000 0 1 0 + 5. OH G 0 1.7007E+01 300 5000 1 1 0 + 6. HO2 G 0 3.3007E+01 300 5000 1 2 0 + 7. H2O2 G 0 3.4015E+01 300 5000 2 2 0 + 8. H2O G 0 1.8015E+01 300 5000 2 1 0 + 9. N G 0 1.4007E+01 300 5000 0 0 1 + 10. N2 G 0 2.8013E+01 300 5000 0 0 2 + 11. NO G 0 3.0006E+01 300 5000 0 1 1 + ------------------------------------------------------------------------------- + + + + (k = A T**b exp(-E/RT)) + + REACTIONS CONSIDERED A b E + + 1. H2+O2=2OH 1.70E+13 0.0 47780.0 + 2. OH+H2=H2O+H 1.17E+09 1.3 3626.0 + 3. O+OH=O2+H 4.00E+14 -0.5 0.0 + 4. O+H2=OH+H 5.06E+04 2.7 6290.0 + 5. H+O2+M=HO2+M 3.61E+17 -0.7 0.0 + H2O Enhanced by 1.860E+01 + H2 Enhanced by 2.860E+00 + N2 Enhanced by 1.260E+00 + 6. OH+HO2=H2O+O2 7.50E+12 0.0 0.0 + 7. H+HO2=2OH 1.40E+14 0.0 1073.0 + 8. O+HO2=O2+OH 1.40E+13 0.0 1073.0 + 9. 2OH=O+H2O 6.00E+08 1.3 0.0 + 10. H+H+M=H2+M 1.00E+18 -1.0 0.0 + H2O Enhanced by 0.000E+00 + H2 Enhanced by 0.000E+00 + 11. H+H+H2=H2+H2 9.20E+16 -0.6 0.0 + 12. H+H+H2O=H2+H2O 6.00E+19 -1.2 0.0 + 13. H+OH+M=H2O+M 1.60E+22 -2.0 0.0 + H2O Enhanced by 5.000E+00 + 14. H+O+M=OH+M 6.20E+16 -0.6 0.0 + H2O Enhanced by 5.000E+00 + 15. O+O+M=O2+M 1.89E+13 0.0 -1788.0 + 16. H+HO2=H2+O2 1.25E+13 0.0 0.0 + 17. HO2+HO2=H2O2+O2 2.00E+12 0.0 0.0 + 18. H2O2+M=OH+OH+M 1.30E+17 0.0 45500.0 + 19. H2O2+H=HO2+H2 1.60E+12 0.0 3800.0 + 20. H2O2+OH=H2O+HO2 1.00E+13 0.0 1800.0 + 21. O+N2=NO+N 1.40E+14 0.0 75800.0 + 22. N+O2=NO+O 6.40E+09 1.0 6280.0 + 23. OH+N=NO+H 4.00E+13 0.0 0.0 + + NOTE: A units mole-cm-sec-K, E units cal/mole + + + NO ERRORS FOUND ON INPUT: + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1085459.md b/2026R1/chemkin_26-r1/articles/pgfId-1085459.md new file mode 100644 index 0000000000..6da68e0afd --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1085459.md @@ -0,0 +1,74 @@ +# Gas-phase Kinetics Sample Program (CONP) + +**CONP** is an example of a FORTRAN or C++ program directly accessing the +_Gas-phase Kinetics_ Subroutine Library. Before coding such an executable for +_Gas-phase Kinetics_ , the user must (1) define a system of governing +equations, (2) define a reaction mechanism, and (3) choose a solution method. +In this sample problem we will solve the equations describing constant +pressure combustion for a hydrogen-air reaction mechanism. + +The governing energy and mass conservation equations are: + +| ![](graphics/pgfId-1082323.svg) | **(3 -1)** | +| ------------------------------- | ---------- | +| ![](graphics/pgfId-1082327.svg) | **(3 -2)** | +| --- | --- | + +where _T_ is temperature and _Y_ k are the mass fractions of the _K_ species +involved. The independent variable _t_ is time. Other variables are +![](graphics/eq94145639-5428-9408-0097-750516216714.svg), mass density; +![](graphics/eq03264786-8361-4440-2381-340366913365.svg), mean specific heat +at constant pressure; +![](graphics/eqe2d9dbca-336f-447f-83fb-3656649736f2.svg), the specific +enthalpies of the species; +![](graphics/eq62007473-9062-9073-0608-023265774922.svg), the molar production +rates of the species; and +![](graphics/eqd20e881e-03da-47eb-95f2-0e8935b5cd71.svg), the molecular +weights of the species. + +The governing system of ordinary differential equations and accompanying +initial conditions form an initial value problem. The equations will be solved +using VODE.[1] We find this solver to be reliable for the solution of a wide +range of stiff initial-value problems. The source code for the solver is +provided in the Chemkin subdirectory _source_public\vode.f_ (PC), +_source_public/vode.f_ (UNIX), which is extensively commented as to its +implementation. + +The FORTRAN implementation for the solution of the sample problem is provided +in the Ansys Chemkin subdirectory _samples +\sample_apps_f77\conp_ (PC), _samples +/sample_apps_f77/conp_ (UNIX), and a C++ implementation in +_samples \sample_apps_cpp\conp_ (PC), _samples +/sample_apps_cpp/conp_ (UNIX). After initializing _Gas-phase +Kinetics_ , the program reads the initial nonzero moles from input. It then +repeatedly calls subroutine `VODE` to obtain the solution at uniform print +intervals. The governing equation formulation is found in `SUBROUTINE FUN`, +which is called by `VODE`. + +* * * + +**Note:** When using this example, you must (i) ensure FLEXLM_ARCH is set +(see [Recompiling and Linking a User Subroutine](i71111.md "2.1.3. +Recompiling and Linking a User Subroutine") ) and (ii) edit the .inc makefile +so that the CKROOT variable is set to the location of your Ansys Chemkin +installation (see [Compile and Link](pgfId-1085750.md#i60052 "3.1.1.6. +Compile and Link") ). + +* * * + +The sections below present _Gas-phase Kinetics_ Pre-processor input and output +for the sample problem, and the input and output for the `CONP` execution. + + + +* * * + +[1] P. N. Brown, G. D. Byrne, and A. C. Hindmarsh, SIAM J. Sci. Stat. Comput. +**10** :1038 (1989). + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1085750.md b/2026R1/chemkin_26-r1/articles/pgfId-1085750.md new file mode 100644 index 0000000000..817f54aad1 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1085750.md @@ -0,0 +1,142 @@ +# Requirements for Writing a FORTRAN Program + +## Declare Variable Types + +Inclusion of the statement `DOUBLE PRECISION (A-H, O-Z), INTEGER (I-N)` will +automatically assign a variable type depending on its initial character, else +each variable must be explicitly typed, that is, + + + + INTEGER KK + DOUBLE PRECISION RHO + CHARACTER*16 KNAME + +* * * + +**Note:** A `CHARACTER` type must also establish a character-string length. + +* * * + +## Allocate Arrays + +Arrays specific to a mechanism Linking File may be allocated by an estimate of +its requirements, shown as: + + + + PARAMETER (LENIWK=1000, LENRWK=1000, LENCWK=500, LENSYM=16) + DIMENSION ICKWRK(LENIWK) + DIMENSION RCKWRK(LENRWK) + CHARACTER*(LENSYM) CCKWRK(LENCWK) + +If the Linking File has been opened (see [Open the Linking File](pgfId-1085750.md#i28694 "3.1.1.3. Open the Linking File") ), the exact +requirements may be obtained by the Ansys Chemkin subroutine call `CALL CKLEN (LINKCK,LENI,LENR,LENC,IFLAG)` in order to check that sufficient memory has +been allocated. + +## Open the Linking File + +An integer FORTRAN unit number is assigned to the existing Linking File`; IFLAG` will be non-zero on return if there was an error, as shown: + + + + LINKCK = 25 + IFLAG = 0 + OPEN(UNIT=LINKCK,FORM='FORMATTED',STATUS='OLD',FILE='chem.asc',IOS=IFLAG) + +## Initialize the Linking File Data + +Messages from the subroutine will be sent to a screen or window by assigning +output to FORTRAN unit 6, as shown: + + + + LOUT=6 + IFLAG=0 + CALL CKINIT (LENICK,LENRCK,LENCCK,LINKCK,LOUT,ICKWRK,RCKWRK,CCKWRK,IFLAG) + +## Obtain or Manipulate Data + +After the Linking File data has been stored into the Ansys Chemkin work +arrays, they are the means by which further information about the mechanism is +obtained, or data manipulation facilitated. + + + + CALL CKINDX (ICKWRK,RCKWRK,MM,KK,II,NFIT) + +where `MM` is the `ELEMENTS` count of the mechanism, `KK` is the `SPECIES` +count, `II` is the `REACTIONS` count and `NFIT` is the number of _C_ p +polynomial coefficients for the species. + + + + CALL CKWT (ICKWRK,RCKWRK,WT) + +where `DOUBLE PRECISION WT(KK)` is initialized with the KK species' molecular +weights. + + + + CKXTY (X,ICKWRK,RCKWRK,Y) + +Converts `DOUBLE PRECISION X(1..KK)` mole fractions to `DOUBLE PRECISION Y(1..KK)` mass fractions for the `KK` species. + +## Compile and Link + +The Ansys Chemkin installation file _include/chemkin_make_unix.inc_ +(_include\chemkin_make_pc.inc_ for PC), defines make (**nmake**) macros for +required compile and link flags, as well as library names and locations. You +MUST use this installation file when compiling your own code to ensure that +the compiler directives are consistent with those used in Chemkin, and to +avoid errors during linking. A user makefile can set a few additional macros +to compile and link a program; the user macro, `CKROOT` for example, must be +defined as the root location of your Chemkin installation. Since `CKROOT` must +not contain any spaces, you may need to use directory short names for Windows +Installations. For example, rather than: + +`CKROOT = Program Files\ANSYS Inc\V251\reaction` + +you will need to use something like + +`CKROOT = c:\progra~1\ANSY~1\v251\reaction` + +You can determine the short name for directories by using the Windows DOS +command: + + + + dir /x~ + + !include $(CKROOT)\include\chemkin_make_pc.inc + ALL : MY_EXE + MY_OBJ = my_program$(OBJECT) + MY_EXE: $(MY_OBJ) + $(LINK) $? $(F77_LIBFLAGS) \ + $(CHEMKIN_LIBRARY) $(CHEMKIN_USER_LIBRARY) \ + $(CHEMKIN_PUB_LIBRARY) $(F77_SYSTEM_LIBS) + +If CKROOT is not defined as an environment variable already, the Ansys Chemkin +make file will use its own CKROOT definition. All the other directories +(include, bin, etc.) are referenced using a relative path based on CKROOT. + +There are two general scenarios about how CKROOT has to be set: + + 1. The first is that the entire Ansys Chemkin file structure is intact when you try to rebuild some DLL or executable. Even if you are not working in the original Chemkin installation, as long as all the other Chemkin directories (bin, include, etc.) are under the same parent directory as the build directory, you do not need to set CKROOT. The make file will use the default setting of '..' and you can commit a make with the command + + > nmake -f drivers_cpp_pc.mak ..\bin\premixdll.dll + +Please note that the definition of CKROOT as '..' enables the use of +"..\bin\premixdll.dll" as the target. If you have defined CKROOT as +`"c:\progra~1\ANSY~1\v251\reaction"`, you have to use +`"c:\progra~1\ANSY~1\v251\reaction\chemkinpro.win64\bin\premixdll.dll"` as the +target instead. + + 2. If you have installed the sample directories in a separate location, when you try to rebuild the samples, you will need to re-define CKROOT in the make files of the sample to point it to the Ansys Chemkin installation. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1085808.md b/2026R1/chemkin_26-r1/articles/pgfId-1085808.md new file mode 100644 index 0000000000..716807b2e0 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1085808.md @@ -0,0 +1,120 @@ +# Requirements for Writing a C++ Program + +C prototypes are required for calling the Ansys Chemkin FORTRAN subroutines +from C or C++. To call Chemkin FORTRAN subroutines from C or C++ requires an +interface consisting of the file _include\chemkin.h_ (PC) or +_include/chemkin.h_ (UNIX), containing the C++/FORTRAN prototype for some +commonly required utilities. + +## Declare Variable Types + +A variable must be explicitly typed; in general, the sample programs use a +variable name initial character indicative of its type, that is, + + + + int iSpeciesCount; + double dRho; + int iLensym = 16; + char *sSpeciesName = new char [ iLensym + 1 ]; + +The character-string length of a chemical species name is usually 16, plus one +additional character for a character-string terminator. + +## Allocate Arrays + +Arrays specific to a mechanism Linking File may be allocated by an estimate of +its requirements, but with C++ it is possible to determine the requirements +first, that is, if the Linking File has been opened (see [Open the Linking File](pgfId-1085808.md#i44314 "3.1.2.3. Open the Linking File") ). + + + + CKLEN (iLinkCK,iLeniCK,iLenrCK,iLencCK,iFlag); + int *iICKwrk = new int [ iLeniCK ]; + double *dRCKwrk = new double [ iLenrCK ]; + int iLensym = 16; + char *sCCKwrk = new char [ iLencCK*iLensym + 1 ]; + +## Open the Linking File + +An interface to the FORTRAN `OPEN` is used to allow FORTRAN `READ` of the +Linking File: iFlag will be non-zero on return if there was an error. + + + + int iLinkCK=25; + int iFlag=0; + CCOPEN ((char *)"chem.asc", (char *)"FORMATTED", (char *)"OLD", iLinkCK, + iFlag); + +## Initialize the Linking File Data + +Messages from the subroutine will be sent to a screen or window by assigning +output to `stdout`. + + + + int iLout=stdout; + int iFlag=0; + CKINIT(iLeniCK,iLenrCK,iLencCK,iLinkCK,iLout,iICKwrk,dRCKwrk,sCCKWRK,iFlag); + +## Obtain or Manipulate Data + +After the Linking File data has been stored into the Ansys Chemkin work +arrays, they are the means by which further information about the mechanism is +obtained, or data manipulation facilitated. + + + + CKINDX (iICKwrk,dRCKwrk,iElementCount,iSpeciesCount,iReactionCount,iCpfitCount); + +where `iElementCount` is the `ELEMENTS` count of the mechanism, +`iSpeciesCount` is the `SPECIES` count, `iReactionCount` is the `REACTIONS` +count, and `iCpFitCount` is the number of _C_ p polynomial coefficients for +the species. + + + + CKWT (iICKwrk,dRCKwrk,dMolecularWeights); + +where double `*dMolecularWeights` = `new double [iSpeciesCount];` + + + + CKXTY (X,ICKWRK,RCKWRK,Y) + +converts `double X[0..iSpeciesCount-1]` mole fractions to `double Y[0..iSpeciesCount-1]` mass fractions for the `iSpeciesCount` species. + +## Compile and Link + +The Ansys Chemkin installation file _/include/chemkin_make_unix.inc_ +(_\include\chemkin_make_pc.inc_ for PC), defines make (**nmake**) macros for +required compile and link flags, and library names and locations. A user +makefile can set a few additional macros to compile and link a program; the +user macro, `CKROOT` for example, must be defined as the root location of +Chemkin. + +If CKROOT is not defined as an environment variable already, the Ansys Chemkin +make file will use its own CKROOT definition. All the other directories +(include, bin, etc.) are referenced using a relative path based on CKROOT. + +There are two general scenarios about how CKROOT has to be set: + + 1. The first is that the entire Ansys Chemkin file structure is intact when you try to rebuild some DLL or executable. Even if you are not working in the original Chemkin installation, as long as all the other Chemkin directories (bin, include, etc.) are under the same parent directory as the build directory, you do not need to set CKROOT. The make file will use the default setting of '..' and you can use commit a make with the command + + > nmake -f drivers_cpp_pc.mak ..\bin\premixdll.dll + +Please note that the definition of CKROOT as '..' enables the use of +"..\bin\premixdll.dll" as the target. If you have defined CKROOT as +"c:\progra~1\ANSY~1\v251\reaction\chemkinpro.win64", you have to use +"c:\progra~1\ANSY~1\v251\reaction\chemkinpro.win64\bin\premixdll.dll" as +target instead. + + 2. If you have installed the sample directories in a separate location, when you try to rebuild the samples, you must set up your Ansys Chemkin environment. See [Ansys Chemkin Windows Environment](../chemkin_gs/i402616476512363.md) Section 4.1 or [Chemkin Linux Environment](../chemkin_gs/i09523049683946.md) Section 4.2 of the [Chemkin Getting Started Guide](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_gs/chemkin_gs.html) (depending on whether you are using a Windows or Linux platform). + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1089398.md b/2026R1/chemkin_26-r1/articles/pgfId-1089398.md new file mode 100644 index 0000000000..113c12c072 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1089398.md @@ -0,0 +1,25 @@ +# Input to Chemkin Sample Program (SKSAMPLE) + + + + 2.63e-3 1713 + SIF4 0.14286 + NH3 0.85714 + NHSIF(S) 6.251E-2 + NHNH2(S) 0.91587 + SIF3NH2(S) 2.354E-4 + SIF2NH(S) 2.0837E-2 + NH2SIFNH(S) 1.806E-4 + NHSIFNHSIFNH(S) 3.6127E-4 + N(D) 1.0 + SI(D) 1.0 + END + 6.0 + 5.0E-2 5.0E-3 + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1091838.md b/2026R1/chemkin_26-r1/articles/pgfId-1091838.md new file mode 100644 index 0000000000..2be6f71fe4 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1091838.md @@ -0,0 +1,34 @@ +# CKABE + + + + CKABE CKABE CKABE CKABE CKABE CKABE CKABE + ********************************************** + ************************** + ****** + + SUBROUTINE CKABE (ICKWRK, RCKWRK, RA, RB, RE) + Returns the Arrhenius coefficients of the reactions. + + INPUT + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + RA(*) - Real array, pre-exponential constants for reactions; + dimension at least II, the total reaction count. + cgs units, mole-cm-sec-K + RB(*) - Real array, temperature dependence exponents for + reactions; + dimension at least II, total reaction count. + cgs units none + RE(*) - Real array, activation energies for reactions; + dimension at least II, the total reaction count. + cgs units, K + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1091864.md b/2026R1/chemkin_26-r1/articles/pgfId-1091864.md new file mode 100644 index 0000000000..55766ed446 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1091864.md @@ -0,0 +1,35 @@ +# CKABML + + + + CKABML CKABML CKABML CKABML CKABML CKABML CKABML + ********************************************** + ************************** + ****** + + SUBROUTINE CKABML (P, T, X, ICKWRK, RCKWRK, ABML) + Returns the Helmholtz free energy of the mixture in molar units + given pressure, temperature(s), and mole fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + ABML - Real scalar, mean Helmholtz free energy. + cgs units, ergs/mole + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1091891.md b/2026R1/chemkin_26-r1/articles/pgfId-1091891.md new file mode 100644 index 0000000000..d81753cbb7 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1091891.md @@ -0,0 +1,35 @@ +# CKABMS + + + + CKABMS CKABMS CKABMS CKABMS CKABMS CKABMS CKABMS + ********************************************** + ************************** + ****** + + SUBROUTINE CKABMS (P, T, Y, ICKWRK, RCKWRK, ABMS) + Returns the mean Helmholtz free energy of the mixture in mass units + given pressure, temperature(s) and mass fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + Y(*) - Real array, mass fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + ABMS - Real scalar, mean Helmholtz free energy. + cgs units, ergs/gm + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1091918.md b/2026R1/chemkin_26-r1/articles/pgfId-1091918.md new file mode 100644 index 0000000000..1e440f70f2 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1091918.md @@ -0,0 +1,32 @@ +# CKAML + + + + CKAML CKAML CKAML CKAML CKAML CKAML CKAML + ********************************************** + ************************** + ****** + + SUBROUTINE CKAML (T, ICKWRK, RCKWRK, AML) + Returns the standard state Helmholtz free energies in molar units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + AML(*) - Real array, standard state Helmholtz free energies + for species; + dimension at least KK, the total species count. + cgs units, ergs/mole + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1091942.md b/2026R1/chemkin_26-r1/articles/pgfId-1091942.md new file mode 100644 index 0000000000..49ee3678b9 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1091942.md @@ -0,0 +1,32 @@ +# CKAMS + + + + CKAMS CKAMS CKAMS CKAMS CKAMS CKAMS CKAMS + ********************************************** + ************************** + ****** + + SUBROUTINE CKAMS (T, ICKWRK, RCKWRK, AMS) + Returns the standard state Helmholtz free energies in mass units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + AMS(*) - Real array, standard state Helmholtz free energies + for species; + dimension at least KK, the total species count. + cgs units, ergs/gm + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1091966.md b/2026R1/chemkin_26-r1/articles/pgfId-1091966.md new file mode 100644 index 0000000000..0cb250ec2a --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1091966.md @@ -0,0 +1,59 @@ +# CKATHM + + + + CKATHM CKATHM CKATHM CKATHM CKATHM CKATHM CKATHM + ********************************************** + ************************** + ****** + + SUBROUTINE CKATHM (NDIM1, NDIM2, ICKWRK, RCKWRK, MAXTP, NT, TMP, A) + Returns the coefficients of the fits for thermodynamic properties + of species. + + INPUT + NDIM1 - Integer scalar, first dimension of A, the three- + dimensional array of thermodynamic fit coefficients; + NDIM1 must be at least NPCP2, the total number of + coefficients for one temperature range. + NDIM2 - Integer scalar, second dimension of A; NDIM2 must be + at least MXTP-1, the total number of temperature ranges. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + MAXTP - Integer scalar, number of temperatures used to divide + the temperature ranges of thermodynamic fits. + + OUTPUT + NT(*) - Integer array, total number of temperatures used in + fitting coefficients of thermodynamic properties for + the species; + dimension at least KK, the total species count. + TMP(*,*) - Real matrix, temperatures for dividing the + thermodynamic fits for species; dimension at least + MAXTP for the first, and at least KK for the second, + the total species count. + cgs units, K + A(*,*,*) - Real three-dimensioned array of fit coefficients to the + thermodynamic data for species; + dimension exactly NPCP2 for the first, exactly MAXTP-1 + for the second, and at least KKTOT for the third, the + total species count. + The indices in A(N,L,K) mean- + N = 1,NN represent polynomial coefficients in CP/R + CP/R(K)=A(1,L,K) + A(2,L,K)*T + A(3,L,K)*T**2 + ... + N = NN+1 is for the formation enthalpies, that is, + HO/R = A(NN+1,L,K) + N = NN+2 is for the formation entropies, that is, + SO/R = A(NN+2,L,K) + L = 1 is for temperature <= TMP(2,K) + L = 2 is for TMP(2,K) < temperature <= TMP(3) + : + L = (NTMP-1) is for TMP(NTMP-1) <= temperature; + K is the species index + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092017.md b/2026R1/chemkin_26-r1/articles/pgfId-1092017.md new file mode 100644 index 0000000000..87f80af0b0 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092017.md @@ -0,0 +1,24 @@ +# CKATOM + + + + CKATOM CKATOM CKATOM CKATOM CKATOM CKATOM CKATOM + ********************************************** + ************************** + ****** + + REAL FUNCTION CKATOM (ENAME) + Returns atomic weight, given character-string element name. + + INPUT + ENAME - Character string, element name. + + RETURN + Real scalar, element atomic weight. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092033.md b/2026R1/chemkin_26-r1/articles/pgfId-1092033.md new file mode 100644 index 0000000000..adfcaf97c8 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092033.md @@ -0,0 +1,28 @@ +# CKAVG + + + + CKAVG CKAVG CKAVG CKAVG CKAVG CKAVG CKAVG + ********************************************** + ************************** + ****** + + SUBROUTINE CKAVG (NN, S1, S2, SAVG) + For arrays of length nn, + SAVG(n) is the average value of S1(n) and S2(n). + + INPUT + NN - The length of the two input arrays. + S1 - Real array. + S2 - Real array. + + OUTPUT + SAVG - Real array, sum of S1 and S2 + SAVG(n) is the average value of S1(n) and S2(n). + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092053.md b/2026R1/chemkin_26-r1/articles/pgfId-1092053.md new file mode 100644 index 0000000000..ede9f1ce72 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092053.md @@ -0,0 +1,27 @@ +# CKAWT + + + + CKAWT CKAWT CKAWT CKAWT CKAWT CKAWT CKAWT + ********************************************** + ************************** + ****** + + SUBROUTINE CKAWT (ICKWRK, RCKWRK, AWT) + Returns the atomic weights of the elements + + INPUT + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + AWT(*) - Real array, atomic weights of the elements; + dimension at least MM, the total element count. + cgs units, gm/mole + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092072.md b/2026R1/chemkin_26-r1/articles/pgfId-1092072.md new file mode 100644 index 0000000000..bac6afc8ab --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092072.md @@ -0,0 +1,25 @@ +# CKBSEC + + + + CKBSEC CKBSEC CKBSEC CKBSEC CKBSEC CKBSEC CKBSEC + ********************************************** + ************************** + ****** + + REAL FUNCTION CKBSEC (NPTS, X, XX, TT) + Interpolate f(X) using bisection, given X and other pairs + of X and f(X). + + INPUT + NPTS - Integer scalar, total pairs of data. + X - Real scalar, location for which f(X) is required. + XX(*) - Real array, locations for which data is given. + TT(*) - Real array, function values for locations given. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092087.md b/2026R1/chemkin_26-r1/articles/pgfId-1092087.md new file mode 100644 index 0000000000..8f7b9aca8c --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092087.md @@ -0,0 +1,38 @@ +# CKCDC + + + + CKCDC CKCDC CKCDC CKCDC CKCDC CKCDC CKCDC + ********************************************** + ************************** + ****** + + SUBROUTINE CKCDC (T, C, ICKWRK, RCKWRK, CDOT, DDOT) + Returns the molar creation and destruction rates of the species + given temperature(s) and molar concentrations. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + C(*) - Real array, concentrations of the species; + dimension at least KK, the total species count. + cgs units, mole/cm**3 + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + CDOT(*) - Real array, chemical creation rates of the species; + dimension at least KK, the total species count. + cgs units, mole/(cm**3*sec) + DDOT(*) - Real array, chemical destruction rates of the species; + dimension at least KK, the total species count. + cgs units, moles/(cm**3*sec) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092119.md b/2026R1/chemkin_26-r1/articles/pgfId-1092119.md new file mode 100644 index 0000000000..cdccfa7dc1 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092119.md @@ -0,0 +1,39 @@ +# CKCDXP + + + + CKCDXP CKCDXP CKCDXP CKCDXP CKCDXP CKCDXP CKCDXP + ********************************************** + ************************** + ****** + + SUBROUTINE CKCDXP (P, T, X, ICKWRK, RCKWRK, CDOT, DDOT) + Returns the molar creation and destruction rates of the species + given pressure, temperature(s) and mole fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + CDOT(*) - Real array, chemical creation rates of the species; + dimension at least KK, the total species count. + cgs units, mole/(cm**3*sec) + DDOT(*) - Real array, chemical destruction rates of the species; + dimension at least KK, the total species count. + cgs units, moles/(cm**3*sec) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092150.md b/2026R1/chemkin_26-r1/articles/pgfId-1092150.md new file mode 100644 index 0000000000..4f81161dd1 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092150.md @@ -0,0 +1,39 @@ +# CKCDXR + + + + CKCDXR CKCDXR CKCDXR CKCDXR CKCDXR CKCDXR CKCDXR + ********************************************** + ************************** + ****** + + SUBROUTINE CKCDXR (RHO, T, X, ICKWRK, RCKWRK, CDOT, DDOT) + Returns the molar creation and destruction rates of the species + given mass density, temperature(s) and mole fractions. + + INPUT + RHO - Real scalar, mass density. + cgs units, gm/cm**3 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + CDOT(*) - Real array, chemical creation rates of the species; + dimension at least KK, the total species count. + cgs units, mole/(cm**3*sec) + DDOT(*) - Real array, chemical destruction rates of the species; + dimension at least KK, the total species count. + cgs units, moles/(cm**3*sec) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092181.md b/2026R1/chemkin_26-r1/articles/pgfId-1092181.md new file mode 100644 index 0000000000..0750dab692 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092181.md @@ -0,0 +1,39 @@ +# CKCDYP + + + + CKCDYP CKCDYP CKCDYP CKCDYP CKCDYP CKCDYP CKCDYP + ********************************************** + ************************** + ****** + + SUBROUTINE CKCDYP (P, T, Y, ICKWRK, RCKWRK, CDOT, DDOT) + Returns the molar creation and destruction rates of the species + given pressure, temperature(s) and mass fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + Y(*) - Real array, mass fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + CDOT(*) - Real array, chemical creation rates of the species; + dimension at least KK, the total species count. + cgs units, mole/(cm**3*sec) + DDOT(*) - Real array, chemical destruction rates of the species; + dimension at least KK, the total species count. + cgs units, moles/(cm**3*sec) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092212.md b/2026R1/chemkin_26-r1/articles/pgfId-1092212.md new file mode 100644 index 0000000000..b7d2c6c9c2 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092212.md @@ -0,0 +1,39 @@ +# CKCDYR + + + + CKCDYR CKCDYR CKCDYR CKCDYR CKCDYR CKCDYR CKCDYR + ********************************************** + ************************** + ****** + + SUBROUTINE CKCDYR (RHO, T, Y, ICKWRK, RCKWRK, CDOT, DDOT) + Returns the molar creation and destruction rates of the species + given mass density, temperature(s) and mass fractions. + + INPUT + RHO - Real scalar, mass density. + cgs units, gm/cm**3 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + Y(*) - Real array, mass fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + CDOT(*) - Real array, chemical creation rates of the species; + dimension at least KK, the total species count. + cgs units, mole/(cm**3*sec) + DDOT(*) - Real array, chemical destruction rates of the species; + dimension at least KK, the total species count. + cgs units, moles/(cm**3*sec) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092260.md b/2026R1/chemkin_26-r1/articles/pgfId-1092260.md new file mode 100644 index 0000000000..0c0d52e83a --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092260.md @@ -0,0 +1,28 @@ +# CKCHRG + + + + CKCHRG CKCHRG CKCHRG CKCHRG CKCHRG CKCHRG CKCHRG + ********************************************** + ************************** + ****** + + SUBROUTINE CKCHRG (ICKWRK, RCKWRK, KCHARG) + Returns the electronic charges of the species. + + INPUT + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + KCHARG(*) - Integer array, electronic charges of the species; + dimension at least KK, the total species count. + KCHARG(K)=-2 indicates that species K has two + excess electrons. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092297.md b/2026R1/chemkin_26-r1/articles/pgfId-1092297.md new file mode 100644 index 0000000000..7bc7e6fb72 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092297.md @@ -0,0 +1,32 @@ +# CKCOMP + + + + CKCOMP CKCOMP CKCOMP CKCOMP CKCOMP CKCOMP CKCOMP + ********************************************** + ************************** + ****** + + SUBROUTINE CKCOMP (IST, IRAY, II, I) + Returns the index of an element of a reference character string + array which corresponds to a character string; + leading and trailing blanks are ignored. + + + INPUT + IST - Character string; length determined by application + program. + IRAY(*) - Character string array; dimension at least II, the total + number of character strings for be searched. + II - Integer scalar, the length of IRAY to be searched. + + OUTPUT + I - Integer scalar, the first array index in IRAY of a + character string IST, or 0 if IST is not found. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092321.md b/2026R1/chemkin_26-r1/articles/pgfId-1092321.md new file mode 100644 index 0000000000..e4260892fb --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092321.md @@ -0,0 +1,33 @@ +# CKCONT + + + + CKCONT CKCONT CKCONT CKCONT CKCONT CKCONT CKCONT + ********************************************** + ************************** + ****** + + SUBROUTINE CKCONT (K, Q, ICKWRK, RCKWRK, CIK) + Returns the contributions of the reactions to the molar production + rate of a species. + + INPUT + K - Integer scalar; species index number. + Q(*) - Real array, rates of progress for reactions; + dimension at least II, the total reaction count. + cgs units, moles/(cm**3*sec) + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + CIK(*) - Real array, contributions of the reactions to the + production rate of species K; + dimension least II, the total reaction count. + cgs units, mole/(cm**3*sec) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092346.md b/2026R1/chemkin_26-r1/articles/pgfId-1092346.md new file mode 100644 index 0000000000..c9f9f3ea44 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092346.md @@ -0,0 +1,25 @@ +# CKCOPY + + + + CKCOPY CKCOPY CKCOPY CKCOPY CKCOPY CKCOPY CKCOPY + ********************************************** + ************************** + ****** + + SUBROUTINE CKCOPY (NN, X1, X2) + Copy X1(*) array members into X2(*) array. + + INPUT + NN - Integer scalar; number of elements to copy. + X1(*) - Real array; dimension at least NN. + + OUTPUT + X2(*) - Real array; dimension at least NN. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092363.md b/2026R1/chemkin_26-r1/articles/pgfId-1092363.md new file mode 100644 index 0000000000..aceea2b86f --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092363.md @@ -0,0 +1,32 @@ +# CKCPBL + + + + CKCPBL CKCPBL CKCPBL CKCPBL CKCPBL CKCPBL CKCPBL + ********************************************** + ************************** + ****** + + SUBROUTINE CKCPBL (T, X, ICKWRK, RCKWRK, CPBML) + Returns the mean specific heat at constant pressure in molar units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + CPBML - Real scalar, mean specific heat at constant pressure. + cgs units, ergs/(mole*K) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092387.md b/2026R1/chemkin_26-r1/articles/pgfId-1092387.md new file mode 100644 index 0000000000..cd8d6cdf96 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092387.md @@ -0,0 +1,32 @@ +# CKCPBS + + + + CKCPBS CKCPBS CKCPBS CKCPBS CKCPBS CKCPBS CKCPBS + ********************************************** + ************************** + ****** + + SUBROUTINE CKCPBS (T, Y, ICKWRK, RCKWRK, CPBMS) + Returns the mean specific heat at constant pressure. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + Y(*) - Real array, mass fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + CPBMS - Real scalar, mean specific heat at constant pressure. + cgs units - ergs/(gm*K) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092411.md b/2026R1/chemkin_26-r1/articles/pgfId-1092411.md new file mode 100644 index 0000000000..3483730a06 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092411.md @@ -0,0 +1,32 @@ +# CKCPML + + + + CKCPML CKCPML CKCPML CKCPML CKCPML CKCPML CKCPML + ********************************************** + ************************** + ****** + + SUBROUTINE CKCPML (T, ICKWRK, RCKWRK, CPML) + Returns the specific heats at constant pressure in molar units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + CPML(*) - Real array, specific heats at constant pressure for + the species; + dimension at least KK, the total species count. + cgs units, ergs/(mole*K) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092435.md b/2026R1/chemkin_26-r1/articles/pgfId-1092435.md new file mode 100644 index 0000000000..d9fcc94678 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092435.md @@ -0,0 +1,32 @@ +# CKCPMS + + + + CKCPMS CKCPMS CKCPMS CKCPMS CKCPMS CKCPMS CKCPMS + ********************************************** + ************************** + ****** + + SUBROUTINE CKCPMS (T, ICKWRK, RCKWRK, CPMS) + Returns the specific heats at constant pressure in mass units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + CPMS(*) - Real array, specific heats at constant pressure for + species; + dimension at least KK, the total species count. + cgs units, ergs/(gm*K) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092459.md b/2026R1/chemkin_26-r1/articles/pgfId-1092459.md new file mode 100644 index 0000000000..33b35bdcaa --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092459.md @@ -0,0 +1,31 @@ +# CKCPOR + + + + CKCPOR CKCPOR CKCPOR CKCPOR CKCPOR CKCPOR CKCPOR + ********************************************** + ************************** + ****** + + SUBROUTINE CKCPOR (T, ICKWRK, RCKWRK, CPOR) + Returns the nondimensional specific heats at constant pressure. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + CPOR(*) - Real array, nondimensional specific heats at constant + pressure for species; + dimension at least KK, the total species count. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092482.md b/2026R1/chemkin_26-r1/articles/pgfId-1092482.md new file mode 100644 index 0000000000..db600d8c64 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092482.md @@ -0,0 +1,50 @@ +# CKCRAY + + + + CKCRAY CKCRAY CKCRAY CKCRAY CKCRAY CKCRAY CKCRAY + ********************************************** + ************************** + ****** + + SUBROUTINE CKCRAY (LINE, NN, KRAY, LOUT, NDIM, NRAY, NF, KERR) + Searches a character string, LINE, and compares the space-delimited + substrings in LINE, to an array of character strings, KRAY; + if a substring in LINE is located in KRAY, the index of its location + in KRAY is stored in the integer array NRAY. For example, the + subroutine might be called to assign Chemkin species indices to a + given list of species names. This application is illustrated in the + following example: + + input: LINE = "OH N2 NO" + KRAY(*) = "H2" "O2" "N2" "H" "O" "N" "OH" "H2O" "NO" + NN = 9, the number of entries in KRAY(*) + LOUT = 6, a logical unit number on which to write + diagnostic messages. + NDIM = 10, the dimension of array NRAY(*) + output: NRAY(*) = 7, 3, 9, the index numbers of the entries + in KRAY(*) corresponding to the substrings + in LINE + NF = 3, the number of correspondences found. + KERR = .FALSE. + + INPUT + LINE - Character string. + KRAY(*) - Character string array; dimension at least NN. + NN - Integer scalar, total character string count of KRAY. + LOUT - Integer scalar, formatted output file unit. + NDIM - Integer scalar, dimension of the integer array NRAY. + + OUTPUT + NRAY(*) - Integer array, indices of the elements of KRAY + which correspond to the substrings in LINE; + dimension at least NDIM. + NF - Integer scalar, count of correspondences found. + KERR - Logical, syntax or dimensioning Error flag. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092524.md b/2026R1/chemkin_26-r1/articles/pgfId-1092524.md new file mode 100644 index 0000000000..994f0b632a --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092524.md @@ -0,0 +1,38 @@ +# CKCTC + + + + CKCTC CKCTC CKCTC CKCTC CKCTC CKCTC CKCTC + ********************************************** + ************************** + ****** + + SUBROUTINE CKCTC (T, C, ICKWRK, RCKWRK, CDOT, TAU) + Returns the molar creation rates and characteristic destruction + times of the species given temperature(s) and molar concentrations. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + C(*) - Real array, concentrations of species; + dimension at least KK, the total species count. + cgs units, mole/cm**3 + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + CDOT(*) - Real array, chemical creation rates of the species; + dimension at least KK, the total species count. + cgs units, mole/(cm**3*sec) + TAU(*) - Real array, characteristic destruction times of species; + dimension at least KK, the total species count. + cgs units, sec + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092554.md b/2026R1/chemkin_26-r1/articles/pgfId-1092554.md new file mode 100644 index 0000000000..27e7182582 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092554.md @@ -0,0 +1,41 @@ +# CKCTXP + + + + CKCTXP CKCTXP CKCTXP CKCTXP CKCTXP CKCTXP CKCTXP + ********************************************** + ************************** + ****** + + SUBROUTINE CKCTXP (P, T, X, ICKWRK, RCKWRK, CDOT, TAU) + Returns the molar creation rates and characteristic destruction + times of the species given pressure, temperature(s) and mole + fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + CDOT(*) - Real array, chemical creation rates of the species; + dimension at least KK, the total species count. + cgs units, mole/(cm**3*sec) + TAU(*) - Real array, characteristic destruction times of the + species; + dimension at least KK, the total species count. + cgs units, sec + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092608.md b/2026R1/chemkin_26-r1/articles/pgfId-1092608.md new file mode 100644 index 0000000000..4cac0d088d --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092608.md @@ -0,0 +1,40 @@ +# CKCTXR + + + + CKCTXR CKCTXR CKCTXR CKCTXR CKCTXR CKCTXR CKCTXR + ********************************************** + ************************** + ****** + + SUBROUTINE CKCTXR (RHO, T, X, ICKWRK, RCKWRK, CDOT, TAU) + Returns the molar creation rates and characteristic destruction + times of the species given mass density, temperature(s) and mole + fractions. + + INPUT + RHO - Real scalar, mass density. + cgs units, gm/cm**3 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + CDOT(*) - Real array, chemical creation rates of the species; + dimension at least KK, the total species count. + cgs units, mole/(cm**3*sec) + TAU(*) - Real array, characteristic destruction times of species; + dimension at least KK, the total species count. + cgs units, sec + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092640.md b/2026R1/chemkin_26-r1/articles/pgfId-1092640.md new file mode 100644 index 0000000000..e0c87373cd --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092640.md @@ -0,0 +1,41 @@ +# CKCTYP + + + + CKCTYP CKCTYP CKCTYP CKCTYP CKCTYP CKCTYP CKCTYP + ********************************************** + ************************** + ****** + + SUBROUTINE CKCTYP (P, T, Y, ICKWRK, RCKWRK, CDOT, TAU) + Returns the molar creation rates and characteristic destruction + times of the species given pressure, temperature(s) and mass + fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + Y(*) - Real array, mass fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + CDOT(*) - Real array, chemical creation rates of the species; + dimension at least KK, the total species count. + cgs units, mole/(cm**3*sec) + TAU(*) - Real array, characteristic destruction times of the + species; + dimension at least KK, the total species count. + cgs units, sec + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092694.md b/2026R1/chemkin_26-r1/articles/pgfId-1092694.md new file mode 100644 index 0000000000..ff2441e5a4 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092694.md @@ -0,0 +1,41 @@ +# CKCTYR + + + + CKCTYR CKCTYR CKCTYR CKCTYR CKCTYR CKCTYR CKCTYR + ********************************************** + ************************** + ****** + + SUBROUTINE CKCTYR (RHO, T, Y, ICKWRK, RCKWRK, CDOT, TAU) + Returns the molar creation rates and characteristic destruction + times of the species given mass density, temperature(s) and mass + fractions. + + INPUT + RHO - Real scalar, mass density. + cgs units, gm/cm**3 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + Y(*) - Real array, mass fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + CDOT(*) - Real array, chemical creation rates of the species; + dimension at least KK, the total species count. + cgs units, mole/(cm**3*sec) + TAU(*) - Real array, characteristic destruction times of the + species; + dimension at least KK, the total species count. + cgs units, sec + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092727.md b/2026R1/chemkin_26-r1/articles/pgfId-1092727.md new file mode 100644 index 0000000000..7e4cf178f2 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092727.md @@ -0,0 +1,32 @@ +# CKCVBL + + + + CKCVBL CKCVBL CKCVBL CKCVBL CKCVBL CKCVBL CKCVBL + ********************************************** + ************************** + ****** + + SUBROUTINE CKCVBL (T, X, ICKWRK, RCKWRK, CVBML) + Returns the mean specific heat at constant volume in molar units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + CVBML - Real scalar, mean specific heat at constant volume. + cgs units, ergs/(mole*K) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092751.md b/2026R1/chemkin_26-r1/articles/pgfId-1092751.md new file mode 100644 index 0000000000..e120623588 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092751.md @@ -0,0 +1,32 @@ +# CKCVBS + + + + CKCVBS CKCVBS CKCVBS CKCVBS CKCVBS CKCVBS CKCVBS + ********************************************** + ************************** + ****** + + SUBROUTINE CKCVBS (T, Y, ICKWRK, RCKWRK, CVBMS) + Returns the mean specific heat at constant volume in mass units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + Y(*) - Real array, mass fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + CVBMS - Real scalar, mean specific heat at constant volume. + cgs units, ergs/(gm*K) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092775.md b/2026R1/chemkin_26-r1/articles/pgfId-1092775.md new file mode 100644 index 0000000000..f64bf4302b --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092775.md @@ -0,0 +1,32 @@ +# CKCVML + + + + CKCVML CKCVML CKCVML CKCVML CKCVML CKCVML CKCVML + ********************************************** + ************************** + ****** + + SUBROUTINE CKCVML (T, ICKWRK, RCKWRK, CVML) + Returns the specific heats in constant volume in molar units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + CVML(*) - Real array, specific heats at constant volume for + species; + dimension at least KK, the total species count. + cgs units, ergs/(mole*K) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092799.md b/2026R1/chemkin_26-r1/articles/pgfId-1092799.md new file mode 100644 index 0000000000..51271762a1 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092799.md @@ -0,0 +1,32 @@ +# CKCVMS + + + + CKCVMS CKCVMS CKCVMS CKCVMS CKCVMS CKCVMS CKCVMS + ********************************************** + ************************** + ****** + + SUBROUTINE CKCVMS (T, ICKWRK, RCKWRK, CVMS) + Returns the specific heats at constant volume in mass units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + CVMS(*) - Real array, specific heats at constant volume for + species; + dimension at least KK, the total species count. + cgs units, ergs/(gm*K) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092823.md b/2026R1/chemkin_26-r1/articles/pgfId-1092823.md new file mode 100644 index 0000000000..316731b701 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092823.md @@ -0,0 +1,35 @@ +# CKDHXP + + + + CKDHXP CKDHXP CKDHXP CKDHXP CKDHXP CKDHXP CKDHXP + ********************************************** + ************************** + ****** + + SUBROUTINE CKDHXP (P, T, X, ICKWRK, RCKWRK, HDOT) + Returns the heat release rate of the mixture + given pressure, temperature(s) and mole fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + HDOT - Real scalar, heat release rate of the mixture. + cgs units, ergs/s/cm**3 + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092850.md b/2026R1/chemkin_26-r1/articles/pgfId-1092850.md new file mode 100644 index 0000000000..80fd6d0037 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092850.md @@ -0,0 +1,35 @@ +# CKDHYP + + + + CKDHYP CKDHYP CKDHYP CKDHYP CKDHYP CKDHYP CKDHYP + ********************************************** + ************************** + ****** + + SUBROUTINE CKDHYP (P, T, Y, ICKWRK, RCKWRK, HDOT) + Returns the heat release rate of the mixture + given pressure, temperature(s) and mass fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + Y(*) - Real array, mass fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + HDOT - Real scalar, heat release rate of the mixture. + cgs units, ergs/s/cm**3 + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092877.md b/2026R1/chemkin_26-r1/articles/pgfId-1092877.md new file mode 100644 index 0000000000..5155b78117 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092877.md @@ -0,0 +1,25 @@ +# CKDLIM + + + + CKDLIM CKDLIM CKDLIM CKDLIM CKDLIM CKDLIM CKDLIM + ********************************************** + ************************** + ****** + + SUBROUTINE CKDLIM (STRING, DELIM, I1, I2) + returns pointers into a character string of the first and + second occurrences of a particular character. + + Arguments: + STRING - Character string. + DELIM - Single character. + I1 - Integer scalar, location in STRING of first DELIM. + I2 - Integer scalar, location in STRING of second DELIM. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092894.md b/2026R1/chemkin_26-r1/articles/pgfId-1092894.md new file mode 100644 index 0000000000..fe6ed99f04 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092894.md @@ -0,0 +1,24 @@ +# CKDONE + + + + CKDONE CKDONE CKDONE CKDONE CKDONE CKDONE CKDONE + ********************************************** + ************************** + ****** + + SUBROUTINE CKDONE (ICKWRK, RCKWRK) + This is a general cleanup routine that should be called by an + Application when there is NO further need for the Gas-phase Kinetics + Subroutine Library (works in conjunction with CKINIT). + + INPUT + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092910.md b/2026R1/chemkin_26-r1/articles/pgfId-1092910.md new file mode 100644 index 0000000000..e70c0b3345 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092910.md @@ -0,0 +1,36 @@ +# CKDOT + + + + CKDOT CKDOT CKDOT CKDOT CKDOT CKDOT CKDOT + ********************************************** + ************************** + ****** + + SUBROUTINE CKDOT (T, RKF, RKR, ICKWRK, RCKWRK, CDOT, DDOT) + Returns the molar creation and destruction rates of the species + given reactions' rates of progress. + + INPUT + T(*) - Real array, temperature (K). + RKF(*) - Real array, reactions' forward rates of progress; + dimension at least II, the total reaction count. + RKR(*) - Real array, reactions' reverse rates of progress; + dimension at least II, the total reaction count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + CDOT(*) - Real array, chemical creation rates of the species; + dimension at least KK, the total species count. + cgs units, mole/(cm**3*sec) + DDOT(*) - Real array, chemical destruction rates of the species; + dimension at least KK, the total species count. + cgs units, moles/(cm**3*sec) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092938.md b/2026R1/chemkin_26-r1/articles/pgfId-1092938.md new file mode 100644 index 0000000000..d6d97d59fe --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092938.md @@ -0,0 +1,21 @@ +# CKDTAB + + + + CKDTAB CKDTAB CKDTAB CKDTAB CKDTAB CKDTAB CKDTAB + ********************************************** + ************************** + ****** + + SUBROUTINE CKDTAB (STRING) + Replaces any tab character in a character string with one space. + + INPUT/OUTPUT + STRING - Character string. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092951.md b/2026R1/chemkin_26-r1/articles/pgfId-1092951.md new file mode 100644 index 0000000000..8b63186b45 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092951.md @@ -0,0 +1,37 @@ +# CKEQC + + + + CKEQC CKEQC CKEQC CKEQC CKEQC CKEQC CKEQC + ********************************************** + ************************** + ****** + + SUBROUTINE CKEQC (T, C, ICKWRK, RCKWRK, EQK) + Returns the equilibrium constants of the reactions given + temperature(s) and molar concentrations. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + C(*) - Real array, concentrations of the species; + dimension at least KK, the total species count. + cgs units, mole/cm**3 + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + EQK(*) - Real array, equilibrium constants in concentration units + for reactions; + dimension at least II, the total reaction count. + cgs units, (mole/cm**3)**some power, depending on + the reaction + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1092980.md b/2026R1/chemkin_26-r1/articles/pgfId-1092980.md new file mode 100644 index 0000000000..baca7af6e4 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1092980.md @@ -0,0 +1,37 @@ +# CKEQXP + + + + CKEQXP CKEQXP CKEQXP CKEQXP CKEQXP CKEQXP CKEQXP + ********************************************** + ************************** + ****** + + SUBROUTINE CKEQXP (P, T, X, ICKWRK, RCKWRK, EQK) + Returns the equilibrium constants for reactions given pressure, + temperature(s) and mole fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + EQK(*) - Real array, equilibrium constants for reactions; + dimension at least II, the total reaction count. + cgs units, (mole/cm**3)**some power, depending on + the reaction + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093009.md b/2026R1/chemkin_26-r1/articles/pgfId-1093009.md new file mode 100644 index 0000000000..a99179faa4 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093009.md @@ -0,0 +1,39 @@ +# CKEQXR + + + + CKEQXR CKEQXR CKEQXR CKEQXR CKEQXR CKEQXR CKEQXR + ********************************************** + ************************** + ****** + + SUBROUTINE CKEQXR (RHO, T, X, ICKWRK, RCKWRK, EQK) + Returns the equilibrium constants of the reactions given mass + density, temperature(s) and mole fractions. + + INPUT + RHO - Real scalar, mass density. + cgs units, gm/cm**3 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + species. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + EQK(*) - Real array, equilibrium constants in concentration units + for reactions; + dimension at least II, the total reaction count. + cgs units, (mole/cm**3)**some power, depending on + the reaction + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093040.md b/2026R1/chemkin_26-r1/articles/pgfId-1093040.md new file mode 100644 index 0000000000..9e760080b0 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093040.md @@ -0,0 +1,38 @@ +# CKEQYP + + + + CKEQYP CKEQYP CKEQYP CKEQYP CKEQYP CKEQYP CKEQYP + ********************************************** + ************************** + ****** + + SUBROUTINE CKEQYP (P, T, Y, ICKWRK, RCKWRK, EQK) + Returns the equilibrium constants for reactions given pressure + temperature(s) and mass fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + Y(*) - Real array, mass fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + EQK(*) - Real array, equilibrium constants in concentration units + for reactions; + dimension at least II, the total reaction count. + cgs units, (mole/cm**3)**some power, depending on + the reaction + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093070.md b/2026R1/chemkin_26-r1/articles/pgfId-1093070.md new file mode 100644 index 0000000000..a64b640289 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093070.md @@ -0,0 +1,38 @@ +# CKEQYR + + + + CKEQYR CKEQYR CKEQYR CKEQYR CKEQYR CKEQYR CKEQYR + ********************************************** + ************************** + ****** + + SUBROUTINE CKEQYR (RHO, T, Y, ICKWRK, RCKWRK, EQK) + Returns the equilibrium constants of the reactions given mass + density, temperature(s) and mass fractions. + + INPUT + RHO - Real scalar, mass density. + cgs units; gm/cm**3 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + Y(*) - Real array, mass fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + EQK(*) - Real array, equilibrium constants in concentration units + for reactions; + dimension at least II, the total reaction count. + cgs units; (mole/cm**3)**some power, depending on + the reaction + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093100.md b/2026R1/chemkin_26-r1/articles/pgfId-1093100.md new file mode 100644 index 0000000000..07f2766674 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093100.md @@ -0,0 +1,75 @@ +# CKFALP + + + + CKFALP CKFALP CKFALP CKFALP CKFALP CKFALP CKFALP + ********************************************** + ************************** + ****** + + SUBROUTINE CKFALP (P, T, X, ICKWRK, RCKWRK, I, RKLOW, CTB, PR, FC, + PCOR) + Returns details concerning the reaction rate constant for + pressure-dependent reactions. + + INPUT + P - Pressure. + cgs units - dynes/cm**2 + Data type - real scalar + T(*) - Temperature array. + cgs units - K + Data type - real vector + X - Mole fractions of the species. + cgs units - none + Data type - real array + Dimension X(*) at least KK, the total number of + species. + ICKWRK - Array of integer workspace. + Data type - integer array + Dimension ICKWRK(*) at least LENIWK. + RCKWRK - Array of real work space. + Data type - real array + Dimension RCKWRK(*) at least LENRWK. + + OUTPUT + RKLOW - Low Pressure forward reaction rate for pressure- + dependent reactions. It is defined to be zero for + non-pressure-dependent reactions. + cgs units - 1/(sec) * + (cm**3/mole)**(sum of forward stoich. coeff) + Data type - real + CTB - Effective concentration for reaction, I_SAVE. + This takes into account the effectiveness factors + for the reaction, applicable to third body + and pressure-dependent reactions. It is defined to be + equal to the total concentration for other pressure- + dependent or third body reactions, and to be equal to + one for reactions which don't use it + Units are moles/cm**3. + cgs units - mole/(cm**3) + Data type - real + PR - Reduced Pressure for pressure-dependent reactions. + This is defined to be equal to CTB*RKLOW_SAVE/RCF_INF. + where RCF_INF is the high pressure rate constant. + This is a dimensionless quantity. For non-pressure- + dependent reactions, this quantity is defined to be 0. + cgs units - unitless + Data type - real + FC - Correction to L-H rate constant for pressure-dependent + reactions. It is defined to be 0 for non-pressure- + dependent reactions. + cgs units - unitless + Data type - real + PCOR - This is equal to the pressure correction ratio for + pressure-dependent reactions, that is, RC(T,P) / RC(T)_inf + the ratio of the actual reaction rate to the high + pressure reaction rate constant. + cgs units - unitless + Data type - real array + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093167.md b/2026R1/chemkin_26-r1/articles/pgfId-1093167.md new file mode 100644 index 0000000000..c7b721e22a --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093167.md @@ -0,0 +1,100 @@ +# CKFAL + + + + CKFAL CKFAL CKFAL CKFAL CKFAL CKFAL CKFAL + ********************************************** + ************************** + ****** + + SUBROUTINE CKFAL (NDIM, ICKWRK, RCKWRK, IFOP, IFLO, KFAL, FPAR) + Returns a set of flags indicating whether a reaction has pressure- + dependent behavior and an array of parameters. + + INPUT + NDIM - Integer scalar, first dimension of the matrix FPAR; + NDIM must be greater than or equal to NFAR, the + maximum number of supplemental rate parameters, which + depends on the mechanism. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + IFOP(*) - Integer array, flags indicating pressure-dependent + behavior; + dimension at least II, the total reaction count. + IFOP(I) indicates the pressure-dependent behavior + of reaction I: + 0 - No pressure dependency + 1 - Lindeman form (3 parameters) + 2 - SRI form (8 parameters) + 3 - Troe form (6 parameters) + 4 - Troe form (7 parameters) + 6 - Chebychev form (depends on mechanixm) + IFLO(*) - Integer array, flags indicating pressure-dependency; + dimension at least II, the total reaction count. + IFLO(I) indicates + 0 - unimolecular pressure-dependency, + 1 - chemically activated bi-molecular. + KFAL(*) - Integer array, flags indicating type of bath-gas + concentration to be used in expressions + (see footnote on page 27); + dimension at least II, the total reaction count. + KFAL(I) indicates the type of reaction I: + 0 - Use total concentration of gas mixture + (with the added capability of using enhanced + third body coefficients) (default) + K - Use the concentration of species K + FPAR(*,*) - Real matrix, pressure dependency parameters; + dimension at least NFAR for the first, the maximum + number of parameters (currently 8), and + at least II for the second, the total reaction + count. + The number of parameters depends on the + particular functional form indicated by the IFOP array: + + For IFOP(I) = 1 through 4, + FPAR(1,I), FPAR(2,I), FPAR(3,I) are always the + parameters entered on the LOW auxiliary keyword line + in the CHEMKIN interpreter input file. + FPAR(1,I) = Pre-exponential for low pressure + limiting rate constant + cgs units, mole-cm-sec-K + FPAR(2,I) = Temperature dependence exponents + for the low pressure limiting rate + constants. + FPAR(3,I) = Activation energy for the low + pressure limiting rate constant. + cgs units, K + Additional FPAR values depend on IFOP: + IFOP(I) = 2: + FPAR(4,I) = a + FPAR(5,I) = b (Kelvin) + FPAR(6,I) = c (Kelvin) + FPAR(7,I) = d + FPAR(8,I) = e + IFOP(I) = 3: + FPAR(4,I) = a + FPAR(5,I) = T*** (Kelvin) + FPAR(6,I) = T* (Kelvin) + IFOP(I) = 4: + FPAR(4,I) = a + FPAR(5,I) = T*** (Kelvin) + FPAR(6,I) = T* (Kelvin) + FPAR(7,I) = T** (Kelvin) + + For IFOP(I) = 6: + FPAR(1,I) = n, the number of temperature coeff. + FPAR(2,I) = m, the number of pressure coeff. + FPAR(3,I) = tmin, lower temperature limit + FPAR(4,I) = tmax, upper temperature limit + FPAR(5,I) = pmin, lower pressure limit + FPAR(6,I) = pmax, upper temperature limit + FPAR(j,I), j=7,m*n+6 are the polynomial coefficients + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093259.md b/2026R1/chemkin_26-r1/articles/pgfId-1093259.md new file mode 100644 index 0000000000..e431a03781 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093259.md @@ -0,0 +1,26 @@ +# CKFRCH + + + + CKFRCH CKFRCH CKFRCH CKFRCH CKFRCH CKFRCH CKFRCH + ********************************************** + ************************** + ****** + + INTEGER FUNCTION CKFRCH (STR) + + Returns the index of the first non-blank, non-tab character in + a string. + + INPUT + STR - Character string + + RETURN + integer position of the first non-blank character in a string + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093277.md b/2026R1/chemkin_26-r1/articles/pgfId-1093277.md new file mode 100644 index 0000000000..d9da10d6c4 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093277.md @@ -0,0 +1,35 @@ +# CKGBML + + + + CKGBML CKGBML CKGBML CKGBML CKGBML CKGBML CKGBML + ********************************************** + ************************** + ****** + + SUBROUTINE CKGBML (P, T, X, ICKWRK, RCKWRK, GBML) + Returns the mean Gibbs free energy of the mixture in molar units + given pressure, temperature(s) and mole fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + GBML - Real scalar, mean Gibbs free energy. + cgs units, ergs/mole + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093304s.md b/2026R1/chemkin_26-r1/articles/pgfId-1093304s.md new file mode 100644 index 0000000000..cdc2e019c7 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093304s.md @@ -0,0 +1,35 @@ +# CKGBMS + + + + CKGBMS CKGBMS CKGBMS CKGBMS CKGBMS CKGBMS CKGBMS + ********************************************** + ************************** + ****** + + SUBROUTINE CKGBMS (P, T, Y, ICKWRK, RCKWRK, GBMS) + Returns the mean Gibbs free energy of the mixture in mass units + given pressure, temperature(s), and mass fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + Y(*) - Real array, mass fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + GBMS - Real scalar, mean Gibbs free energy. + cgs units, ergs/gm + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093331.md b/2026R1/chemkin_26-r1/articles/pgfId-1093331.md new file mode 100644 index 0000000000..6681797835 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093331.md @@ -0,0 +1,32 @@ +# CKGML + + + + CKGML CKGML CKGML CKGML CKGML CKGML CKGML + ********************************************** + ************************** + ****** + + SUBROUTINE CKGML (T, ICKWRK, RCKWRK, GML) + Returns the standard state Gibbs free energies in molar units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + GML(*) - Real array, standard state Gibbs free energies for + the species; + dimension at least KK, the total species count. + cgs units, ergs/mole + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093355.md b/2026R1/chemkin_26-r1/articles/pgfId-1093355.md new file mode 100644 index 0000000000..7e3f89fcca --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093355.md @@ -0,0 +1,32 @@ +# CKGMS + + + + CKGMS CKGMS CKGMS CKGMS CKGMS CKGMS CKGMS + ********************************************** + ************************** + ****** + + SUBROUTINE CKGMS (T, ICKWRK, RCKWRK, GMS) + Returns the standard state Gibbs free energies in mass units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + GMS(*) - Real array, standard state Gibbs free energies for + the species; + dimension at least KK, the total species count. + cgs units, ergs/gm + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093379.md b/2026R1/chemkin_26-r1/articles/pgfId-1093379.md new file mode 100644 index 0000000000..c18cd9f7a8 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093379.md @@ -0,0 +1,32 @@ +# CKHBML + + + + CKHBML CKHBML CKHBML CKHBML CKHBML CKHBML CKHBML + ********************************************** + ************************** + ****** + + SUBROUTINE CKHBML (T, X, ICKWRK, RCKWRK, HBML) + Returns the mean enthalpy of the mixture in molar units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + HBML - Real scalar, mean enthalpy. + cgs units - ergs/mole + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093403api.md b/2026R1/chemkin_26-r1/articles/pgfId-1093403api.md new file mode 100644 index 0000000000..590ce683f9 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093403api.md @@ -0,0 +1,32 @@ +# CKHBMS + + + + CKHBMS CKHBMS CKHBMS CKHBMS CKHBMS CKHBMS CKHBMS + ********************************************** + ************************** + ****** + + SUBROUTINE CKHBMS (T, Y, ICKWRK, RCKWRK, HBMS) + Returns the mean enthalpy of the mixture in mass units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + Y(*) - Real array, mass fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + HBMS - Real scalar, mean enthalpy. + cgs units, ergs/gm + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093427.md b/2026R1/chemkin_26-r1/articles/pgfId-1093427.md new file mode 100644 index 0000000000..0d9750fc9c --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093427.md @@ -0,0 +1,31 @@ +# CKHML + + + + CKHML CKHML CKHML CKHML CKHML CKHML CKHML + ********************************************** + ************************** + ****** + + SUBROUTINE CKHML (T, ICKWRK, RCKWRK, HML) + Returns the enthalpies in molar units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + HML(*) - Real array, enthalpies for species; + dimension at least KK, the total species count. + cgs units, ergs/mole + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093450.md b/2026R1/chemkin_26-r1/articles/pgfId-1093450.md new file mode 100644 index 0000000000..2dc7357204 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093450.md @@ -0,0 +1,31 @@ +# CKHMS + + + + CKHMS CKHMS CKHMS CKHMS CKHMS CKHMS CKHMS + ********************************************** + ************************** + ****** + + SUBROUTINE CKHMS (T, ICKWRK, RCKWRK, HMS) + Returns the enthalpies in mass units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + HMS(*) - Real array, enthalpies for species; + dimension at least KK, the total species count. + cgs units, ergs/gm + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093473.md b/2026R1/chemkin_26-r1/articles/pgfId-1093473.md new file mode 100644 index 0000000000..132591b677 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093473.md @@ -0,0 +1,30 @@ +# CKHORT + + + + CKHORT CKHORT CKHORT CKHORT CKHORT CKHORT CKHORT + ********************************************** + ************************** + ****** + + SUBROUTINE CKHORT (T, ICKWRK, RCKWRK, HORT) + Returns the nondimensional enthalpies. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + HORT(*) - Real array, nondimensional enthalpies for species; + dimension at least KK, the total species count. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093495.md b/2026R1/chemkin_26-r1/articles/pgfId-1093495.md new file mode 100644 index 0000000000..8b91a2da39 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093495.md @@ -0,0 +1,30 @@ +# CKHRX + + + + CKHRX CKHRX CKHRX CKHRX CKHRX CKHRX CKHRX + ********************************************** + ************************** + ****** + + SUBROUTINE CKHRX (I, HML, ICKWRK, RCKWRK, HRXI) + Returns the molar heat of reaction I. + + INPUT + I - Integer scalar, reaction index. + HML(*) - Real array, molar enthalpies for species; + dimension at lest KK, the total species count. + cgs units, ergs/mole + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + HRXI - Real scalar, molar heat of reaction I. + cgs units, ergs/mole + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093517.md b/2026R1/chemkin_26-r1/articles/pgfId-1093517.md new file mode 100644 index 0000000000..7150402f35 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093517.md @@ -0,0 +1,29 @@ +# CKI2CH + + + + CKI2CH CKI2CH CKI2CH CKI2CH CKI2CH CKI2CH CKI2CH + ********************************************** + ************************** + ****** + + SUBROUTINE CKI2CH (NUM, STR, I, KERR) + Returns a character string representation of an integer and the + character count of the string. + + INPUT + NUM - Integer scalar, to be converted to a character string; + the maximum magnitude of NUM is machine-dependent. + + OUTPUT + STR - Character string, left-justified character representation + of NUM. + I - Integer scalar, the non-blank character count of STR. + KERR - Logical, character length error flag. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093538.md b/2026R1/chemkin_26-r1/articles/pgfId-1093538.md new file mode 100644 index 0000000000..9f998dadae --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093538.md @@ -0,0 +1,32 @@ +# CKIEXC + + + + CKIEXC CKIEXC CKIEXC CKIEXC CKIEXC CKIEXC CKIEXC + ********************************************** + ************************** + ****** + + SUBROUTINE CKIEXC (ICKWRK, RCKWRK, IEXC, EEXC) + Returns a set of flags indicating whether the reactions are + excitation reactions and, if so, the energy loss per event in eV. + + INPUT + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + IEXC(*) - Integer array, excitation-only reaction flag; + dimension at least II, the total reaction count. + IEXC(I)= -1 reaction I is not an excitation-only reax + IEXC(I)= 1 reaction I is an excitation reaction + EEXC(*) - Real array, excitation energy loss per event in forward + direction for reactions; + dimension at least II, the total reaction count. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093562.md b/2026R1/chemkin_26-r1/articles/pgfId-1093562.md new file mode 100644 index 0000000000..fc20e252f0 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093562.md @@ -0,0 +1,36 @@ +# CKIFT1 + + + + CKIFT1 CKIFT1 CKIFT1 CKIFT1 CKIFT1 CKIFT1 CKIFT1 + ********************************************** + ************************** + ****** + + SUBROUTINE CKIFT1 (IR, ICKWRK, RCKWRK, IFT1, FPAR) + Returns an integer flag to indicate whether reaction IR uses + the FIT1 rate expression, and if so, returns the array of + FIT1 supplemental parameters. + + INPUT + IR - Integer scalar, reaction index. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + FPAR - Integer scalar, + 1, reaction IR uses the FIT1 rate expression. + 0, no. + FPAR(*) - Real array, supplemental FIT1 parameters + for reaction IR. + Dimension FPAR(*) at least NF1R, the + number of supplemental parameters required + to calculate a FIT1 reaction rate; + in the current implementation, NF1R=4. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093590.md b/2026R1/chemkin_26-r1/articles/pgfId-1093590.md new file mode 100644 index 0000000000..397d6571d2 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093590.md @@ -0,0 +1,36 @@ +# CKIJAN + + + + CKIJAN CKIJAN CKIJAN CKIJAN CKIJAN CKIJAN CKIJAN + ********************************************** + ************************** + ****** + + SUBROUTINE CKIJAN (IR, ICKWRK, RCKWRK, IJAN, RJAN) + Returns an integer flag to indicate whether reaction IR uses + the Janev rate expression, and if so, returns the array of + Janev supplemental parameters. + + INPUT + IR - Integer scalar, reaction index. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + IJAN - Integer scalar, + 1, reaction IR uses the Janev et al. rate expression. + 0, no. + RJAN(*) - Real array, supplemental Janev parameters + for reaction IR. + Dimension RJAN(*) at least NJAR, the + number of supplemental parameters required + to calculate a Janev reaction rate; + in the current implementation, NJAR=9. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093618.md b/2026R1/chemkin_26-r1/articles/pgfId-1093618.md new file mode 100644 index 0000000000..cd66ce4fc3 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093618.md @@ -0,0 +1,36 @@ +# CKILT + + + + CKILT CKILT CKILT CKILT CKILT CKILT CKILT + ********************************************** + ************************** + ****** + + SUBROUTINE CKILT (IR, ICKWRK, RCKWRK, ILT, RLT) + Returns an integer flag to indicate whether reaction IR uses + the Landau-Teller rate expression, and if so, returns the array of + Landau-Teller supplemental parameters. + + INPUT + IR - Integer scalar, reaction index. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + ILT - Integer scalar, + 1, reaction IR uses the Landau-Teller rate expression. + 0, no. + RLT(*) - Real array, supplemental Landau-Teller parameters + for reaction IR. + Dimension RLT(*) at least NLAR, the + number of supplemental parameters required + to calculate a Landau-Teller reaction rate; + in the current implementation, NLAR=2. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093646.md b/2026R1/chemkin_26-r1/articles/pgfId-1093646.md new file mode 100644 index 0000000000..e3764247de --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093646.md @@ -0,0 +1,32 @@ +# CKIMOM + + + + CKIMOM CKIMOM CKIMOM CKIMOM CKIMOM CKIMOM CKIMOM + ********************************************** + ************************** + ****** + + SUBROUTINE CKIMOM (ICKWRK, IMOM) + Returns a set of flags indicating whether the reactions are + electron momentum-transfer collision frequencies and, if so, + the index of the species with which the electron collides. + + INPUT + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + + OUTPUT + IMOM(*) - Integer array, electron momentum-transfer collision + frequency flags for reactions; + dimension at least II, the total reaction count. + IMOM(I)= -1 reaction I is not a mom-transfer coll freq + IMOM(I)= K reaction I is a mom-transfer coll frequency + and K is species index of the electron's + collision partner + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093670.md b/2026R1/chemkin_26-r1/articles/pgfId-1093670.md new file mode 100644 index 0000000000..548cf6fc52 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093670.md @@ -0,0 +1,32 @@ +# CKINDX + + + + CKINDX CKINDX CKINDX CKINDX CKINDX CKINDX CKINDX + ********************************************** + ************************** + ****** + + SUBROUTINE CKINDX (ICKWRK, RCKWRK, MM, KK, II, NFIT) + Returns a group of indices defining the size of the particular + reaction mechanism + + INPUT + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + MM - Integer scalar, mechanism total element count. + KK - Integer scalar, mechanism total species count. + II - Integer scalar, mechanism total reaction count. + NFIT - Integer scalar, number of coefficients in fits to + thermodynamic data for a temperature range; + NFIT=number of coefficients in polynomial fits to CP/R + plus 2. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093694.md b/2026R1/chemkin_26-r1/articles/pgfId-1093694.md new file mode 100644 index 0000000000..e4e6b4cc59 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093694.md @@ -0,0 +1,38 @@ +# CKINIT + + + + CKINIT CKINIT CKINIT CKINIT CKINIT CKINIT CKINIT + ********************************************** + ************************** + ****** + + SUBROUTINE CKINIT (LENICK, LENRCK, LENCCK, LINC, LOUT, ICKWRK, + RCKWRK, CCKWRK, IFLAG)** + Reads the linkfile and creates the internal work arrays ICKWRK, + RCKWRK and CCKWRK. CKINIT must be called before any other CHEMKIN + subroutine can be used, as the work arrays must be available as + their input. Applications should call CKDONE when finished to cleanup + resources allocated by CKINIT. + + INPUT + LENICK - Integer scalar, length of the integer work array, ICKWRK. + LENRCK - Integer scalar, length of the real work array, RCKWRK. + LENCCK - Integer scalar, length of the character work array, CCKWRK. + LINC - Integer scalar, linkfile input file unit number. + LOUT - Integer scalar, formatted output file unit number. + + OUTPUT + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + CCKWRK(*) - Character string workspace array; + dimension at least LENCCK. + IFLAG - Integer scalar to indicate successful reading of + linkfile; IFLAG>0 is an error type. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093724.md b/2026R1/chemkin_26-r1/articles/pgfId-1093724.md new file mode 100644 index 0000000000..f2082a0f22 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093724.md @@ -0,0 +1,44 @@ +# CKINU + + + + CKINU CKINU CKINU CKINU CKINU CKINU CKINU + ********************************************** + ************************** + ****** + + SUBROUTINE CKINU (I, NDIM, ICKWRK, RCKWRK, NSPEC, KI, NU) + Returns a count of species in a reaction, and their indices + and stoichiometric coefficients. + + INPUT + I - Integer scalar, index of a reaction; + I must be positive, and less than or equal to NII, + the total reaction count. + NDIM - Integer scalar, dimension of the arrays KI and NU; + NDIM must be at least MAXSP, the maximum number of + species allowed in a reaction. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + NSPEC - Integer scalar, the total species count for reaction I. + KI(*) - Integer array, species indices for those in + reaction I; dimension at least MAXSP, the maximum + number of species allowed in a reaction. + KI(N) is the index of the Nth species in reaction I. + NU(*) - Integer array, stoichiometric coefficients for those + in reaction I; + dimension at least MAXSP, the maximum number of + species allowed in a reaction. + NU(N) is the stoichiometric coefficient of the Nth + Nth species in reaction I, and + NU < 0 if the Nth species is a reactant; + NU > 0 if the Nth species is a product. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093760.md b/2026R1/chemkin_26-r1/articles/pgfId-1093760.md new file mode 100644 index 0000000000..993103d178 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093760.md @@ -0,0 +1,26 @@ +# CKION + + + + CKION CKION CKION CKION CKION CKION CKION + ********************************************** + ************************** + ****** + + SUBROUTINE CKION (ICKWRK, KION) + Returns the ion species indices + + INPUT + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + KION(*) - Integer array, ion species indices; + dimension at least NKKI, the total ion count. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093778.md b/2026R1/chemkin_26-r1/articles/pgfId-1093778.md new file mode 100644 index 0000000000..2215739186 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093778.md @@ -0,0 +1,48 @@ +# CKIORD + + + + CKIORD CKIORD CKIORD CKIORD CKIORD CKIORD CKIORD + ********************************************** + ************************** + ****** + + SUBROUTINE CKIORD (IDIM, KDIM, ICKWRK, RCKWRK, NIORD, IORD, FORD, + RORD) + Returns the count and indices of reactions with modified species + order and the order values for the species. + + INPUT + IDIM - Integer scalar, dimension of arrays IFORD and IRORD; + IDIM must be at least NIORD, the total number of + reactions with modified species orders. + KDIM - Integer scalar, first dimension of the arrays FORD and + RORD; + KDIM must be at least NKK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + NIORD - Integer scalar, total number of reactions with modified + species orders. + IORD(*) - Integer array, indices of reactions with modified + species orders; dimension at least NIORD. + FORD(*,*) - Real matrix, the modified forward species orders for the + NIORD reactions; + dimension at least NKK for the first, the total species + count, and at least NIORD for the second. + FORD(K,N) is the forward order of species K for the Nth + change-order reaction. + RORD(*,*) - Real matrix, the modified reverse species orders for the + NIORD reactions; + dimension at least NKK for the first, the total species + count, and at least NRORD for the second. + RORD(K,N) is the reverse order of species K for the Nth + change-order reaction. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093818.md b/2026R1/chemkin_26-r1/articles/pgfId-1093818.md new file mode 100644 index 0000000000..35fc34f34c --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093818.md @@ -0,0 +1,45 @@ +# CKIPLG + + + + CKIPLG CKIPLG CKIPLG CKIPLG CKIPLG CKIPLG CKIPLG + ********************************************** + ************************** + ****** + + SUBROUTINE CKIPLG (I, LOUT, ICKWRK, RCKWRK, NDIM1, NPRES, PRES, + PPAR, KERR) + + Returns parameters for a pressure-fit option reaction. + + INPUT + I - Integer scalar, index of a reaction. + LOUT - Integer scalar, formatted output file unit number. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + NDIM1 - Integer scalar, first dimension for a matrix of + pressure-fit Arrhenius parameters; if reaction I is + a pressure-fit reaction, NDIM1 must be at least the + number of pressures given for the reaction + + OUTPUT + NPRES - Integer scalar, count of pressures given for a + pressure-fit reaction; if NPLG=0, reaction I is not + a pressure-fit reaction. + PRES(*) - Real array; if reaction I is a pressure-fit reaction, + PRES contains the NPRES pressures (atm) used in the fits. + PPAR(*,*) - Real matrix; if reaction I is a pressure-fit reaction, + PPAR contains 3 Arrhenius parameters for each of the + NPRES pressures used in the fits. NDIM1 is the first + dimension, and must be at least NPLG, the count of + pressures given for reaction I; the second dimension + must be at least 3, the number of parameters for the + Arrhenius rate expression. + KERR Logical error flag + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093855.md b/2026R1/chemkin_26-r1/articles/pgfId-1093855.md new file mode 100644 index 0000000000..3e1170ef3b --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093855.md @@ -0,0 +1,40 @@ +# CKIREV + + + + CKIREV CKIREV CKIREV CKIREV CKIREV CKIREV CKIREV + ********************************************** + ************************** + ****** + + SUBROUTINE CKIREV (IR, ICKWRK, RCKWRK, IREV, RAR, RBR, RER) + Returns an integer flag to indicate whether reaction IR has an + explicitly assigned reverse rate constant. It also returns the + reverse Arrhenius expression values for reaction IR, + if it was explicitly assigned in the Chemkin interpreter. + If reverse Arrhenius values were not explicitly assigned, + RAR, RBR and RER will be zero. + + INPUT + IR - Integer scalar, reaction index. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + IREV - Integer scalar, + 1, reaction IR has explicit reverse rate parameters + 0, no. + RAR - Real scalar, explicit pre-exponential constants + for reaction IR. + cgs units, mole-cm-sec-K + RBR - Real scalar, explicit temperature dependence exponents + for reaction IR. + RER - Real scalar, explicit activation energy for reaction IR. + cgs units, Kelvins + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093887.md b/2026R1/chemkin_26-r1/articles/pgfId-1093887.md new file mode 100644 index 0000000000..1fe602d0ac --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093887.md @@ -0,0 +1,52 @@ +# CKIRNU + + + + CKIRNU CKIRNU CKIRNU CKIRNU CKIRNU CKIRNU CKIRNU + ********************************************** + ************************** + ****** + + SUBROUTINE CKIRNU (IDIM, NDIM, ICKWRK, RCKWRK, NIRNU, IRNU, NSPEC, + KI, RNU) + Returns the count and indices of reactions with real stoichiometric + coefficients, counts of species in the reactions, and the species + indices and coefficients. + + INPUT + IDIM - Integer scalar, dimension of the arrays IRNU and NSPEC, + and the second dimension of matrices KI and RNU; + IDIM must be at least NIRNU, the number of reactions + with real stoichiometric coefficients. + NDIM - Integer scalar, first dimension of matrices KI and RNU; + NDIM must be at least MAXSP, the maximum number of + species allowed in a reaction. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + NIRNU - Integer scalar, total number of reactions with real + stoichiometric coefficients. + IRNU(*) - Integer array, indices of reactions with real + stoichiometric coefficients; dimension at least NIRNU. + NSPEC(*) - Integer array, total number of species in a reaction; + dimension at least NIRNU. + KI(*,*) - Integer matrix, species indices for species in the + NIRNU reactions; dimension at least MAXSP for the first, + and at least NIRNU for the second. + KI(M,N) is the species index of the Mth species in the + Nth real coefficient reaction. + RNU(*,*) - Real matrix, stoichiometric coefficients for species + in the NIRNU reactions; dimension at least MAXSP for + the first, and at least NIRNU for the second. + RNU(M,N) is the stoichiometric coefficient of the Mth + species in the Nth real coefficient reaction, and + RNU(M,*) < 0 if the Mth species is a reactant; + RNU(M,*) > 0 if the Mth species is a product. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093931.md b/2026R1/chemkin_26-r1/articles/pgfId-1093931.md new file mode 100644 index 0000000000..5247b1d441 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093931.md @@ -0,0 +1,41 @@ +# CKISIG + + + + CKISIG CKISIG CKISIG CKISIG CKISIG CKISIG CKISIG + ********************************************** + ************************** + ****** + + SUBROUTINE CKISIG (P, T, X, XNUIK, KK, ICKWRK, RCKWRK, SIGI) + Returns the ion species electrical conductivities given + collision frequencies. + + INPUT + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + XNUIK(*,*)- Real matrix, momentum-transfer collision frequencies + for the ions with the species; + dimension at least KK for the first, the total species + count, and at least NKKI for the second, the ion count. + KK - Integer scalar, first dimension of XNUIK. + + OUTPUT + SIGI(*) - Real array, ion electrical conductivities (DC); + dimension at least NKKI, the total ion count. + cgs units, GM/CM*S + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093964.md b/2026R1/chemkin_26-r1/articles/pgfId-1093964.md new file mode 100644 index 0000000000..b120c9cd0f --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093964.md @@ -0,0 +1,31 @@ +# CKITDE + + + + CKITDE CKITDE CKITDE CKITDE CKITDE CKITDE CKITDE + ********************************************** + ************************** + ****** + + SUBROUTINE CKITDE (ICKWRK, RCKWRK, ITDE) + Returns a set of flags indicating whether the reactions are + non-thermal, and if so, returns the index of the species on + which the reaction depends. + + INPUT + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + ITDE(*) - Integer array, non-termal flags for reactions; + dimension at least II, the total reaction count. + ITDE(I)= -1 reaction I is not a non-thermal reaction + ITDE(I)= K reaction I is a non-thermal reaction with + temperature dependence on species # K + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1093987.md b/2026R1/chemkin_26-r1/articles/pgfId-1093987.md new file mode 100644 index 0000000000..1a4c567615 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1093987.md @@ -0,0 +1,38 @@ +# CKITR + + + + CKITR CKITR CKITR CKITR CKITR CKITR CKITR + ********************************************** + ************************** + ****** + + SUBROUTINE CKITR (ICKWRK, RCKWRK, ITHB, IREV) + Returns a set of flags indicating whether the reactions are + reversible or whether they contain arbitrary third bodies + + INPUT + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + ITHB(*) - Integer array, third-body indices for reactions; + dimension at least II, the total reaction count. + ITHB(I)= -1 reaction I is not a third-body reactions + ITHB(I)= 0 reaction I is a third-body reaction with + no enhanced third body efficiencies + ITHB(I)= N reaction I is a third-body reaction with + N species enhanced third-body efficiencies. + + IREV(*) - Integer array, reversibility indices and species + count (reactants plus products) for reactions; + dimension at least II, the total reaction count. + IREV(I)=+N, reversible reaction I has N species + IREV(I)=-N, irreversible reaction I has N species + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094017.md b/2026R1/chemkin_26-r1/articles/pgfId-1094017.md new file mode 100644 index 0000000000..01bde43906 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094017.md @@ -0,0 +1,29 @@ +# CKIUQ + + + + CKIUQ CKIUQ CKIUQ CKIUQ CKIUQ CKIUQ CKIUQ + ********************************************** + ************************** + ****** + + SUBROUTINE CKIUQ (ICKWRK, RCKWRK, IQUSR) + Returns a set of flags indicating whether the reactions are + user-modify rate-of-progress reactions, and if so, + the user-modify type. + + INPUT + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + OUTPUT + IQUSR(*) - Integer array, user rate-modify flags for reactions; + dimension at least II, the total reaction count. + IQUSR(I)= 0 reaction I is not a user rate-modify reaction + IQUSR(I)= N reaction I is a user rate-modify reaction, + with rate-modify type N + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094038.md b/2026R1/chemkin_26-r1/articles/pgfId-1094038.md new file mode 100644 index 0000000000..6fe2f24445 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094038.md @@ -0,0 +1,36 @@ +# CKIVIS + + + + CKIVIS CKIVIS CKIVIS CKIVIS CKIVIS CKIVIS CKIVIS + ********************************************** + ************************** + ****** + + SUBROUTINE CKIVIS (P, T, X, XNUIM, K, ICKWRK, RCKWRK, VISI) + Returns the ion species viscosities given collision frequencies. + + INPUT + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + X(*) - Real array of mole fractions of the mixture; + dimension at least KK, the total species count. + XNUIM - Real scalar, momentum-transfer collision frequency + for an ion + K - Integer scalar, species index of the ion + OUTPUT + VISI - Real scalar, ion viscosity + cgs units, GM/CM*S + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094066.md b/2026R1/chemkin_26-r1/articles/pgfId-1094066.md new file mode 100644 index 0000000000..506a0f9759 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094066.md @@ -0,0 +1,32 @@ +# CKIXSM + + + + CKIXSM CKIXSM CKIXSM CKIXSM CKIXSM CKIXSM CKIXSM + ********************************************** + ************************** + ****** + + SUBROUTINE CKIXSM (ICKWRK, IXSM, IXSK) + Returns a set of flags indicating whether the reactions are ion + momentum-transfer cross sections. + + INPUT + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + + OUTPUT + IXSM(*) - Integer array, ion momentum-transfer cross-section flag; + dimension at least II, the total reaction count. + IXSM(I)= -1 reaction I is not a ion mom-transfer x-sec + IXSM(I)= KI reaction I is a ion mom-trans cross-section + and KI is the ion species index + IXSK(*) - Integer array, species indices for the collision partner + of the ion momentum-transfer cross-section reactions; + dimension at least II, the total reaction count. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094090.md b/2026R1/chemkin_26-r1/articles/pgfId-1094090.md new file mode 100644 index 0000000000..fed4c68f0e --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094090.md @@ -0,0 +1,39 @@ +# CKKFKR + + + + CKKFKR CKKFKR CKKFKR CKKFKR CKKFKR CKKFKR CKKFKR + ********************************************** + ************************** + ****** + + SUBROUTINE CKKFKR (P, T, X, ICKWRK, RCKWRK, FWDK, REVK) + Returns the forward and reverse reaction rates for reactions + given pressure, temperature(s) and mole fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + FWDK(*) - Real array, forward reaction rates for reactions; + dimension at least II, the total reaction count. + cgs units, depends on the reaction + REVK(*) - Real array, reverse reaction rates for reactions; + dimension at least II, the total reaction count. + cgs units, depends on the reaction + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094121.md b/2026R1/chemkin_26-r1/articles/pgfId-1094121.md new file mode 100644 index 0000000000..9d7c67ce60 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094121.md @@ -0,0 +1,35 @@ +# CKKFRT + + + + CKKFRT CKKFRT CKKFRT CKKFRT CKKFRT CKKFRT CKKFRT + ********************************************** + ************************** + ****** + + SUBROUTINE CKKFRT (P, T, ICKWRK, RCKWRK, RKFT, RKRT) + Returns the forward and reverse reaction rates for reactions + given pressure and temperature(s) + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + RKFT(*) - Real array, forward reaction rates for reactions; + dimension at least II, the total reaction count. + cgs units, depends on the reaction + RKRT(*) - Real array, reverse reaction rates for reactions; + dimension at least II, the total reaction count. + cgs units, depends on the reaction + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094148.md b/2026R1/chemkin_26-r1/articles/pgfId-1094148.md new file mode 100644 index 0000000000..92b8602e92 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094148.md @@ -0,0 +1,26 @@ +# CKKTFL + + + + CKKTFL CKKTFL CKKTFL CKKTFL CKKTFL CKKTFL CKKTFL + ********************************************** + ************************** + ****** + + SUBROUTINE CKKTFL (ICKWRK, KTFL) + Allows the user to assign a location in the temperature array + to use for each gas-phase species. + + INPUT + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + KTFL(*) - Integer array, indices into the temperature(s) for + species; + dimension at least KK, the total species count. + Default value stored in ICKWRK is set to 1 in CKINIT. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094166.md b/2026R1/chemkin_26-r1/articles/pgfId-1094166.md new file mode 100644 index 0000000000..bc542e6dee --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094166.md @@ -0,0 +1,26 @@ +# CKKTMP + + + + CKKTMP CKKTMP CKKTMP CKKTMP CKKTMP CKKTMP CKKTMP + ********************************************** + ************************** + ****** + + SUBROUTINE CKKTMP (ICKWRK, KTFL) + Returns the temperature array indices for the + gas-phase species. + + INPUT + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + KTFL(*) - Integer array, indices into the temperature(s) for + species; + dimension at least KK, the total species count. + Default value stored in ICKWRK is set to 1 in CKINIT. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094184.md b/2026R1/chemkin_26-r1/articles/pgfId-1094184.md new file mode 100644 index 0000000000..b9e52a5243 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094184.md @@ -0,0 +1,29 @@ +# CKKUW + + + + CKKUW CKKUW CKKUW CKKUW CKKUW CKKUW CKKUW + ********************************************** + ************************** + ****** + + SUBROUTINE CKKUW (ICKWRK, KWUSR) + Returns a set of flags indicating whether the species are + user-modify rate-of-production species, and if so, + the user-modify type. + + INPUT + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + OUTPUT + KWUSR(*) - Integer array, user rate-modify flags for species; + dimension at least KK, the total species count. + KWUSR(K)= 0 species K is not a user rate-modify species + KWUSR(K)= N species is a user rate-modify species, + with rate-modify type N + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094205.md b/2026R1/chemkin_26-r1/articles/pgfId-1094205.md new file mode 100644 index 0000000000..50ef0a91c7 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094205.md @@ -0,0 +1,44 @@ +# CKLEN2 + + + + CKLEN2 CKLEN2 CKLEN2 CKLEN2 CKLEN2 CKLEN2 CKLEN2 + ********************************************** + ************************** + ****** + + SUBROUTINE CKLEN2 (LINC, LOUT, LI, LR, LC, MM, KK, II, + MAXSP, MAXTP, MAXTB, MAXORD, KKI, IFLAG) + Returns the lengths required for work arrays, as well as + mechanism size information for memory allocation. + + INPUT + LINC - Integer scalar, input file unit for the linkfile. + LOUT - Integer scalar, formatted output file unit. + + OUTPUT + LI - Integer scalar, minimum length required for the + integer work array. + LR - Integer scalar, minimum length required for the + real work array. + LC - Integer scalar, minimum length required for the + character work array. + MM - Integer scalar, number of elements + KK - Integer scalar, number of gas-phase species + II - Integer scalar, number of gas-phase reactions + MAXSP - Integer scalar, maximum number of species per reaction + MAXTP - Integer scalar, maximum number of temperature bounds + for the thermodynamic fits. + MAXTB - Integer scalar, maximum number of third bodies per reax + MAXORD - Integer scalar, maximum number of order-changes per + reactions that use arbitrary reaction orders + KKI - Integer scalar, number of gas-phase ions + IFLAG - Integer scalar, indicates successful reading of + linkfile; IFLAG>0 indicates error type. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094265.md b/2026R1/chemkin_26-r1/articles/pgfId-1094265.md new file mode 100644 index 0000000000..08fe17cf75 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094265.md @@ -0,0 +1,28 @@ +# CKLKUP + + + + CKLKUP CKLKUP CKLKUP CKLKUP CKLKUP CKLKUP CKLKUP + ********************************************** + ************************** + ****** + + INTEGER FUNCTION CKLKUP (ITEM, LIST, NLIST) + Looks up an item in an integer list. If an item is found, + it returns the first position of the item in the list. If an + item is not found, this routine returns the value 0. + + INPUT + ITEM - Integer scalar; Item to look up in the list + LIST(*) - Integer array; List of entries + NLIST - Integer scalar; Number of entries in the list + + RETURN + integer position of the item in the list. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094285.md b/2026R1/chemkin_26-r1/articles/pgfId-1094285.md new file mode 100644 index 0000000000..484d769073 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094285.md @@ -0,0 +1,22 @@ +# CKLSCH + + + + CKLSCH CKLSCH CKLSCH CKLSCH CKLSCH CKLSCH CKLSCH + ********************************************** + ************************** + ****** + + INTEGER FUNCTION CKLSCH (STR) + Returns the index of the final non-blank, non-tab character in + a string. + + INPUT + STR - Character string + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094299.md b/2026R1/chemkin_26-r1/articles/pgfId-1094299.md new file mode 100644 index 0000000000..9f151484ea --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094299.md @@ -0,0 +1,30 @@ +# CKMMWC + + + + CKMMWC CKMMWC CKMMWC CKMMWC CKMMWC CKMMWC CKMMWC + ********************************************** + ************************** + ****** + + SUBROUTINE CKMMWC (C, ICKWRK, RCKWRK, WTM) + Returns the mean molecular weight of the gas mixture given molar + concentrations. + + INPUT + C(*) - Real array, concentrations of the species; + dimension at least KK, the total species count. + cgs units, mole/cm**3 + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + WTM - Real scalar, mean molecular weight of the mixture. + cgs units, gm/mole + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094321.md b/2026R1/chemkin_26-r1/articles/pgfId-1094321.md new file mode 100644 index 0000000000..57db599398 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094321.md @@ -0,0 +1,29 @@ +# CKMMWX + + + + CKMMWX CKMMWX CKMMWX CKMMWX CKMMWX CKMMWX CKMMWX + ********************************************** + ************************** + ****** + + SUBROUTINE CKMMWX (X, ICKWRK, RCKWRK, WTM) + Returns the mean molecular weight of the gas mixture given mole + fractions. + + INPUT + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + WTM - Real scalar, mean molecular weight of the mixture. + cgs units, gm/mole + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094342.md b/2026R1/chemkin_26-r1/articles/pgfId-1094342.md new file mode 100644 index 0000000000..aa87322c6c --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094342.md @@ -0,0 +1,29 @@ +# CKMMWY + + + + CKMMWY CKMMWY CKMMWY CKMMWY CKMMWY CKMMWY CKMMWY + ********************************************** + ************************** + ****** + + SUBROUTINE CKMMWY (Y, ICKWRK, RCKWRK, WTM) + Returns the mean molecular weight of the gas mixture given mass + fractions. + + INPUT + Y(*) - Real array, mass fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + WTM - Real scalar, mean molecular weight of the mixture. + cgs units, gm/mole + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094363.md b/2026R1/chemkin_26-r1/articles/pgfId-1094363.md new file mode 100644 index 0000000000..b8d3b36a66 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094363.md @@ -0,0 +1,26 @@ +# CKMXTP + + + + CKMXTP CKMXTP CKMXTP CKMXTP CKMXTP CKMXTP CKMXTP + ********************************************** + ************************** + ****** + + SUBROUTINE CKMXTP (ICKWRK, MAXTP) + Returns the maximum number of temperatures used in fitting the + thermodynamic properties of the species. + + INPUT + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + + OUTPUT + MXTP - Integer scalar, maximum number of temperatures used + to fit the thermodynamic properties of the species. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094381.md b/2026R1/chemkin_26-r1/articles/pgfId-1094381.md new file mode 100644 index 0000000000..06e0c19b7e --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094381.md @@ -0,0 +1,32 @@ +# CKNCF + + + + CKNCF CKNCF CKNCF CKNCF CKNCF CKNCF CKNCF + ********************************************** + ************************** + ****** + + SUBROUTINE CKNCF (MDIM, ICKWRK, RCKWRK, NCF) + Returns the elemental composition of the species + + INPUT + MDIM - Integer scalar, first dimension of the matrix NCF; + MDIM must be equal to or greater than MM, the total + element count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + NCF(*,*) - Real matrix, the elemental composition of the species; + dimension at least MM for the first, the total element + count, and at least KK for the second, the total species + count. + NCF(M,K) is the quantity of the element M in species K. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094405.md b/2026R1/chemkin_26-r1/articles/pgfId-1094405.md new file mode 100644 index 0000000000..14aa3f87cc --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094405.md @@ -0,0 +1,20 @@ +# CKNCMP + + + + CKNCMP CKNCMP CKNCMP CKNCMP CKNCMP CKNCMP CKNCMP + ********************************************** + ************************** + ****** + + SUBROUTINE CKNCMP (STR, IRAY, II, I, NF) + Returns the first index of the character string STR if it occurs + in the character string IRAY, and returns the total number of + times STR occurs in IRAY. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094417.md b/2026R1/chemkin_26-r1/articles/pgfId-1094417.md new file mode 100644 index 0000000000..b24caa2920 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094417.md @@ -0,0 +1,22 @@ +# CKNORM + + + + CKNORM CKNORM CKNORM CKNORM CKNORM CKNORM CKNORM + ********************************************** + ************************** + ****** + + SUBROUTINE CKNORM (ARRAY, NN) + Utility to normalize the real members of an array. + + INPUT + ARRAY(*) - Real array. + NN - Integer scalar; the size of ARRAY. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094431.md b/2026R1/chemkin_26-r1/articles/pgfId-1094431.md new file mode 100644 index 0000000000..8cfb664d5e --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094431.md @@ -0,0 +1,42 @@ +# CKNPAR + + + + CKNPAR CKNPAR CKNPAR CKNPAR CKNPAR CKNPAR CKNPAR + ********************************************** + ************************** + ****** + + SUBROUTINE CKNPAR (LINE, NPAR, LOUT, IPAR, ISTART, KERR) + Searches a character string LINE from last to first character, + to create a substring IPAR containing NPAR blank-delimited numbers; + ISTART is the column of LINE containing IPAR. This allows format- + free input of combined alpha-numeric data. For example, + + input: LINE*80 = "t1 t2 dt 300.0 3.0E3 50" + NPAR = 3, the number of substrings requested + LOUT = 6, a logical unit number on which to write + diagnostic messages. + output: IPAR*80 = "300.0 3.0E3 50" + ISTART = 13, the starting column in LINE of the + NPAR substrings + KERR = .FALSE. + + INPUT + LINE - Character string; length determined by calling routine. + NPAR - Integer scalar, number of substrings expected. + LOUT - Integer scalar, output unit for printed diagnostics. + + OUTPUT + IPAR - Character string, subset of LINE, containing only the + NPAR substrings. + ISTART - Integer scalar, starting location in LINE of the NPAR + substrings. + KERR - Logical, character length or syntax error flag. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094465.md b/2026R1/chemkin_26-r1/articles/pgfId-1094465.md new file mode 100644 index 0000000000..057ee2bcb6 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094465.md @@ -0,0 +1,33 @@ +# CKNU + + + + CKNU CKNU CKNU CKNU CKNU CKNU CKNU + ********************************************** + ************************** + ****** + + SUBROUTINE CKNU (KDIM, ICKWRK, RCKWRK, NUKI) + Returns the stoichiometric coefficients of the reactions. + + INPUT + KDIM - Integer scalar, first dimension of the matrix NUKI; + KDIM must be greater than or equal to KK, the total + species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + NUKI(*,*) - Integer matrix, stoichiometric coefficients of the + species in the reactions; dimension at least KK for + the first, the total species count, and at least II + for the second, the total reaction count. + NUKI(K,I) is the stoichiometric coefficient of + species K in reaction I. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094490.md b/2026R1/chemkin_26-r1/articles/pgfId-1094490.md new file mode 100644 index 0000000000..0bf9458db9 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094490.md @@ -0,0 +1,37 @@ +# CKNUF + + + + CKNUF CKNUF CKNUF CKNUF CKNUF CKNUF CKNUF + ********************************************** + ************************** + ****** + + SUBROUTINE CKNUF (KDIM, ICKWRK, RCKWRK, NUFKI) + Returns the forward stoichiometric coefficients for reactions; + by definition, reactants' coefficients are negative. + Contrast this subroutine with subroutine CKNU, which returns the + net stoichiometric coefficients for a reaction. + + INPUT + KDIM - Integer scalar, first dimension of the matrix NUKI; + KDIM must be greater than or equal to KK, the total + species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + NUFKI(*,*)- Integer matrix, stoichiometric coefficients of the + species in the forward direction of the reactions + (reactants only); dimension at least KK in the first, + the total species count, and at least II for the + second, the total reaction count. + NUKI(K,I) is the stoichiometric coefficient of + species K in forward direction of reaction I. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094519.md b/2026R1/chemkin_26-r1/articles/pgfId-1094519.md new file mode 100644 index 0000000000..5b0d1446ec --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094519.md @@ -0,0 +1,34 @@ +# CKPC + + + + CKPC CKPC CKPC CKPC CKPC CKPC CKPC + ********************************************** + ************************** + ****** + + SUBROUTINE CKPC (T, C, ICKWRK, RCKWRK, P) + Returns the pressure of the gas mixture given + temperature(s) and molar concentrations. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + C(*) - Real array, concentrations of the species; + dimension at least KK, the total species count. + cgs units, mole/cm**3 + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094545.md b/2026R1/chemkin_26-r1/articles/pgfId-1094545.md new file mode 100644 index 0000000000..37c18dc529 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094545.md @@ -0,0 +1,29 @@ +# CKPHAZ + + + + CKPHAZ CKPHAZ CKPHAZ CKPHAZ CKPHAZ CKPHAZ CKPHAZ + ********************************************** + ************************** + ****** + + SUBROUTINE CKPHAZ (ICKWRK, RCKWRK, KPHASE) + Returns a set of flags indicating phases of the species + + INPUT + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + KPHASE(*) - Integer array, phases of the species; + dimension at least KK, the total species count. + KPHASE(K)=-1, species K is solid + KPHASE(K)= 0, species K is gaseous + KPHASE(K)=+1, species K is liquid + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094566.md b/2026R1/chemkin_26-r1/articles/pgfId-1094566.md new file mode 100644 index 0000000000..e5a76e5b30 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094566.md @@ -0,0 +1,33 @@ +# CKPNT + + + + CKPNT CKPNT CKPNT CKPNT CKPNT CKPNT CKPNT + ********************************************** + ************************** + ****** + + SUBROUTINE CKPNT (LSAVE, LOUT, NPOINT, VERS, PREC, LENI, LENR, + LENC, KERR) + Reads from a file information about a Chemkin linkfile, and + pointers for work arrays. + + INPUT + LSAVE - Integer scalar, input unit for binary data file. + LOUT - Integer scalar, formatted output file unit number. + + OUTPUT + NPOINT - Integer scalar, total pointers count. + VERS - Real scalar, version number of the Chemkin linkfile. + PREC - Character string, machine precision of the linkfile. + LENI - Integer scalar, length required for integer work array. + LENR - Integer scalar, length required for real work array. + LENC - Integer scalar, length required for character work array. + KERR - Logical, error flag. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094591.md b/2026R1/chemkin_26-r1/articles/pgfId-1094591.md new file mode 100644 index 0000000000..f74fbd910b --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094591.md @@ -0,0 +1,35 @@ +# CKPX + + + + CKPX CKPX CKPX CKPX CKPX CKPX CKPX + ********************************************** + ************************** + ****** + + SUBROUTINE CKPX (RHO, T, X, ICKWRK, RCKWRK, P) + Returns the pressure of the gas mixture given mass density, + temperature(s) and mole fractions. + + INPUT + RHO - Real scalar, mass density. + cgs units, gm/cm**3 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094618.md b/2026R1/chemkin_26-r1/articles/pgfId-1094618.md new file mode 100644 index 0000000000..d741936c70 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094618.md @@ -0,0 +1,35 @@ +# CKPY + + + + CKPY CKPY CKPY CKPY CKPY CKPY CKPY + ********************************************** + ************************** + ****** + + SUBROUTINE CKPY (RHO, T, Y, ICKWRK, RCKWRK, P) + Returns the pressure of the gas mixture given mass density, + temperature(s) and mass fractions. + + INPUT + RHO - Real scalar, mass density. + cgs units, gm/cm**3 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + Y(*) - Real array, mass fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094645.md b/2026R1/chemkin_26-r1/articles/pgfId-1094645.md new file mode 100644 index 0000000000..cf1bd3a6c2 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094645.md @@ -0,0 +1,35 @@ +# CKQC + + + + CKQC CKQC CKQC CKQC CKQC CKQC CKQC + ********************************************** + ************************** + ****** + + SUBROUTINE CKQC (T, C, ICKWRK, RCKWRK, Q) + Returns the rates of progress for reactions given temperature(s) + and molar concentrations. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + C(*) - Real array, concentrations of the species; + dimension at least KK, the total species count. + cgs units, mole/cm**3 + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + Q(*) - Real array, rates of progress for reactions; + dimension at least II, the total reaction count. + cgs units, moles/(cm**3*sec) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094672.md b/2026R1/chemkin_26-r1/articles/pgfId-1094672.md new file mode 100644 index 0000000000..df889abba0 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094672.md @@ -0,0 +1,36 @@ +# CKQXP + + + + CKQXP CKQXP CKQXP CKQXP CKQXP CKQXP CKQXP + ********************************************** + ************************** + ****** + + SUBROUTINE CKQXP (P, T, X, ICKWRK, RCKWRK, Q) + Returns the rates of progress for reactions given pressure, + temperature(s) and mole fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + Q(*) - Real array, rates of progress for reactions; + dimension at least II, the total reaction count. + cgs units, moles/(cm**3*sec) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094700.md b/2026R1/chemkin_26-r1/articles/pgfId-1094700.md new file mode 100644 index 0000000000..1a051278a0 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094700.md @@ -0,0 +1,36 @@ +# CKQYP + + + + CKQYP CKQYP CKQYP CKQYP CKQYP CKQYP CKQYP + ********************************************** + ************************** + ****** + + SUBROUTINE CKQYP (P, T, Y, ICKWRK, RCKWRK, Q) + Returns the rates of progress for reactions given pressure, + temperature(s) and mass fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + Y(*) - Real array, Mass fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + Q(*) - Real array, rates of progress for reactions; + dimension at least II, the total reaction count. + cgs units, moles/(cm**3*sec) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094728.md b/2026R1/chemkin_26-r1/articles/pgfId-1094728.md new file mode 100644 index 0000000000..8cb16c496c --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094728.md @@ -0,0 +1,36 @@ +# CKQYR + + + + CKQYR CKQYR CKQYR CKQYR CKQYR CKQYR CKQYR + ********************************************** + ************************** + ****** + + SUBROUTINE CKQYR (RHO, T, Y, ICKWRK, RCKWRK, Q) + Returns the rates of progress for reactions given mass density, + temperature(s) and mass fractions. + + INPUT + RHO - Real scalar, mass density. + cgs units, gm/cm**3 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + Y(*) - Real array, mass fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + Q(*) - Real array, rates of progress for reactions; + dimension at least II, the total reaction count. + cgs units, moles/(cm**3*sec) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094756.md b/2026R1/chemkin_26-r1/articles/pgfId-1094756.md new file mode 100644 index 0000000000..1338fd7112 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094756.md @@ -0,0 +1,32 @@ +# CKR2CH + + + + CKR2CH CKR2CH CKR2CH CKR2CH CKR2CH CKR2CH CKR2CH + ********************************************** + ************************** + ****** + + SUBROUTINE CKR2CH (RNUM, STR, I, KERR) + Returns a character string representation of a real number + and the effective length of the string. + + INPUT + RNUM - Real scalar, to be converted to a string; + the maximum magnitude of RNUM is machine-dependent. + + OUTPUT + STR - Character string, left-justified representation of RNUM; + that is, RNUM= 0.0 returns STR=" 0.00" + RNUM= -10.5 returns STR="-1.05E+01" + RNUM= 1.86E-100 returns in STR=" 1.86E-100" + the minimum length of STR required is 5 + I - Integer scalar, total non-blank characters in RNUM. + KERR - Logical, character length error flag. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094780.md b/2026R1/chemkin_26-r1/articles/pgfId-1094780.md new file mode 100644 index 0000000000..0387b0720b --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094780.md @@ -0,0 +1,33 @@ +# CKRAEX + + + + CKRAEX CKRAEX CKRAEX CKRAEX CKRAEX CKRAEX CKRAEX + ********************************************** + ************************** + ****** + + SUBROUTINE CKRAEX (I, RCKWRK, RA) + Get/put the Pre-exponential coefficient of the Ith reaction + + INPUT + I - Integer scalar, reaction index; + I > 0 gets RA(I) from RCKWRK + I < 0 puts RA(I) into RCKWRK + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + If I < 1: + RA - Real scalar, pre-exponential coefficient for reaction I. + cgs units, mole-cm-sec-K + + OUTPUT + If I > 1: + RA - Real scalar, pre-exponential coefficient for reaction I. + cgs units, mole-cm-sec-K + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094805.md b/2026R1/chemkin_26-r1/articles/pgfId-1094805.md new file mode 100644 index 0000000000..b42f7c5ac7 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094805.md @@ -0,0 +1,58 @@ +# CKRCXP + + + + CKRCXP CKRCXP CKRCXP CKRCXP CKRCXP CKRCXP CKRCXP + ********************************************** + ************************** + ****** + + SUBROUTINE CKRCXP (P, T, X, ICKWRK, RCKWRK, RCFT, RCRT) + Returns the forward and reverse rate constants for all reactions + given pressure, temperature and mole fractions. + Note this subroutine will calculate a value for the reverse rate + constant irrespective of whether the reaction was deemed reversible + in the interpreter file. Also note that the concentration of third + bodies for third body reactions is included in the returned rate + constant. The units for the rate constant will depend + on the number of reactants. + + INPUT + P - Pressure. + cgs units - dynes/cm**2 + Data type - real scalar + T(*) - Temperature. + cgs units - K + Data type - real array + X - Mole fractions of the species. + cgs units - none + Data type - real array + Dimension X(*) at least KK, the total number of + species. + ICKWRK - Array of integer workspace. + Data type - integer array + Dimension ICKWRK(*) at least LENIWK. + RCKWRK - Array of real work space. + Data type - real array + Dimension RCKWRK(*) at least LENRWK. + + OUTPUT + RCFT - Rate constant for the forward reaction. + cgs units - mole/(cm**3*sec) * + (cm**3/mole)**(sum of forward stoich. coeff) + Data type - real array + Dimension RCFT(*) at least II, the total number + of reactions. + RCRT - Rate constant for the forward reaction. + cgs units - mole/(cm**3*sec) * + (cm**3/mole)**(sum of reverse stoich. coeff) + Data type - real array + Dimension RCRT(*) at least II, the total number + of reactions. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094855.md b/2026R1/chemkin_26-r1/articles/pgfId-1094855.md new file mode 100644 index 0000000000..0b16c50b07 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094855.md @@ -0,0 +1,33 @@ +# CKRDEX + + + + CKRDEX CKRDEX CKRDEX CKRDEX CKRDEX CKRDEX CKRDEX + ********************************************** + ************************** + ****** + + SUBROUTINE CKRDEX (I, RCKWRK, RD) + Get/put the perturbation factor of the Ith reaction + + INPUT + I - Integer scalar, reaction index; + I > 0 gets RD(I) from RCKWRK + I < 0 puts RD(I) into RCKWRK + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + If I < 1: + RD - Real scalar, perturbation factor for reaction I; + cgs units, mole-cm-sec-K. + + OUTPUT + If I > 1: + RD - Real scalar, perturbation factor for reaction I; + cgs units, mole-cm-sec-K. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094880.md b/2026R1/chemkin_26-r1/articles/pgfId-1094880.md new file mode 100644 index 0000000000..3ae67ced3e --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094880.md @@ -0,0 +1,28 @@ +# CKREADF + + + + CKREADF CKREADF CKREADF CKREADF CKREADF CKREADF CKREADF + ********************************************** + ************************** + ****** + + SUBROUTINE CKREADF (LOUT, LFORM, KERR) + Reads from a formatted file the pointer integers for the + gas-phase CHEMKIN work arrays (See CKSAVEF) + + INPUT + LOUT - Integer scalar, formatted output file unit number. + for diagnostic printing + LFORM - Integer scalar, formatted output file unit number + for reading the pointer integers from a file + OUTPUT + KERR - Logical flag indicating whether an error was + encountered while reading from the file + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094900.md b/2026R1/chemkin_26-r1/articles/pgfId-1094900.md new file mode 100644 index 0000000000..1975edc3ec --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094900.md @@ -0,0 +1,33 @@ +# CKREEX + + + + CKREEX CKREEX CKREEX CKREEX CKREEX CKREEX CKREEX + ********************************************** + ************************** + ****** + + SUBROUTINE CKREEX (I, RCKWRK, RE) + Get/put the activation energy of the Ith reaction + + INPUT + I - Integer scalar, reaction index; + I > 0 gets RE(I) from RCKWRK + I < 0 puts RE(I) into RCKWRK + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + If I < 1: + RE - Real scalar, activation energy for reaction I. + cgs units, K + + OUTPUT + If I > 1: + RE - Real scalar, activation energy for reaction I. + cgs units, K + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094948.md b/2026R1/chemkin_26-r1/articles/pgfId-1094948.md new file mode 100644 index 0000000000..7db30ad6dc --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094948.md @@ -0,0 +1,33 @@ +# CKRHEX + + + + CKRHEX CKRHEX CKRHEX CKRHEX CKRHEX CKRHEX CKRHEX + ********************************************** + ************************** + ****** + + SUBROUTINE CKRHEX (K, RCKWRK, A6) + Returns an array of the sixth thermodynamic polynomial + coefficients for a species, or changes their value, + depending on the sign of K. + + INPUT + K - Integer scalar, species index; + K>0 gets A6(*) from RCKWRK, + K<0 puts A6(*) into RCKWRK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + A6(*) - Real array, the 6th thermodynamic polynomial + coefficients for species K, over the number + of fit temperature ranges; dimension at least (MXTP-1), + where MXTP is the maximum number of temperatures used + to divide the thermodynamic fits. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1094974.md b/2026R1/chemkin_26-r1/articles/pgfId-1094974.md new file mode 100644 index 0000000000..d0ff10ae7d --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1094974.md @@ -0,0 +1,36 @@ +# CKRHOC + + + + CKRHOC CKRHOC CKRHOC CKRHOC CKRHOC CKRHOC CKRHOC + ********************************************** + ************************** + ****** + + SUBROUTINE CKRHOC (P, T, C, ICKWRK, RCKWRK, RHO) + Returns the mass density of the gas mixture given pressure, + temperature(s) and molar concentrations. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + C(*) - Real array, concentrations of the species; + dimension at least KK, the total species count. + cgs units, mole/cm**3 + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + RHO - Real scalar, mass density. + cgs units, gm/cm**3 + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095001.md b/2026R1/chemkin_26-r1/articles/pgfId-1095001.md new file mode 100644 index 0000000000..8020c13bdf --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095001.md @@ -0,0 +1,35 @@ +# CKRHOX + + + + CKRHOX CKRHOX CKRHOX CKRHOX CKRHOX CKRHOX CKRHOX + ********************************************** + ************************** + ****** + + SUBROUTINE CKRHOX (P, T, X, ICKWRK, RCKWRK, RHO) + Returns the mass density of the gas mixture given pressure, + temperature(s) and mole fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + RHO - Real scalar, mass density. + cgs units, gm/cm**3 + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095028.md b/2026R1/chemkin_26-r1/articles/pgfId-1095028.md new file mode 100644 index 0000000000..e9d45f5930 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095028.md @@ -0,0 +1,35 @@ +# CKRHOY + + + + CKRHOY CKRHOY CKRHOY CKRHOY CKRHOY CKRHOY CKRHOY + ********************************************** + ************************** + ****** + + SUBROUTINE CKRHOY (P, T, Y, ICKWRK, RCKWRK, RHO) + Returns the mass density of the gas mixture given pressure, + temperature(s) and mass fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + Y(*) - Real array, mass fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + RHO - Real scalar, mass density. + cgs units, gm/cm**3 + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095055.md b/2026R1/chemkin_26-r1/articles/pgfId-1095055.md new file mode 100644 index 0000000000..77da949795 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095055.md @@ -0,0 +1,32 @@ +# CKRP + + + + CKRP CKRP CKRP CKRP CKRP CKRP CKRP + ********************************************** + ************************** + ****** + + SUBROUTINE CKRP (ICKWRK, RCKWRK, RU, RUC, PA) + Returns universal gas constants and the pressure of one standard + atmosphere + + INPUT + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + RU - Real scalar, universal gas constant. + cgs units, 8.314510E7 ergs/(mole*K) + RUC - Real scalar, universal gas constant used only in + conjunction with activation energy. + preferred units, RU / 4.184E7 cal/(mole*K) + PA - Real scalar, pressure of one standard atmosphere. + cgs units, 1.01325E6 dynes/cm**2 + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095118.md b/2026R1/chemkin_26-r1/articles/pgfId-1095118.md new file mode 100644 index 0000000000..3c6a43d4f8 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095118.md @@ -0,0 +1,35 @@ +# CKSBML + + + + CKSBML CKSBML CKSBML CKSBML CKSBML CKSBML CKSBML + ********************************************** + ************************** + ****** + + SUBROUTINE CKSBML (P, T, X, ICKWRK, RCKWRK, SBML) + Returns the mean entropy of the mixture in molar units given + pressure, temperature(s) and mole fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + SBML - Real scalar, mean entropy. + cgs units, ergs/(mole*K) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095145.md b/2026R1/chemkin_26-r1/articles/pgfId-1095145.md new file mode 100644 index 0000000000..cb55c739a6 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095145.md @@ -0,0 +1,35 @@ +# CKSBMS + + + + CKSBMS CKSBMS CKSBMS CKSBMS CKSBMS CKSBMS CKSBMS + ********************************************** + ************************** + ****** + + SUBROUTINE CKSBMS (P, T, Y, ICKWRK, RCKWRK, SBMS) + Returns the mean entropy of the mixture in mass units given pressure, + temperature(s) and mass fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + Y(*) - Real array, mass fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + SBMS - Real scalar, mean entropy. + cgs units, ergs/(gm*K) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095172.md b/2026R1/chemkin_26-r1/articles/pgfId-1095172.md new file mode 100644 index 0000000000..e08f9dd3cd --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095172.md @@ -0,0 +1,23 @@ +# CKSCAL + + + + CKSCAL CKSCAL CKSCAL CKSCAL CKSCAL CKSCAL CKSCAL + ********************************************** + ************************** + ****** + + SUBROUTINE CKSCAL (ARRAY, NN, SCAL) + Utility to scale the real members of an array. + + INPUT + ARRAY(*) - Real array. + NN - Integer scalar; the size of ARRAY. + SCAL - Real scalar; the multiplier for ARRAY members. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095187.md b/2026R1/chemkin_26-r1/articles/pgfId-1095187.md new file mode 100644 index 0000000000..01e56c6d5c --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095187.md @@ -0,0 +1,26 @@ +# CKSLEN + + + + CKSLEN CKSLEN CKSLEN CKSLEN CKSLEN CKSLEN CKSLEN + ********************************************** + ************************** + ****** + + INTEGER FUNCTION CKSLEN (LINE) + Returns the effective length of a character string, that is, + the index of the last character before an exclamation mark (!) + indicating a comment. + + INPUT + LINE - Character string. + + OUTPUT + CKSLEN - Integer scalar, the effective length of LINE. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095205.md b/2026R1/chemkin_26-r1/articles/pgfId-1095205.md new file mode 100644 index 0000000000..334b4c978a --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095205.md @@ -0,0 +1,31 @@ +# CKSML + + + + CKSML CKSML CKSML CKSML CKSML CKSML CKSML + ********************************************** + ************************** + ****** + + SUBROUTINE CKSML (T, ICKWRK, RCKWRK, SML) + Returns the standard state entropies in molar units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + SML(*) - Real array, standard state entropies for species; + dimension at least KK, the total species count. + cgs units, ergs/(mole*K) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095228.md b/2026R1/chemkin_26-r1/articles/pgfId-1095228.md new file mode 100644 index 0000000000..e67529dafe --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095228.md @@ -0,0 +1,31 @@ +# CKSMS + + + + CKSMS CKSMS CKSMS CKSMS CKSMS CKSMS CKSMS + ********************************************** + ************************** + ****** + + SUBROUTINE CKSMS (T, ICKWRK, RCKWRK, SMS) + Returns the standard state entropies in mass units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + SMS(*) - Real array, standard state entropies for species; + dimension at least KK, the total species count. + cgs units, ergs/(gm*K) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095251.md b/2026R1/chemkin_26-r1/articles/pgfId-1095251.md new file mode 100644 index 0000000000..9a5e802bfd --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095251.md @@ -0,0 +1,63 @@ +# CKSNUM + + + + CKSNUM CKSNUM CKSNUM CKSNUM CKSNUM CKSNUM CKSNUM + ********************************************** + ************************** + ****** + + SUBROUTINE CKSNUM (LINE, NEXP, LOUT, KRAY, NN, KNUM, NVAL, + RVAL, KERR) + Search a character string, LINE, for (1) a character substring which + may also appear in an array of character substrings KRAY, and + (2) some number of character substrings representing numbers. + In the case of (1), if the character substring appears in KRAY, + KNUM is its index position. + In the case of (2), the character substrings are converted to + NVAL real numbers and stored in RVAL, until NEXP are converted. + + This allows format-free input of combined alpha-numeric data. + For example, the subroutine might be called to find a Chemkin + species index and convert the other substrings to real values: + + input: LINE = "N2 1.2" + NEXP = 1, the number of values expected + LOUT = 6, a logical unit number on which to write + diagnostic messages. + KRAY(*) = "H2" "O2" "N2" "H" "O" "N" "OH" "H2O" "NO" + NN = 9, the number of entries in KRAY(*) + output: KNUM = 3, the index number of the substring in + KRAY(*) which corresponds to the first + substring in LINE + NVAL = 1, the number of values found in LINE + following the first substring + RVAL(*) = 1.200E+00, the substring converted to a number + KERR = .FALSE. + INPUT + LINE - Character string; length depends on calling routine. + NEXP - Integer scalar, number of values to be found in LINE. + If NEXP < 0, then IABS(NEXP) values are expected, but + it is not an error condition if less values are found. + LOUT - Integer scalar, formatted output file unit. + KRAY(*) - Character string array. + NN - Integer scalar, total number of character strings + in KRAY. + + OUTPUT + KNUM - Integer scalar, index of character string in KRAY + which corresponds to the first substring in LINE. + NVAL - Integer scalar, count of real values found in LINE. + RVAL(*) - Real array, real values found in LINE; dimension at least + NEXP. + KERR - Logical, syntax or dimensioning error flag; + corresponding string not found, or total of + values found is not the number of values expected, + will result in KERR = .TRUE. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095306.md b/2026R1/chemkin_26-r1/articles/pgfId-1095306.md new file mode 100644 index 0000000000..7a2c290cd6 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095306.md @@ -0,0 +1,30 @@ +# CKSOR + + + + CKSOR CKSOR CKSOR CKSOR CKSOR CKSOR CKSOR + ********************************************** + ************************** + ****** + + SUBROUTINE CKSOR (T, ICKWRK, RCKWRK, SOR) + Returns the nondimensional entropies. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + SOR(*) - Real array, nondimensional entropies for species; + dimension at least KK, the total species count. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095328.md b/2026R1/chemkin_26-r1/articles/pgfId-1095328.md new file mode 100644 index 0000000000..b039b53ed6 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095328.md @@ -0,0 +1,31 @@ +# CKSUBS + + + + CKSUBS CKSUBS CKSUBS CKSUBS CKSUBS CKSUBS CKSUBS + ********************************************** + ************************** + ****** + + SUBROUTINE CKSUBS (LINE, LOUT, NDIM, SUB, NFOUND, KERR) + Returns an array of substrings in a character string with blanks + or tabs as delimiters + + INPUT + LINE - Character string; length determined by calling routine. + LOUT - Integer scalar, formatted output file unit. + NDIM - Integer scalar, dimension of a character string array. + + OUTPUT + SUB(*) - Character string array, the character substrings of + LINE; dimension SUB at least NDIM. + NFOUND - Integer scalar, count of substrings found in LINE. + KERR - Logical, error flag; dimensioning errors will result in + KERR = .TRUE. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095351.md b/2026R1/chemkin_26-r1/articles/pgfId-1095351.md new file mode 100644 index 0000000000..6dc8bc69f0 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095351.md @@ -0,0 +1,18 @@ +# CKSUM + + + + CKSUM CKSUM CKSUM CKSUM CKSUM CKSUM CKSUM + ********************************************** + ************************** + ****** + + REAL FUNCTION CKSUM (ARRAY, NN) + Return the sum of entries in a real array. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095361.md b/2026R1/chemkin_26-r1/articles/pgfId-1095361.md new file mode 100644 index 0000000000..c99d8c441f --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095361.md @@ -0,0 +1,28 @@ +# CKSYME + + + + CKSYME CKSYME CKSYME CKSYME CKSYME CKSYME CKSYME + ********************************************** + ************************** + ****** + + SUBROUTINE CKSYME (CCKWRK, LOUT, ENAME, KERR) + Returns the character strings of element names. + + INPUT + CCKWRK(*) - Character string workspace array; + dimension at least LENCCK. + LOUT - Integer scalar, formatted output file unit. + + OUTPUT + ENAME(*) - Character string array, element names; dimension at + least MM, the total element count. + KERR - Logical, character length error flag. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095381.md b/2026R1/chemkin_26-r1/articles/pgfId-1095381.md new file mode 100644 index 0000000000..8ee5ddbbc3 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095381.md @@ -0,0 +1,32 @@ +# CKSYMR + + + + CKSYMR CKSYMR CKSYMR CKSYMR CKSYMR CKSYMR CKSYMR + ********************************************** + ************************** + ****** + + SUBROUTINE CKSYMR (I, LOUT, ICKWRK, RCKWRK, CCKWRK, LT, ISTR, KERR) + Returns a character string which describes the Ith reaction, + and the effective length of the character string. + + INPUT + I - Integer scalar, reaction index. + LOUT - Integer scalar, formatted output file unit. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + CCKWRK(*) - Character string workspace array; + dimension at least LENCCK. + + OUTPUT + ISTR - Character string, description of reaction I. + LT - Integer scalar, number of non-blank characters in ISTR. + KERR - Logical, character length error flag. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095405.md b/2026R1/chemkin_26-r1/articles/pgfId-1095405.md new file mode 100644 index 0000000000..a6711e99da --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095405.md @@ -0,0 +1,28 @@ +# CKSYMS + + + + CKSYMS CKSYMS CKSYMS CKSYMS CKSYMS CKSYMS CKSYMS + ********************************************** + ************************** + ****** + + SUBROUTINE CKSYMS (CCKWRK, LOUT, KNAME, KERR) + Returns the character strings of species names + + INPUT + CCKWRK(*) - Character string workspace array; + dimension at least LENRCK. + LOUT - Integer scalar, formatted output file unit. + + OUTPUT + KNAME(*) - Character string array, species names; + dimension at least KK, the total species count. + KERR - Logical, character length error flag. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095425.md b/2026R1/chemkin_26-r1/articles/pgfId-1095425.md new file mode 100644 index 0000000000..dd4561bd1a --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095425.md @@ -0,0 +1,32 @@ +# CKTHB + + + + CKTHB CKTHB CKTHB CKTHB CKTHB CKTHB CKTHB + ********************************************** + ************************** + ****** + + SUBROUTINE CKTHB (KDIM, ICKWRK, RCKWRK, AKI) + Returns matrix of enhanced third body coefficients. + + INPUT + KDIM - Integer scalar, first dimension of the matrix AKI; + KDIM must be at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + AKI(*,*) - Real matrix, enhanced third body efficiencies of the + species in the reactions; + dimension at least KK for first, the total species count, + and at least II for the second, the total reaction count. + AKI(K,I) is the enhanced efficiency of species K in + reaction I. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095449.md b/2026R1/chemkin_26-r1/articles/pgfId-1095449.md new file mode 100644 index 0000000000..56187e0e3c --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095449.md @@ -0,0 +1,32 @@ +# CKUBML + + + + CKUBML CKUBML CKUBML CKUBML CKUBML CKUBML CKUBML + ********************************************** + ************************** + ****** + + SUBROUTINE CKUBML (T, X, ICKWRK, RCKWRK, UBML) + Returns the mean internal energy of the mixture in molar units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + UBML - Real scalar, mean internal energy. + cgs units, ergs/mole + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095473.md b/2026R1/chemkin_26-r1/articles/pgfId-1095473.md new file mode 100644 index 0000000000..ba1227be98 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095473.md @@ -0,0 +1,32 @@ +# CKUBMS + + + + CKUBMS CKUBMS CKUBMS CKUBMS CKUBMS CKUBMS CKUBMS + ********************************************** + ************************** + ****** + + SUBROUTINE CKUBMS (T, Y, ICKWRK, RCKWRK, UBMS) + Returns the mean internal energy of the mixture in mass units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + Y(*) - Real array, mass fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + UBMS - Real scalar, mean internal energy. + cgs units, ergs/gm + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095497.md b/2026R1/chemkin_26-r1/articles/pgfId-1095497.md new file mode 100644 index 0000000000..eeb7eec629 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095497.md @@ -0,0 +1,31 @@ +# CKUML + + + + CKUML CKUML CKUML CKUML CKUML CKUML CKUML + ********************************************** + ************************** + ****** + + SUBROUTINE CKUML (T, ICKWRK, RCKWRK, UML) + Returns the internal energies in molar units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + UML(*) - Real array, internal energies for species; + dimension at least KK, the total species count. + cgs units, ergs/mole + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095520.md b/2026R1/chemkin_26-r1/articles/pgfId-1095520.md new file mode 100644 index 0000000000..ce099d4cc2 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095520.md @@ -0,0 +1,31 @@ +# CKUMS + + + + CKUMS CKUMS CKUMS CKUMS CKUMS CKUMS CKUMS + ********************************************** + ************************** + ****** + + SUBROUTINE CKUMS (T, ICKWRK, RCKWRK, UMS) + Returns the internal energies in mass units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + UMS(*) - Real array, internal energies for species; + dimension at least KK, the total species count. + cgs units, ergs/gm + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095543.md b/2026R1/chemkin_26-r1/articles/pgfId-1095543.md new file mode 100644 index 0000000000..20fade646c --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095543.md @@ -0,0 +1,35 @@ +# CKWC + + + + CKWC CKWC CKWC CKWC CKWC CKWC CKWC + ********************************************** + ************************** + ****** + + SUBROUTINE CKWC (T, C, ICKWRK, RCKWRK, WDOT) + Returns the molar production rates of the species given + temperature(s) and molar concentrations. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + C(*) - Real array, concentrations of the species; + dimension at least KK, the total species count. + cgs units, mole/cm**3 + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + WDOT(*) - Real array, chemical production rates of the species; + dimension at least KK, the total species count. + cgs units, moles/(cm**3*sec) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095570.md b/2026R1/chemkin_26-r1/articles/pgfId-1095570.md new file mode 100644 index 0000000000..d38bd1775a --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095570.md @@ -0,0 +1,35 @@ +# CKWL + + + + CKWL CKWL CKWL CKWL CKWL CKWL CKWL + ********************************************** + ************************** + ****** + + SUBROUTINE CKWL (ICKWRK, RCKWRK, WL) + Returns a set of flags providing information on the wave length + of photon radiation + + INPUT + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + WL(*) - Real array, radiation wavelengths for reactions; + dimension at least II, total reaction count. + cgs units, angstrom. + WL(I)= 0. reaction I does not have radiation as + either a reactant or product + WL(I)=-A reaction I has radiation of wavelength A + as a reactant + WL(I)=+A reaction I has radiation of wavelength A + as a product + If A = 1.0 then no wavelength information was given; + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095597.md b/2026R1/chemkin_26-r1/articles/pgfId-1095597.md new file mode 100644 index 0000000000..e8c4b33a98 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095597.md @@ -0,0 +1,27 @@ +# CKWT + + + + CKWT CKWT CKWT CKWT CKWT CKWT CKWT + ********************************************** + ************************** + ****** + + SUBROUTINE CKWT (ICKWRK, RCKWRK, WT) + Returns the molecular weights of the species + + INPUT + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + WT(*) - Real array, molecular weights of the species; + dimension at least KK, the total species count. + cgs units, gm/mole + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095616.md b/2026R1/chemkin_26-r1/articles/pgfId-1095616.md new file mode 100644 index 0000000000..25ea73022a --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095616.md @@ -0,0 +1,36 @@ +# CKWXP + + + + CKWXP CKWXP CKWXP CKWXP CKWXP CKWXP CKWXP + ********************************************** + ************************** + ****** + + SUBROUTINE CKWXP (P, T, X, ICKWRK, RCKWRK, WDOT) + Returns the molar production rates of the species given pressure, + temperature(s) and mole fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + WDOT(*) - Real array, chemical production rates of the species; + dimension at least KK, the total species count. + cgs units, moles/(cm**3*sec) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095644.md b/2026R1/chemkin_26-r1/articles/pgfId-1095644.md new file mode 100644 index 0000000000..73880588e7 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095644.md @@ -0,0 +1,36 @@ +# CKWXR + + + + CKWXR CKWXR CKWXR CKWXR CKWXR CKWXR CKWXR + ********************************************** + ************************** + ****** + + SUBROUTINE CKWXR (RHO, T, X, ICKWRK, RCKWRK, WDOT) + Returns the molar production rates of the species given mass + density, temperature(s) and mole fractions. + + INPUT + RHO - Real scalar, mass density. + cgs units, gm/cm**3 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + WDOT(*) - Real array, chemical production rates of the species; + dimension at least KK, the total species count. + cgs units, moles/(cm**3*sec) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095672.md b/2026R1/chemkin_26-r1/articles/pgfId-1095672.md new file mode 100644 index 0000000000..21aa52792f --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095672.md @@ -0,0 +1,36 @@ +# CKWYP + + + + CKWYP CKWYP CKWYP CKWYP CKWYP CKWYP CKWYP + ********************************************** + ************************** + ****** + + SUBROUTINE CKWYP (P, T, Y, ICKWRK, RCKWRK, WDOT) + Returns the molar production rates of the species given pressure, + temperature(s) and mass fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + Y(*) - Real array, mass fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + WDOT(*) - Real array, chemical production rates of the species; + dimension at least KK, the total species count. + cgs units, moles/(cm**3*sec) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095700.md b/2026R1/chemkin_26-r1/articles/pgfId-1095700.md new file mode 100644 index 0000000000..dfab511007 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095700.md @@ -0,0 +1,42 @@ +# CKWYPK + + + + CKWYPK CKWYPK CKWYPK CKWYPK CKWYPK CKWYPK CKWYPK + ********************************************** + ************************** + ****** + + SUBROUTINE CKWYPK (P, T, Y, RKFT, RKRT, ICKWRK, RCKWRK, WDOT) + Returns the molar production rates of the species given pressure, + temperature(s) and mass fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + Y(*) - Real array, mass fractions of the mixture; + dimension at least KK, the total species count. + RKFT(*) - Real array, forward reaction rates for reactions; + dimension at least II, the total reaction count. + cgs units, depends on the reaction + RKRT(*) - Real array, reverse reaction rates for reactions; + dimension at least II, the total reaction count. + cgs units, depends on the reaction + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + WDOT(*) - Real array, chemical production rates of the species; + dimension at least KK, the total species count. + cgs units, moles/(cm**3*sec) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095734.md b/2026R1/chemkin_26-r1/articles/pgfId-1095734.md new file mode 100644 index 0000000000..b23e1d4734 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095734.md @@ -0,0 +1,34 @@ +# CKWYR + + + + CKWYR CKWYR CKWYR CKWYR CKWYR CKWYR CKWYR + ********************************************** + ************************** + ****** + + SUBROUTINE CKWYR (RHO, T, Y, ICKWRK, RCKWRK, WDOT) + Returns the molar production rates of the species given mass + density, temperature and mass fractions. + + INPUT + RHO - Real scalar, mass density. + cgs units, gm/cm**3 + T(*) - Real array, temperature; + cgs units, K + Y(*) - Real array, mass fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + WDOT(*) - Real array, chemical production rates of the species; + dimension at least KK, the total species count. + cgs units, moles/(cm**3*sec) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095760.md b/2026R1/chemkin_26-r1/articles/pgfId-1095760.md new file mode 100644 index 0000000000..b970426114 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095760.md @@ -0,0 +1,25 @@ +# CKXMAX + + + + CKXMAX CKXMAX CKXMAX CKXMAX CKXMAX CKXMAX CKXMAX + ********************************************** + ************************** + ****** + + SUBROUTINE CKXMAX (X, NN, XMAX, IMAX) + Returns the maximum value in an array and its location in the array. + + INPUT + X(*) - Real array. + NN - Integer scalar; size of X. + OUTPUT + XMAX - Real scalar. + IMAX - Integer scalar; location in X of XMAX. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095777.md b/2026R1/chemkin_26-r1/articles/pgfId-1095777.md new file mode 100644 index 0000000000..ff5dbb0428 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095777.md @@ -0,0 +1,25 @@ +# CKXMIN + + + + CKXMIN CKXMIN CKXMIN CKXMIN CKXMIN CKXMIN CKXMIN + ********************************************** + ************************** + ****** + + SUBROUTINE CKXMIN (X, NN, XMIN, IMIN) + Returns the minimum value in an array and its location in the array. + + INPUT + X(*) - Real array. + NN - Integer scalar; size of X. + OUTPUT + XMIN - Real scalar. + IMIN - Integer scalar; location in X of XMIN. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095794.md b/2026R1/chemkin_26-r1/articles/pgfId-1095794.md new file mode 100644 index 0000000000..2cc47a56be --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095794.md @@ -0,0 +1,42 @@ +# CKXNUM + + + + CKXNUM CKXNUM CKXNUM CKXNUM CKXNUM CKXNUM CKXNUM + ********************************************** + ************************** + ****** + + SUBROUTINE CKXNUM (LINE, NEXP, LOUT, NVAL, RVAL, KERR) + Searches a character string, LINE, for NEXP space-delimited + substrings representing numbers, until NVAL real values are + converted and stored in the array, RVAL. + This allows format-free input of numerical data. For example: + + input: LINE = " 0.170E+14 0 47780.0" + NEXP = 3, the number of values requested + LOUT = 6, a logical unit number on which to write + diagnostic messages. + output: NVAL = 3, the number of values found + RVAL(*) = 1.700E+13, 0.000E+00, 4.778E+04 + KERR = .FALSE. + + INPUT + LINE - Character string, length established by calling program. + NEXP - Integer scalar, number of real values to be found in LINE; + If NEXP < 0 then IABS(NEXP) values are expected, but + it is not an error condition if fewer values are found. + LOUT - Integer scalar, output unit for printed diagnostics. + + OUTPUT + NVAL - Integer scalar, count of real values found in LINE. + RVAL - Real array, values converted from characters in LINE; + dimension at least NEXP. + KERR - Logical, syntax or dimensioning error flag. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095828.md b/2026R1/chemkin_26-r1/articles/pgfId-1095828.md new file mode 100644 index 0000000000..b926af997b --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095828.md @@ -0,0 +1,36 @@ +# CKXTCP + + + + CKXTCP CKXTCP CKXTCP CKXTCP CKXTCP CKXTCP CKXTCP + ********************************************** + ************************** + ****** + + SUBROUTINE CKXTCP (P, T, X, ICKWRK, RCKWRK, C) + Returns the molar concentrations given pressure, temperature(s) + and mole fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + C(*) - Real array, concentrations of the species; + dimension at least KK, the total species count. + cgs units, mole/cm**3 + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095856.md b/2026R1/chemkin_26-r1/articles/pgfId-1095856.md new file mode 100644 index 0000000000..46e8e20d1b --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095856.md @@ -0,0 +1,36 @@ +# CKXTCR + + + + CKXTCR CKXTCR CKXTCR CKXTCR CKXTCR CKXTCR CKXTCR + ********************************************** + ************************** + ****** + + SUBROUTINE CKXTCR (RHO, T, X, ICKWRK, RCKWRK, C) + Returns the molar concentrations given mass density, temperature(s), + and mole fractions. + + INPUT + RHO - Real scalar, mass density. + cgs units, gm/cm**3 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + C(*) - Real array, concentrations of the species; + dimension at least KK, the total species count. + cgs units, mole/cm**3 + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095884.md b/2026R1/chemkin_26-r1/articles/pgfId-1095884.md new file mode 100644 index 0000000000..a6d5babfea --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095884.md @@ -0,0 +1,23 @@ +# CKXTND + + + + CKXTND CKXTND CKXTND CKXTND CKXTND CKXTND CKXTND + ********************************************** + ************************** + ****** + + SUBROUTINE CKXTND (NDIM, NPTS, XSTR, XEND, X, F, IFLAG) + Ensure that XSTR <= X(N) <= XEND. + NPTS may be increased to add XSTR < X(1) or XEND > X(NPTS). + NPTS may be decreased to drop X(N) < XSTR or X(N) > XEND. + If NDIM does not allow adding a new endpoint, + CKXTND replaces the endpoint and sets IFLAG=1 if new XSTR, + IFLAG=2 if new XEND. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095899.md b/2026R1/chemkin_26-r1/articles/pgfId-1095899.md new file mode 100644 index 0000000000..fc980016e0 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095899.md @@ -0,0 +1,28 @@ +# CKXTY + + + + CKXTY CKXTY CKXTY CKXTY CKXTY CKXTY CKXTY + ********************************************** + ************************** + ****** + + SUBROUTINE CKXTY (X, ICKWRK, RCKWRK, Y) + Returns the mass fractions given mole fractions. + + INPUT + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + Y(*) - Real array, mass fractions of the mixture; + dimension at least KK, the total species count. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095919.md b/2026R1/chemkin_26-r1/articles/pgfId-1095919.md new file mode 100644 index 0000000000..5df2d6063e --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095919.md @@ -0,0 +1,36 @@ +# CKYTCP + + + + CKYTCP CKYTCP CKYTCP CKYTCP CKYTCP CKYTCP CKYTCP + ********************************************** + ************************** + ****** + + SUBROUTINE CKYTCP (P, T, Y, ICKWRK, RCKWRK, C) + Returns the molar concentrations given pressure, temperature(s) + and mass fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + Y(*) - Real array, mass fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + C(*) - Real array, concentrations of the species; + dimension at least KK, the total species count. + cgs units, mole/cm**3 + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095947.md b/2026R1/chemkin_26-r1/articles/pgfId-1095947.md new file mode 100644 index 0000000000..a40da62fc8 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095947.md @@ -0,0 +1,36 @@ +# CKYTCR + + + + CKYTCR CKYTCR CKYTCR CKYTCR CKYTCR CKYTCR CKYTCR + ********************************************** + ************************** + ****** + + SUBROUTINE CKYTCR (RHO,T, Y, ICKWRK, RCKWRK, C) + Returns the molar concentrations given mass density, temperature(s), + and mass fractions. + + INPUT + RHO - Real scalar, mass density. + cgs units, gm/cm**3 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + Y(*) - Real array, mass fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + C(*) - Real array, concentrations of the species; + dimension at least KK, the total species count. + cgs units, mole/cm**3 + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095975.md b/2026R1/chemkin_26-r1/articles/pgfId-1095975.md new file mode 100644 index 0000000000..865411cfac --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095975.md @@ -0,0 +1,28 @@ +# CKYTX + + + + CKYTX CKYTX CKYTX CKYTX CKYTX CKYTX CKYTX + ********************************************** + ************************** + ****** + + SUBROUTINE CKYTX (Y, ICKWRK, RCKWRK, X) + Returns the mole fractions given mass fractions. + + INPUT + Y(*) - Real array, mass fractions of the mixture; + dimension at least KK, the total species count. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1095995.md b/2026R1/chemkin_26-r1/articles/pgfId-1095995.md new file mode 100644 index 0000000000..d2f8f64d93 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1095995.md @@ -0,0 +1,25 @@ +# PKINDX + + + + PKINDX PKINDX PKINDX PKINDX PKINDX PKINDX PKINDX + ********************************************** + ************************** + ****** + + SUBROUTINE PKINDX (ICKWRK, KELECT, KKION) + Returns plasma indices for the particular reaction mechanism. + + INPUT + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + + OUTPUT + KELECT - Integer scalar, species array index for the electron. + KKION - Integer scalar, total ion count. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1096620.md b/2026R1/chemkin_26-r1/articles/pgfId-1096620.md new file mode 100644 index 0000000000..df6b5d0ac8 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1096620.md @@ -0,0 +1,43 @@ +# Discussion of Sample Problem + +We illustrate the input and output of the various Pre-processors and the +example problem with an analysis of the deposition of Si3 N4. The gas-phase +reaction mechanism contains a detailed description of NH3 decomposition (about +which there is much published information), two reactions describing +decomposition, and three cross-reactions. At the low pressures we consider, +the gas-phase decomposition of reactants is slow. The surface reaction +mechanism contains six steps describing the overall conversion of 3 SiF4 and 4 +NH3 molecules to 3 Si(d) and 4 N(d) and 12 HF. + +* * * + +**Note:** The surface reaction mechanism is from a preliminary analysis at +one temperature, and thus we have not supplied any activation energies. Also, +the thermodynamic data in the mechanism is contrived and should not be used in +other contexts. As such, this mechanism should only be considered as +illustrative and not as a source of kinetic data on the Si3 N4 system. + +* * * + +The input to the sample problem gives the initial pressure as 2.63 × 10-3 atm +(2 Torr) and temperature 1713 K. In this problem the temperature is fixed, but +the pressure will increase as 12 moles of HF are produced for every 7 moles of +reactant destroyed. The input gas-phase mole fractions represent a 6:1 ratio +of NH3 to SiF4. Initial site fractions of the surface species came from a +steady-state analysis of the system (not discussed here). The initial +activities of the two bulk species are set to 1. The area to volume ratio is 6 +(a cubic box). + +The print-out from the sample problem shows the initial conditions followed by +print-outs of the concentrations at subsequent states of the deposition. The +reactants SiF4 and NH3 are seen to be depleted and the product HF forms. In +this fixed-volume system the pressure rises (discussed above). There is a net +decrease in the gas density as the heavy Si and N atoms are lost from the gas +into the bulk. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1096966.md b/2026R1/chemkin_26-r1/articles/pgfId-1096966.md new file mode 100644 index 0000000000..35ac213435 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1096966.md @@ -0,0 +1,93 @@ +# Output from Gas-phase Kinetics Pre-processor + + + + -------------------- + ELEMENTS ATOMIC + CONSIDERED WEIGHT + -------------------- + 1. H 1.00797 + 2. N 14.0067 + 3. SI 28.0860 + 4. F 18.9984 + -------------------- + ------------------------------------------------------------------------------- + C + P H + H A + A R + SPECIES S G MOLECULAR TEMPERATURE ELEMENT COUNT + CONSIDERED E E WEIGHT LOW HIGH H N SI F + ------------------------------------------------------------------------------- + 1. H2 G 0 2.0159E+00 300 5000 2 0 0 0 + 2. H G 0 1.0080E+00 300 5000 1 0 0 0 + 3. N2 G 0 2.8013E+01 300 5000 0 2 0 0 + 4. N G 0 1.4007E+01 300 5000 0 1 0 0 + 5. NH G 0 1.5015E+01 300 5000 1 1 0 0 + 6. NH2 G 0 1.6023E+01 300 5000 2 1 0 0 + 7. NNH G 0 2.9021E+01 250 4000 1 2 0 0 + 8. N2H2 G 0 3.0029E+01 300 5000 2 2 0 0 + 9. N2H3 G 0 3.1037E+01 300 5000 3 2 0 0 + 10. N2H4 G 0 3.2045E+01 300 5000 4 2 0 0 + 11. HF G 0 2.0006E+01 300 5000 1 0 0 1 + 12. F G 0 1.8998E+01 300 4000 0 0 0 1 + 13. SIF4 G 0 1.0408E+02 300 2000 0 0 1 4 + 14. SIF3 G 0 8.5081E+01 300 3000 0 0 1 3 + 15. SIHF3 G 0 8.6089E+01 300 3000 1 0 1 3 + 16. SIF3NH2 G 0 1.0110E+02 300 3000 2 1 1 3 + 17. NH3 G 0 1.7031E+01 300 5000 3 1 0 0 + ------------------------------------------------------------------------------- + + + + (k = A T**b exp(-E/RT)) + REACTIONS CONSIDERED A b E + + 1. H+H+M=H2+M 1.00E+18 -1.0 0.0 + H2 Enhanced by 0.000E+00 + 2. H+H+H2=H2+H2 9.20E+16 -0.6 0.0 + 3. NH+N=N2+H 3.00E+13 0.0 0.0 + 4. NH+H=N+H2 1.00E+14 0.0 0.0 + 5. NH2+H=NH+H2 6.92E+13 0.0 3650.0 + 6. NH3+H=NH2+H2 6.36E+05 2.4 10171.0 + 7. NNH=N2+H 1.00E+04 0.0 0.0 + 8. NNH+H=N2+H2 1.00E+14 0.0 0.0 + 9. NNH+NH2=N2+NH3 5.00E+13 0.0 0.0 + 10. NNH+NH=N2+NH2 5.00E+13 0.0 0.0 + 11. NH2+NH=N2H2+H 5.00E+13 0.0 0.0 + 12. NH+NH=N2+H+H 2.54E+13 0.0 0.0 + 13. NH2+N=N2+H+H 7.20E+13 0.0 0.0 + 14. N2H2+M=NNH+H+M 5.00E+16 0.0 50000.0 + N2 Enhanced by 2.000E+00 + H2 Enhanced by 2.000E+00 + 15. N2H2+H=NNH+H2 5.00E+13 0.0 1000.0 + 16. N2H2+NH=NNH+NH2 1.00E+13 0.0 1000.0 + 17. N2H2+NH2=NH3+NNH 1.00E+13 0.0 1000.0 + 18. NH2+NH2=N2H2+H2 5.00E+11 0.0 0.0 + 19. NH3+M=NH2+H+M 1.40E+16 0.0 90600.0 + 20. N2H3+H=NH2+NH2 1.60E+12 0.0 0.0 + 21. N2H3+M=N2H2+H+M 3.50E+16 0.0 46000.0 + 22. N2H3+NH=NH2+N2H2 2.00E+13 0.0 0.0 + 23. NH2+NH2+M=N2H4+M 3.00E+20 -1.0 0.0 + 24. H+N2H4=H2+N2H3 1.30E+13 0.0 2500.0 + 25. NH2+N2H4=NH3+N2H3 3.90E+12 0.0 1500.0 + 26. NH+H+M=NH2+M 2.00E+16 -0.5 0.0 + 27. NH2+NH2=NH3+NH 5.00E+12 0.0 10000.0 + 28. F+NH3=NH2+HF 4.27E+11 0.5 800.0 + 29. SIF4=SIF3+F 3.00E+12 0.0 147170.0 + 30. H+SIF4=HF+SIF3 1.00E+13 0.0 50000.0 + 31. NH2+SIF4=SIF3NH2+F 1.00E+11 0.0 40950.0 + 32. NH3+SIF3=SIF3NH2+H 1.00E+11 0.0 5000.0 + 33. NH3+SIF3=SIHF3+NH2 1.00E+11 0.0 10000.0 + + NOTE: A units mole-cm-sec-K, E units cal/mole + + + NO ERRORS FOUND ON INPUT: + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1098091.md b/2026R1/chemkin_26-r1/articles/pgfId-1098091.md new file mode 100644 index 0000000000..4fd988e45a --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1098091.md @@ -0,0 +1,31 @@ +# CKREWR + + + + CKREWR CKREWR CKREWR CKREWR CKREWR CKREWR CKREWR + ********************************************** + ************************** + ****** + + SUBROUTINE CKREWR (LINC, LOUT, ICKWRK, RCKWRK, CCKWRK, IFLAG) + Rewrites a new linkfile from the data stored in ICKWRK, + RCKWRK and CCKWRK. + + INPUT + LINC - Integer scalar, linkfile output file unit number. + LOUT - Integer scalar, diagnostics output file unit number. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + CCKWRK(*) - Character string workspace array; + dimension at least LENCCK. + + OUTPUT + IFLAG - Integer scalar to indicate successful writing of + linkfile; IFLAG>0 is an error type. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1098212.md b/2026R1/chemkin_26-r1/articles/pgfId-1098212.md new file mode 100644 index 0000000000..10e7b8ae3b --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1098212.md @@ -0,0 +1,28 @@ +# CKSAVEF + + + + CKSAVEF CKSAVEF CKSAVEF CKSAVEF CKSAVEF CKSAVEF CKSAVEF + ********************************************** + ************************** + ****** + + SUBROUTINE CKSAVEF (LOUT, LFORM, KERR) + Writes to a formatted file the pointer integers for the + gas-phase CHEMKIN work arrays (See CKREADF) + + INPUT + LOUT - Integer scalar, formatted output file unit number. + for diagnostic printing + LFORM - Integer scalar, formatted output file unit number + for printing the pointer integers to a file + OUTPUT + KERR - Logical flag indicating whether an error was + encountered while writing to the file + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1098925.md b/2026R1/chemkin_26-r1/articles/pgfId-1098925.md new file mode 100644 index 0000000000..8cfac74bc8 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1098925.md @@ -0,0 +1,29 @@ +# CKCTX + + + + CKCTX CKCTX CKCTX CKCTX CKCTX CKCTX CKCTX + ********************************************** + ************************** + ****** + + SUBROUTINE CKCTX (C, ICKWRK, RCKWRK, X) + Returns the mole fractions given molar concentrations. + + INPUT + C(*) - Real array, concentrations of the species; + dimension at least KK, the total species count. + cgs units - mole/cm**3 + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + X(*) - Real array, mole fraction of the mixture; + dimension at least KK, the total species count. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1098949.md b/2026R1/chemkin_26-r1/articles/pgfId-1098949.md new file mode 100644 index 0000000000..19409181dc --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1098949.md @@ -0,0 +1,29 @@ +# CKCTY + + + + CKCTY CKCTY CKCTY CKCTY CKCTY CKCTY CKCTY + ********************************************** + ************************** + ****** + + SUBROUTINE CKCTY (C, ICKWRK, RCKWRK, Y) + Returns the mass fractions given molar concentrations. + + INPUT + C(*) - Real array, concentrations of the species; + dimension at least KK, the total species count. + cgs units, mole/cm**3 + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + + OUTPUT + Y(*) - Real array, mass fractions of the mixture; + dimension at least KK, the total species count. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1098973.md b/2026R1/chemkin_26-r1/articles/pgfId-1098973.md new file mode 100644 index 0000000000..43e4d89e10 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1098973.md @@ -0,0 +1,32 @@ +# CKLEN + + + + CKLEN CKLEN CKLEN CKLEN CKLEN CKLEN CKLEN + ********************************************** + ************************** + ****** + + SUBROUTINE CKLEN (LINC, LOUT, LENI, LENR, LENC, IFLAG) + Returns the lengths required for work arrays. + + INPUT + LINC - Integer scalar, input file unit for the linkfile. + LOUT - Integer scalar, formatted output file unit. + + OUTPUT + LENI - Integer scalar, minimum length required for the + integer work array. + LENR - Integer scalar, minimum length required for the + real work array. + LENC - Integer scalar, minimum length required for the + character work array. + IFLAG - Integer scalar, indicates successful reading of + linkfile; IFLAG>0 indicates error type. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1099000.md b/2026R1/chemkin_26-r1/articles/pgfId-1099000.md new file mode 100644 index 0000000000..2c7ff25d6c --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1099000.md @@ -0,0 +1,27 @@ +# CKSAVE + + + + CKSAVE CKSAVE CKSAVE CKSAVE CKSAVE CKSAVE CKSAVE + ********************************************** + ************************** + ****** + + SUBROUTINE CKSAVE (LOUT, LSAVE, ICKWRK, RCKWRK, CCKWRK) + Writes to a binary file information about a Chemkin linkfile, + pointers for the Chemkin Library, and Chemkin work arrays. + + INPUT + LOUT - Integer scalar, formatted output file unit number. + LSAVE - Integer scalar, binary output file unit number. + ICKWRK(*) - Integer workspace array; dimension at least LENICK. + RCKWRK(*) - Real workspace array; dimension at least LENRCK. + CCKWRK(*) - Character string workspace array; + dimension at least LENCCK. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1102613.md b/2026R1/chemkin_26-r1/articles/pgfId-1102613.md new file mode 100644 index 0000000000..7211072ba0 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1102613.md @@ -0,0 +1,89 @@ +# Basic Requirements of a Chemkin Program + +In addition to using pre-built Ansys Chemkin Reactor Models, users may opt to +write their own, directly accessing the _Gas-phase Kinetics_ , _Surface +Kinetics_ , and/or _Transport_ subroutine libraries. In order to do so, you +must have the following: + + * A compatible FORTRAN compiler installed on the computer where Ansys Chemkin is installed. + + * (optional) A C or C++ compiler, when programming in C or C++. This compiler should be compatible with the FORTRAN compiler and with the Ansys Chemkin build. + + * Knowledge of the FORTRAN language and the C/C++ language if applicable. + + * Experience with compiling and linking programs on the computer platform of interest. + +For more information on the compiler compatibility with Ansys Chemkin +libraries, see [Compiler Compatibility](i43132.md "1.1. Compiler +Compatibility"). + +The basic requirements for any program are declaration of variables and +arrays, allocation of memory, and file manipulation. Ansys Chemkin-based +programs must also establish a link to the user's chemistry data through +initialization routines that access the Linking Files generated by Pre- +processor programs, as discussed in [Introduction](i13005api_intro.md) . +This section provides an introduction to these processes. + +More specific detail is provided by way of example, in [Gas-phase Kinetics Sample Program (CONP)](pgfId-1085459.md "3.2. Gas-phase Kinetics Sample +Program (CONP)") through [Transport Sample Problem (PROPS)](pgfId-1078341.md "3.4. Transport Sample Problem (PROPS)") , which +describe sample programs that demonstrate the use of Ansys Chemkin subroutine +calls. These sample programs are provided as source code with a standard +Chemkin installation. Also provided at installation are sample makefiles and +macros to facilitate compiling and linking of a FORTRAN or C++ program. + +Note that any program linked to the Ansys Chemkin /API requires that a +Chemistry Set has been successfully pre-processed before the program can run. +This will ensure that the needed Linking Files have been created and can be +accessed by the user program. These dependencies are discussed in +[Introduction](i13005api_intro.md "Chapter 1: Introduction") . The _Gas- +phase Kinetics_ Linking File (for example, _chem.asc) is required in all +cases_. Use of _Surface Kinetics_ library routines requires the _Surface +Kinetics_ Linking File (e.g., _surf.asc)_ to be created. Similarly, +_Transport_ subroutine library calls require that the Transport Linking File +(for example, _tran.asc_) be created through a successful run of the +_Transport_ Pre-processor. + +When users author their own Applications, they will need to access the Linking +File from the Application program after the Pre-processor has been +successfully executed, so that subroutines from the _Gas-phase Kinetics_ +Subroutine Library can be called from the Application. The Application's first +step must be to dimension three storage arrays (one integer, one floating +point, and one character data type) and then call the initialization +subroutine `CKINIT` to fill the storage arrays from the Linking File data. One +or more of these arrays is required input to nearly every other subroutine in +the _Gas-phase Kinetics_ package. + +* * * + +**Note:** The minimum length for the arrays can be found in Pre-processor +output. The storage-array sizes can also be determined by a call to the +subroutine `CKLEN`. + +* * * + +Once `CKINIT` has been successfully called in an Application program, any +number of _Gas-phase Kinetics_ subroutines can be used to return various types +of information. The subroutine needed for a particular function can be +determined by referencing descriptions of equations in the [Chemkin Theory Manual](https://ansyshelp.ansys.com/public/account/secured?returnurl=/Views/Secured/corp/v242/en/chemkin_th/chemkin_th.html) , or through the subject-based quick- +reference list in [Quick Reference Guide to the Gas-phase Kinetics Subroutine Library](i13005api_quickref_gaskinetics.md "Chapter 4: Quick Reference Guide +to the Gas-phase Kinetics Subroutine Library") of this manual. Detailed +information about the subroutine call lists are provided in an alphabetical +listing in [Alphabetical Listing of the Gas-phase Kinetics Subroutine Library](i13005api_list_gpk.md "Chapter 7: Alphabetical Listing of the Gas- +phase Kinetics Subroutine Library") . Normally only a few of the subroutines +in the package would be called for any one problem. + +For the Surface Kinetics and Transport subroutine libraries, there is a +similar requirement of array allocation and calling of an initialization +routine. In this case, the necessary array sizes can be found by calls to +`SKLEN` and `MCLEN`, respectively, and the initialization occurs through calls +to `SKINIT` and `MCINIT`, respectively. + +The following sections outline specific components that form the basic +requirements for an Ansys Chemkin application program. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1107884.md b/2026R1/chemkin_26-r1/articles/pgfId-1107884.md new file mode 100644 index 0000000000..8bda413144 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1107884.md @@ -0,0 +1,43 @@ +# SKABE + + + + SKABE SKABE SKABE SKABE SKABE SKABE SKABE + ********************************************** + ************************** + ****** + + SUBROUTINE SKABE (ISKWRK, RSKWRK, RA, RB, RE, ISTFL) + Returns the Arrhenius coefficients or the sticking coefficients + of the surface reactions, and integer flags to indicate the type + of the coefficients. + + INPUT + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + RA(*) - Real array, pre-exponential constants for reactions; + dimension at least IISUR, the total surface reaction + count. + cgs units, mole-cm-sec-K + RB(*) - Real array, temperature dependence exponents for + reactions; + dimension at least IISUR, the total surface reaction + count. + RE(*) - Real array, activation energies for reactions; + dimension at least IISUR, the total surface reaction + count. + cgs units, K + ISTFL(*) - Integer array, sticking reaction information; + dimension at least IISUR, the total surface reaction + count. + =1, a reaction uses sticking coefficients. + =0, a rection does not. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1107919.md b/2026R1/chemkin_26-r1/articles/pgfId-1107919.md new file mode 100644 index 0000000000..64b5516c2b --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1107919.md @@ -0,0 +1,32 @@ +# SKAML + + + + SKAML SKAML SKAML SKAML SKAML SKAML SKAML + ********************************************** + ************************** + ****** + + SUBROUTINE SKAML (T, ISKWRK, RSKWRK, AML) + Returns the standard state Helmholtz free energies in molar units. Does not account for dependence on surface coverage (HFCOV). To include that effect, use subroutine SKCAML. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + AML(*) - Real array, standard state Helmholtz free energies + for species; + dimension at least KKTOT, the total species count. + cgs units, ergs/mole + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1107943.md b/2026R1/chemkin_26-r1/articles/pgfId-1107943.md new file mode 100644 index 0000000000..2ac9f6c8a3 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1107943.md @@ -0,0 +1,32 @@ +# SKAMS + + + + SKAMS SKAMS SKAMS SKAMS SKAMS SKAMS SKAMS + ********************************************** + ************************** + ****** + + SUBROUTINE SKAMS (T, ISKWRK, RSKWRK, AMS) + Returns an the standard state Helmholtz free energies in mas units. Does not account for dependence on surface coverage (HFCOV). To include that effect, use subroutine SKCAMS. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + AMS(*) - Real array, standard state Helmholtz free energies + for species; + dimension at least KKTOT, the total species count. + cgs units, ergs/gm + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1107967.md b/2026R1/chemkin_26-r1/articles/pgfId-1107967.md new file mode 100644 index 0000000000..f7c9ae7f7b --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1107967.md @@ -0,0 +1,52 @@ +# SKATCZ + + + + SKATCZ SKATCZ SKATCZ SKATCZ SKATCZ SKATCZ SKATCZ + ********************************************** + ************************** + ****** + + SUBROUTINE SKATCZ (P, T, ACT, SDEN, ISKWRK, RSKWRK, CZ) + Returns the concentrations of the species, given the pressure, + temperature and activities. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ACT(*) - Real array, activities of the species; + dimension at least KKTOT, the total species count. + The first KKGAS activities are mole fractions, + the next KKSURF activities are site fractions + (species density normalized by the site density; + surface concentration in moles/cm**2 is + ACT(K)*SITE_DENSITY / # sites per species), and + the next KKBULK activities for bulk phase species + should be from 0 to 1, and should sum to 1 for each + phase. + SDEN(*) - Real array, site densities for the site types; + dimension at least NPHASE, the total phase count, + but the subroutine only uses site phase entries, + NFSURF <= N <= NLSURF. + cgs units, moles/cm**2. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + CZ(*) - Real array, gas-phase and surface species concentrations, + and bulk species activities; + dimension at least KKTOT, the total species count. + The first KKGAS gas-phase concentrations are moles/cm**3, + the next KKSURF site concentrations are moles/cm**2, and + the final KKBULK entries are bulk species activities. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1108011.md b/2026R1/chemkin_26-r1/articles/pgfId-1108011.md new file mode 100644 index 0000000000..2abdac5c79 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1108011.md @@ -0,0 +1,82 @@ +# SKATHM + + + + SKATHM SKATHM SKATHM SKATHM SKATHM SKATHM SKATHM + ********************************************** + ************************** + ****** + + SUBROUTINE SKATHM (MDIM, NDIM1, NDIM2, ISKWRK, RSKWRK, NT, TMP, + A) + Returns the polynomial coefficients of the fits for + thermodynamic properties of all of the species. + + INPUT + MDIM - Integer scalar, first dimension of an array of + temperatures used in thermodynamic fits for species; + MDIM must be at least MAXTP, the maximum number of + temperatures used to fit the thermodynamics. + NDIM1 - Integer scalar, first dimension of A, the three- + dimensional array of thermodynamic fit coefficients; + NDIM1 must be at least NPCP2, the total number of + coefficients for one temperature range. + NDIM2 - Integer scalar, second dimension of A; NDIM2 must be + at least MAXTP-1, the total number of temperature ranges. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + Where NT(K) is the number of temperatures used in fitting the + thermodynamic properties of species K, TMP(N) is the Nth + temperature, NT(K)-1 is the number of temperature ranges for + which the polynomial coefficients are valid, then + A (L, N, K) is the Lth polynomial coefficient, for the Nth + temperature range, and the Kth species; that is, + + | < N = 1 >. . .< N = NT - 1> + P E | . . . . . + O X | . . . . . + L P | . . . . . + Y R | . . . . . + N E | . . . . . + O S | . . . . . + M S | . . . . . + I I | . . . . . + A O | . . . . . + L N |____.________._______.____________________.________.______ + TMP(1) TMP(2) TMP(3) . . . . . TMP(NT-1) TMP(NT) + + NT(*) - Integer array, total number of temperatures used in + fitting coefficients of thermodynamic properties for + the species; + dimension at least KKTOT, the total species count. + TMP(*,*) - Real matrix, temperatures for dividing the + thermodynamic fits for species; dimension at least + MAXTP for the first, and at least KKTOT for the second, + the total species count. + cgs units, K + A(*,*,*) - Real three-dimensioned array of fit coefficients to the + thermodynamic data for species; + dimension exactly NPCP2 for the first, exactly MAXTP-1 + for the second, and at least KKTOT for the third, the + total species count. + The indicies in A(N,L,K) mean- + N = 1,NN represent polynomial coefficients in CP/R + CP/R(K)=A(1,L,K) + A(2,L,K)*T + A(3,L,K)*T**2 + ... + N = NN+1 is for the formation enthalpies, that is, + HO/R = A(NN+1,L,K) + N = NN+2 is for the formation entropies, that is, + SO/R = A(NN+2,L,K) + L = 1 is for temperature <= TMP(2,K) + L = 2 is for TMP(2,K) < temperature <= TMP(3) + : + L = (NTMP-1) is for TMP(NTMP-1) <= temperature; + K is the species index + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1108105.md b/2026R1/chemkin_26-r1/articles/pgfId-1108105.md new file mode 100644 index 0000000000..a57895e157 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1108105.md @@ -0,0 +1,40 @@ +# SKCOMP + + + + SKCOMP SKCOMP SKCOMP SKCOMP SKCOMP SKCOMP SKCOMP + ********************************************** + ************************** + ****** + + SUBROUTINE SKCOMP (ISTR, IRAY, NN, IND, NT) + Search for the occurrence of character string ISTR, in the NN + character strings of array IRAY; + IND is the first location in IRAY of ISTR if found, or 0 if not + found, and NT is the total number of times it occurs. + + Consider the following example, + IRAY = {"BOOK","BLUE","BEAR","BOOK"} + NN=4. + + If ISTR="BLUE" then IND=2 and NT=1; + if ISTR="RED" then IND=0 and NT=0; and + if ISTR="BOOK",then IND=1 and NT=2. + + INPUT + ISTR - Character string. + IRAY(*) - Character string array. + NN - Integer scalar, length of IRAY(*). + + OUTPUT + IND - Integer scalar, location in IRAY of the character string + ISTR, or 0 if ISTR does not appear in IRAY. + NT - Integer scalar, total number of times ISTR occurs + in IRAY. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1108137.md b/2026R1/chemkin_26-r1/articles/pgfId-1108137.md new file mode 100644 index 0000000000..51df06a155 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1108137.md @@ -0,0 +1,35 @@ +# SKCONT + + + + SKCONT SKCONT SKCONT SKCONT SKCONT SKCONT SKCONT + ********************************************** + ************************** + ****** + + SUBROUTINE SKCONT (KSPEC, ROP, ISKWRK, RSKWRK, CIK) + Returns the contributions of the surface reactions to the molar + production rate of species KSPEC. + + INPUT + KSPEC - Integer scalar, species index. + ROP(*) - Real array, rates of progress for the surface reactions; + dimension at least IISUR, the total surface reaction + count. + cgs units, moles/(cm**2*sec) + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + CIK(*) - Real array, contributions of the surface reactions to the + production rate of species KSPEC; + dimension at least IISUR, the total surface reaction + count. + cgs units, mole/(cm**2*sec) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1108164.md b/2026R1/chemkin_26-r1/articles/pgfId-1108164.md new file mode 100644 index 0000000000..b333de4add --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1108164.md @@ -0,0 +1,25 @@ +# SKCOV + + + + SKCOV SKCOV SKCOV SKCOV SKCOV SKCOV SKCOV + ********************************************** + ************************** + ****** + + SUBROUTINE SKCOV (ISKWRK, KOCC) + Returns an array of site occupancy numbers for the species. + + INPUT + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + + OUTPUT + KOCC(*) - Integer array, site occupancy numbers for the species; + dimension at least KKTOT, the total species count. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1108181.md b/2026R1/chemkin_26-r1/articles/pgfId-1108181.md new file mode 100644 index 0000000000..3e59dde834 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1108181.md @@ -0,0 +1,33 @@ +# SKCPML + + + + SKCPML SKCPML SKCPML SKCPML SKCPML SKCPML SKCPML + ********************************************** + ************************** + ****** + + SUBROUTINE SKCPML (T, ISKWRK, RSKWRK, CPML) + Returns an array of the specific heats at constant pressure + in molar units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + CPML(*) - Real array, specific heats at constant pressure for the + species; + dimension at least KKTOT, the total species count. + cgs units, ergs/(mole*K) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1108206.md b/2026R1/chemkin_26-r1/articles/pgfId-1108206.md new file mode 100644 index 0000000000..cd4513a6b6 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1108206.md @@ -0,0 +1,33 @@ +# SKCPMS + + + + SKCPMS SKCPMS SKCPMS SKCPMS SKCPMS SKCPMS SKCPMS + ********************************************** + ************************** + ****** + + SUBROUTINE SKCPMS (T, ISKWRK, RSKWRK, CPMS) + Returns an array of the specific heats at constant pressure + in mass units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + CPMS(*) - Real array, specific heats at constant pressure for the + species; + dimension at least KKTOT, the total species count. + cgs units, ergs/(gm*K) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1108231.md b/2026R1/chemkin_26-r1/articles/pgfId-1108231.md new file mode 100644 index 0000000000..715a16ff3f --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1108231.md @@ -0,0 +1,32 @@ +# SKCPOR + + + + SKCPOR SKCPOR SKCPOR SKCPOR SKCPOR SKCPOR SKCPOR + ********************************************** + ************************** + ****** + + SUBROUTINE SKCPOR (T, ISKWRK, RSKWRK, CPOR) + Returns an array of the nondimensional specific heats at constant + pressure. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + CPOR(*) - Real array, nondimensional specific heats at constant + pressure for the species; + dimension at least KKTOT, the total species count. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1108255.md b/2026R1/chemkin_26-r1/articles/pgfId-1108255.md new file mode 100644 index 0000000000..8687765a05 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1108255.md @@ -0,0 +1,50 @@ +# SKCZTA + + + + SKCZTA SKCZTA SKCZTA SKCZTA SKCZTA SKCZTA SKCZTA + ********************************************** + ************************** + ****** + + SUBROUTINE SKCZTA (T, CZ, SDEN, ISKWRK, RSKWRK, ACT) + Returns the activities of the species, given the pressure, + temperature and concentrations. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + CZ(*) - Real array, gas-phase and surface species concentrations, + and bulk species activities; + dimension at least KKTOT, the total species count. + The first KKGAS gas-phase concentrations are moles/cm**3, + the next KKSURF site concentrations are moles/cm**2, and + the final KKBULK entries are bulk species activities. + SDEN(*) - Real array, site densities for the site types; + dimension at least NPHASE, the total phase count, + but the subroutine only uses site phase entries, + NFSURF <= N <= NLSURF. + cgs units, moles/cm**2. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + ACT(*) - Real array, activities of the species; + dimension at least KKTOT, the total species count. + The first KKGAS activities are mole fractions, + the next KKSURF activities are site fractions + (species density normalized by the site density; + surface concentration in moles/cm**2 is + ACT(K)*SITE_DENSITY / # sites per species), and + the next KKBULK activities for bulk phase species + should be from 0 to 1, and should sum to 1 for each + phase. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1108297.md b/2026R1/chemkin_26-r1/articles/pgfId-1108297.md new file mode 100644 index 0000000000..e0a9744994 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1108297.md @@ -0,0 +1,56 @@ +# SKDEN + + + + SKDEN SKDEN SKDEN SKDEN SKDEN SKDEN SKDEN + ********************************************** + ************************** + ****** + + SUBROUTINE SKDEN (P, T, ACT, SDEN, ISKWRK, RSKWRK, DEN) + Returns a real array of species densities. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ACT(*) - Real array, activities of the species; + dimension at least KKTOT, the total species count. + The first KKGAS activities are mole fractions, + the next KKSURF activities are site fractions + (species density normalized by the site density; + surface concentration in moles/cm**2 is + ACT(K)*SITE_DENSITY / # sites per species), and + the next KKBULK activities for bulk phase species + should be from 0 to 1, and should sum to 1 for each + phase. + SDEN(*) - Real array, site densities for the site types; + dimension at least NPHASE, the total phase count, + but the subroutine only uses site phase entries, + NFSURF <= N <= NLSURF. + cgs units, moles/cm**2. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + DEN(*) - Real array, densities for the species; + dimension at least KKTOT, the total species count. + cgm units, gm/cm**3 for gas-phase species + bm/cm**2 for surface species + gm/cm**3 for bulk species + + NOTE: mass densities are not required to be input to + the Interpreter for bulk-phase species. + If they are input, they are returned by this + subroutine. If not, DEN = -1.0 for the bulk + species + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1108345.md b/2026R1/chemkin_26-r1/articles/pgfId-1108345.md new file mode 100644 index 0000000000..0ee80b9f72 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1108345.md @@ -0,0 +1,52 @@ +# SKDRDA + + + + SKDRDA SKDRDA SKDRDA SKDRDA SKDRDA SKDRDA SKDRDA + ********************************************** + ************************** + ****** + + SUBROUTINE SKDRDA (IR, P, T, ACT, SDEN, ISKWRK, RSKWRK, DKDAI) + Returns the partial of the rates of production of the species with + respect to the pre-exponential constant of surface reaction IR. + + INPUT + IR - Integer scalar, surface reaction index. + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ACT(*) - Real array, activities of the species; + dimension at least KKTOT, the total species count. + The first KKGAS activities are mole fractions, + the next KKSURF activities are site fractions + (species density normalized by the site density; + surface concentration in moles/cm**2 is + ACT(K)*SITE_DENSITY / # sites per species), and + the next KKBULK activities for bulk phase species + should be from 0 to 1, and should sum to 1 for each + phase. + SDEN(*) - Real array, site densities for the site types; + dimension at least NPHASE, the total phase count, + but the subroutine only uses site phase entries, + NFSURF <= N <= NLSURF. + cgs units, moles/cm**2. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + DKDAI(*) - Real array, partials of the partial of production rates + of the species with respect to the pre-exponential + constant for surface reaction IR; + dimension at least KKTOT, the total species count. + cgs units, moles/(cm**2*sec) / (units of A) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1108389.md b/2026R1/chemkin_26-r1/articles/pgfId-1108389.md new file mode 100644 index 0000000000..666f34a688 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1108389.md @@ -0,0 +1,52 @@ +# SKDRDC + + + + SKDRDC SKDRDC SKDRDC SKDRDC SKDRDC SKDRDC SKDRDC + ********************************************** + ************************** + ****** + + SUBROUTINE SKDRDC (KSPEC, P, T, ACT, SDEN, ISKWRK, RSKWRK, DKDC) + Returns the partial derivative of the production rates of the + species with respect to the concentration of species KSPEC. + + INPUT + KSPEC - Integer scalar, species index + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ACT(*) - Real array, activities of the species; + dimension at least KKTOT, the total species count. + The first KKGAS activities are mole fractions, + the next KKSURF activities are site fractions + (species density normalized by the site density; + surface concentration in moles/cm**2 is + ACT(K)*SITE_DENSITY / # sites per species), and + the next KKBULK activities for bulk phase species + should be from 0 to 1, and should sum to 1 for each + phase. + SDEN(*) - Real array, site densities for the site types; + dimension at least NPHASE, the total phase count, + but the subroutine only uses site phase entries, + NFSURF <= N <= NLSURF. + cgs units, moles/cm**2. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + DKDC(*) - Real array, partial of the production rates of the + species with respect to the concentration of species + KSPEC; + dimension at least KKTOT, the total species count. + cgs units, moles/(cm**2*sec) / (units of KSPEC) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1108433.md b/2026R1/chemkin_26-r1/articles/pgfId-1108433.md new file mode 100644 index 0000000000..9326e4691e --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1108433.md @@ -0,0 +1,76 @@ +# SKDSDC + + + + SKDSDC SKDSDC SKDSDC SKDSDC SKDSDC SKDSDC SKDSDC + ********************************************** + ************************** + ****** + + SUBROUTINE SKDSDC (P, T, X, ACT, SDEN, ISKWRK, RSKWRK, DSDC, KDIM, + SDOT, SITDOT) + Returns the partial derivative of the production rates of the + species with respect to the concentration of each species. + It also returns the matching production rates. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + X(*) - Real array, mole fraction (or its equivalent) of the + species; + dimension at least KKTOT, the total species count. + The first KKGAS X are mole fractions, + the next KKSURF X are site fractions + (species density normalized by the site density; + surface concentration in moles/cm**2 is + X(K)*SITE_DENSITY / # sites per species), + the next KKBULK X are bulk species mole fractions. + ACT(*) - Real array, activities of the species; + dimension at least KKTOT, the total species count. + The first KKGAS activities are mole fractions, + the next KKSURF activities are site fractions + (species density normalized by the site density; + surface concentration in moles/cm**2 is + ACT(K)*SITE_DENSITY / # sites per species), and + the next KKBULK activities for bulk phase species + should be from 0 to 1, and should sum to 1 for each + phase. + SDEN(*) - Real array, site densities for the site types; + dimension at least NPHASE, the total phase count, + but the subroutine only uses site phase entries, + NFSURF <= N <= NLSURF. + cgs units, moles/cm**2. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + KDIM - Integer scalar, actual first dimension of DSDC. + + OUTPUT + DSDC(*,*) - Real matrix, the partial derivatives of the production + rates of the species with respect to the concentration + of species KSPEC; + dimension at least KKTOT, the total species count, for + both the first and second dimensions. + cgs units, moles/(cm**2*sec) / (units of KSPEC) + SDOT(*) - Real array, production rates of the species; + dimension at least KKTOT, the total species count. + cgs units, moles/(cm**2*sec) + for 1,KKGAS, the production rates of gas-phase species, + for KKGAS+1,KKGAS+KKSUR, the production rates of surface + species, + for KKGAS+KKSUR+1,KKTOT, the production rate of bulk + species. + SITDOT(*) - Real array, production rates of the surface phases; + dimension at least NPHASE, the total phase count, but + subroutine only calculates entries for site phases. + cgs units, moles/(cm**2*sec) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1108501.md b/2026R1/chemkin_26-r1/articles/pgfId-1108501.md new file mode 100644 index 0000000000..b351c83bfc --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1108501.md @@ -0,0 +1,77 @@ +# SKDSDX + + + + SKDSDX SKDSDX SKDSDX SKDSDX SKDSDX SKDSDX SKDSDX + ********************************************** + ************************** + ****** + + SUBROUTINE SKDSDX (P, T, X, ACT, SDEN, ISKWRK, RSKWRK, DSDX, KDIM, + SDOT, SITDOT) + Returns the partial derivative of the production rates of the + species with respect to the activity for each species. + It also returns the matching production rates. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + X(*) - Real array, mole fraction (or its equivalent) of the + species; + dimension at least KKTOT, the total species count. + The first KKGAS X are mole fractions, + the next KKSURF X are site fractions + (species density normalized by the site density; + surface concentration in moles/cm**2 is + X(K)*SITE_DENSITY / # sites per species), + the next KKBULK X are bulk species mole fractions. + ACT(*) - Real array, activities of the species; + dimension at least KKTOT, the total species count. + The first KKGAS activities are mole fractions, + the next KKSURF activities are site fractions + (species density normalized by the site density; + surface concentration in moles/cm**2 is + ACT(K)*SITE_DENSITY / # sites per species), and + the next KKBULK activities for bulk phase species + should be from 0 to 1, and should sum to 1 for each + phase. + SDEN(*) - Real array, site densities for the site types; + dimension at least NPHASE, the total phase count, + but the subroutine only uses site phase entries, + NFSURF <= N <= NLSURF. + cgs units, moles/cm**2. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + KDIM - Integer scalar, actual first dimension of DSDX. + + OUTPUT + DSDX(*,*) - Real matrix, partial derivatives of the production rates + of the species with respect to the activity of species + KSPEC; + dimension at least KKTOT, the total species count, for + both the first and second dimensions. + cgs units, moles/(cm**2*sec) / (units of KSPEC) + SDOT(*) - Real array, production rates of the species; + dimension at least KKTOT, the total species count. + cgs units, moles/(cm**2*sec) + SDOT(K) is + for 1,KKGAS, the production rate of gas-phase species, + for KKGAS+1,KKGAS+KKSUR, the production rate of surface + species, + for KKGAS+KKSUR+1,KKTOT, the production rate of bulk + species. + SITDOT(*) - Real array, production rates of the surface phases; + dimension at least NPHASE, the total phase count, but + subroutine only calculates entries for site phases. + cgs units, moles/(cm**2*sec) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1108570.md b/2026R1/chemkin_26-r1/articles/pgfId-1108570.md new file mode 100644 index 0000000000..df99d33142 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1108570.md @@ -0,0 +1,51 @@ +# SKEQ + + + + SKEQ SKEQ SKEQ SKEQ SKEQ SKEQ SKEQ + ********************************************** + ************************** + ****** + + SUBROUTINE SKEQ (P, T, ACT, SDEN, ISKWRK, RSKWRK, EQK) + Returns the equilibrium constants for the surface reactions given + pressure, temperature, species activities, and the site densities. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ACT(*) - Real array, activities of the species; + dimension at least KKTOT, the total species count. + The first KKGAS activities are mole fractions, + the next KKSURF activities are site fractions + (species density normalized by the site density; + surface concentration in moles/cm**2 is + ACT(K)*SITE_DENSITY / # sites per species), and + the next KKBULK activities for bulk phase species + should be from 0 to 1, and should sum to 1 for each + phase. + SDEN(*) - Real array, site densities for the site types; + dimension at least NPHASE, the total phase count, + but the subroutine only uses site phase entries, + NFSURF <= N <= NLSURF. + cgs units, moles/cm**2. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + EQK(*) - Real array, equilibrium constants in concentration units + for the reactions; + dimension at least IISUR, the total surface reaction + count. + cgs units, depends on reaction (moles, cm) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1108613.md b/2026R1/chemkin_26-r1/articles/pgfId-1108613.md new file mode 100644 index 0000000000..cfccc4e44a --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1108613.md @@ -0,0 +1,58 @@ +# SKFLGS + + + + SKFLGS SKFLGS SKFLGS SKFLGS SKFLGS SKFLGS SKFLGS + ********************************************** + ************************** + ****** + + SUBROUTINE SKFLGS (IR, ISKWRK, NRPP, IREV, ISTFL, ICOV, IMOTZ, + IEDP, IBHM, IORD, IYLD) + Returns several integer flags describing surface reaction IR. + + + INPUT + IR - Integer scalar, surface reaction index. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + + OUTPUT + NRPP - Integer scalar, number of species (reactants+products) + for surface reaction IR, combined with reversibility + flag. + NRPP > 0, NRPP species, reversible surface reaction, + < 0, ABS(NRPP) species, irreversible reaction. + IREV - Integer scalar, flag for explicit reverse Arrhenius + parameters. + =1, reaction has explicit reverse Arrhenius parameters + =0, no (may or may not be reversible, see NRPP). + ISTFL - Integer scalar, flag for sticking coefficients; + =1, reaction does not use sticking coefficients + =0, no + IMOTZ - Integer scalar, flag for Motz-Wise correction of + sticking coefficients; + =1, sticking reaction with Motz-Wise correction + =0, no (may or may not be sticking reaction, see ISTFL) + ICOV - Integer scalar, flag to indidicate that reaction has + coverage dependence; + =1, reaction has coverage dependence + =0, no. + IEDP - Integer scalar, flag for energy-dependence; + =1, reaction is energy-dependent, + =0, no. + IBHM - Integer scalar, flag for Bohm correction; + =1, Bohm reaction, + =0, no + IORD - Integer scalar, flag for species order change; + =1, reaction has species order change, + =0, no + IYLD - Integer scalar, flag for yield-modification; + =1, yield-modification in reaction; + =0, no + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1108663.md b/2026R1/chemkin_26-r1/articles/pgfId-1108663.md new file mode 100644 index 0000000000..1ae3bded58 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1108663.md @@ -0,0 +1,33 @@ +# SKGML + + + + SKGML SKGML SKGML SKGML SKGML SKGML SKGML + ********************************************** + ************************** + ****** + + SUBROUTINE SKGML (T, ISKWRK, RSKWRK, GML) + Returns an array of the standard state Gibbs free energies + in molar units. Does not account for dependence on surface coverage (HFCOV). To include that effect, use subroutine SKCGML. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + GML(*) - Real array, standard state Gibbs free energies + for the species; + dimension KKTOT, the total species count. + cgs units, ergs/mole + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1108688.md b/2026R1/chemkin_26-r1/articles/pgfId-1108688.md new file mode 100644 index 0000000000..23cd53f319 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1108688.md @@ -0,0 +1,33 @@ +# SKGMS + + + + SKGMS SKGMS SKGMS SKGMS SKGMS SKGMS SKGMS + ********************************************** + ************************** + ****** + + SUBROUTINE SKGMS (T, ISKWRK, RSKWRK, GMS) + Returns an array of the standard state Gibbs free energies + in mass units. Does not account for dependence on surface coverage (HFCOV). To include that effect, use subroutine SKCGMS. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + GMS(*) - Real array, standard state Gibbs free energies + for the species; + dimension at least KKTOT, the total species count. + cgs units, ergs/gm + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1108713.md b/2026R1/chemkin_26-r1/articles/pgfId-1108713.md new file mode 100644 index 0000000000..2abd1a2180 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1108713.md @@ -0,0 +1,31 @@ +# SKHML + + + + SKHML SKHML SKHML SKHML SKHML SKHML SKHML + ********************************************** + ************************** + ****** + + SUBROUTINE SKHML (T, ISKWRK, RSKWRK, HML) + Returns an array of the enthalpies in molar units. Does not account for dependence on surface coverage (HFCOV). To include that effect, use subroutine SKCHML. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + HML(*) - Real array, enthalpies for the species; + dimension at least KKTOT, the total species count. + cgs units, ergs/mole + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1108736.md b/2026R1/chemkin_26-r1/articles/pgfId-1108736.md new file mode 100644 index 0000000000..7537c7561d --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1108736.md @@ -0,0 +1,31 @@ +# SKHMS + + + + SKHMS SKHMS SKHMS SKHMS SKHMS SKHMS SKHMS + ********************************************** + ************************** + ****** + + SUBROUTINE SKHMS (T, ISKWRK, RSKWRK, HMS) + Returns an array of the enthalpies in mass units. Does not account for dependence on surface coverage (HFCOV). To include that effect, use subroutine SKCHMS. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + HMS(*) - Real array, enthalpies for the species; + dimension at least KKTOT, the total species count. + cgs units, ergs/gm + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1108759.md b/2026R1/chemkin_26-r1/articles/pgfId-1108759.md new file mode 100644 index 0000000000..0d36d8116d --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1108759.md @@ -0,0 +1,30 @@ +# SKHORT + + + + SKHORT SKHORT SKHORT SKHORT SKHORT SKHORT SKHORT + ********************************************** + ************************** + ****** + + SUBROUTINE SKHORT (T, ISKWRK, RSKWRK, HORT) + Returns an array of the nondimensional enthalpies. Does not account for dependence on surface coverage (HFCOV). To include that effect, use subroutine SKCHORT. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + HORT(*) - Real array, nondimensional enthalpies for the species; + dimension at least KKTOT, the total species count. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1108781.md b/2026R1/chemkin_26-r1/articles/pgfId-1108781.md new file mode 100644 index 0000000000..ac1ffd40a0 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1108781.md @@ -0,0 +1,29 @@ +# SKIBHM + + + + SKIBHM SKIBHM SKIBHM SKIBHM SKIBHM SKIBHM SKIBHM + ********************************************** + ************************** + ****** + + SUBROUTINE SKIBHM (IR, ISKWRK, IBMFL) + Returns an integer flag to indicate whether reaction IR uses + BOHM sticking coefficients. + + INPUT + IR - Integer scalar, surface reaction index. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + + OUTPUT + IBMFL - Integer scalar, flag for Bohm reactions; + 0, reaction IR does not use BOHM sticking coefficients + K, reaction IR does use BOHM sticking coefficients, + and K is the index of the BOHM-correction ion. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1108802.md b/2026R1/chemkin_26-r1/articles/pgfId-1108802.md new file mode 100644 index 0000000000..0aaf53a9ef --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1108802.md @@ -0,0 +1,39 @@ +# SKICOV + + + + SKICOV SKICOV SKICOV SKICOV SKICOV SKICOV SKICOV + ********************************************** + ************************** + ****** + + SUBROUTINE SKICOV (IR, NDIM, ISKWRK, RSKWRK, NCOVI, KCOVI, CPARI) + Returns the coverage species index numbers and their coverage + parameters for reaction IR. + + INPUT + IR - Integer scalar, surface reaction index. + NDIM - Integer scalar, first dimension of array CPAR, the + coverage parameters; NDIM must be at least NSCOV, + the total number of coverage parameters. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + NCOVI - Integer scalar, total number of species that modify the + rate of reaction IR through coverage dependence. + KCOVI(*) - Integer array, species indices for the NCOVI species that + modify the rate of a coverage dependence reaction; + dimension at least KKTOT, the total species count. + CPARI(*,*)- Real matrix, coverage parameters for the coverage species + of reaction IR; + dimension at least NSCOV for the first, the number of + coverage parameters required, and at least KKTOT for the + second, the total species count. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1108833.md b/2026R1/chemkin_26-r1/articles/pgfId-1108833.md new file mode 100644 index 0000000000..95dc278b02 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1108833.md @@ -0,0 +1,35 @@ +# SKIENR + + + + SKIENR SKIENR SKIENR SKIENR SKIENR SKIENR SKIENR + ********************************************** + ************************** + ****** + + SUBROUTINE SKIENR (IR, ISKWRK, SKWRK, IENRFL, IEION, PEDEP) + Returns an integer flag to indicate if reaction IR is ion-energy- + dependent, and if so, formulation-specific parameters. + + INPUT + IR - Integer scalar, reaction index; + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + IENRFL - Integer scalar, + 0, reaction IR does not have an ion-energy dependence + 1, reaction IR does have an ion-energy dependence + IEION - Integer scalar, species index of the ion on which + reaction is dependent; + PEDEP(*) - Real array, supplemental parameters for an + ion-energy-dependent reaction rate formulation; + dimension at least NEDPAR, the number of supplemental + rate parameters required. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1108860.md b/2026R1/chemkin_26-r1/articles/pgfId-1108860.md new file mode 100644 index 0000000000..b9a06d6499 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1108860.md @@ -0,0 +1,49 @@ +# SKILANG + + + + SKILANG SKILANG SKILANG SKILANG SKILANG SKILANG SKILANG + ********************************************** + ************************** + ****** + + SUBROUTINE SKILANG (IS, ISKWRK, RSKWRK, MAXK, NKLANG, KLANG, + NULANG, ELANG, MAXP, PLANG) + Returns a set of flags indicating whether the reactions are + Langmuir-Hinshelwood/Eley Rideal reactions, and if so, the + species indices and their parameters. + + INPUT + IS - Integer reaction index. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + MAXK - Integer dimension for data arrays; + MAXK needs to be at least as large as the number of + L-H/ER species in reaction IS. + OUTPUT + NKLANG - Integer scalar; + = 0, there is no L-H or ER rate-modify; + = N > 0, there are N species for an L-H rate-modify. + KLANG(*) - Integer array, L-H/ER species for reaction IS; + dimension at least NDIM. + NULANG(*) - Integer array, L-H/ER reactant and product species + flags for reaction IS; + if NULANG(n) = 1, the nth reaction species uses an L-H + rate scalar in the numberator, as well as the denominator; + dimension at least MAXSPR, the number of species allowed + in a surface reaction. + ELANG - Real scalar, L-H/ER exponent for the denominator for + reaction IS; + MAXP - Integer dimension for data arrays; + MAXP needs to be at least NLHPAR, the number of parameters + required for an L-H/ER species rate-modify. + PLANG(*,*)- Real matrix, L-H/ER species parameters for reaction IS; + the first dimension needs to be at least NLHPAR, + the second dimension needs to be at least NKLANG. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1108932.md b/2026R1/chemkin_26-r1/articles/pgfId-1108932.md new file mode 100644 index 0000000000..3902a1f0c2 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1108932.md @@ -0,0 +1,38 @@ +# SKINIT + + + + SKINIT SKINIT SKINIT SKINIT SKINIT SKINIT SKINIT + ********************************************** + ************************** + ****** + + SUBROUTINE SKINIT (LENISK, LENRSK, LENCSK, LINSK, LOUT, + ISKWRK, RSKWRK, CSKWRK, IFLAG) + Reads the surface linkfile and creates internal work arrays ISKWRK, + RSKWRK, and CSKWRK. SKINIT must be called before any other Surface + Chemkin subroutine can be used, as the work arrays must be available + as their input. + + INPUT + LENISK - Integer scalar, length of the integer array ISKWRK. + LENRSK - Integer scalar, length of the real array RSKWRK. + LENCSK - Integer scalar, length of the character string array + CSKWRK. + LINSK - Integer scalar, linkfile input file unit number. + LOUT - Integer scalar, formatted output file unit number. + + OUTPUT + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + CSKWRK(*) - Character string workspace array; dimension at least + LENCSK. + IFLAG - Integer scalar to indicate successful reading of + linkfile; IFLAG>0 is an error type. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1108962.md b/2026R1/chemkin_26-r1/articles/pgfId-1108962.md new file mode 100644 index 0000000000..ba125d6cbd --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1108962.md @@ -0,0 +1,43 @@ +# SKINU + + + + SKINU SKINU SKINU SKINU SKINU SKINU SKINU + ********************************************** + ************************** + ****** + + SUBROUTINE SKINU (IR, NDIM, ISKWRK, RSKWRK, NSPEC, KI, NU) + Returns the number of species in a surface reaction, and the + species indices and stoichiometric coefficients. + + INPUT + IR - Integer scalar, index number of a surface reaction; + IR must be greater than 0 and less than or equal to + IISUR, the total surface reaction count. + NDIM - Integer scalar, dimension of the arrays KI and NU; + NDIM must be at least MAXSPR, the total number of + species allowed in a surface reaction. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + NSPEC - Integer scalar, the number of species (reactants + + products) in surface reaction IR. + KI(*) - Integer array, species indices for the species in surface + reaction IR; + dimension at least MAXSPR, the total number of species + allowed in a surface reaction. + NU(*) - Integer array, stoichiometric coefficients of the + species in surface reaction IR; + dimension at least MAXSPR, the total number of species + allowed in a surface reaction. + NU is negative if the Nth species is a reactant; + NU is positive if the Nth species is a product. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1108997.md b/2026R1/chemkin_26-r1/articles/pgfId-1108997.md new file mode 100644 index 0000000000..3709318018 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1108997.md @@ -0,0 +1,53 @@ +# SKIORD + + + + SKIORD SKIORD SKIORD SKIORD SKIORD SKIORD SKIORD + ********************************************** + ************************** + ****** + + SUBROUTINE SKIORD (IDIM, KDIM, ISKWRK, RSKWRK, NFORD, IFORD, FORD, + NRORD, IRORD, RORD) + Returns the number and indices of surface reactions with modified + species orders, and the order values for the species in the + surface mechanism. + + INPUT + IDIM - Integer scalar, dimension of arrays IFORD and IRORD; + IDIM must be at least NORD, the total number of + surface reactions with modified species orders. + KDIM - Integer scalar, first dimension of the arrays FORD and + RORD; + KDIM must be at least NKK, the total species count. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + NFORD - Integer scalar, total number of surface reactions with + modified forward species orders. + IFORD(*) - Integer array, indices of surface reactions with modified + forward species orders; dimension at least NFORD. + FORD(*,*) - Real matrix, the modified forward species orders for the + NFORD surface reactions; + dimension at least KKTOT, the total species count, for + the first, and at least NFORD for the second. + FORD(K,N) is the forward order of species K for the Nth + surface change-order reaction. + NRORD - Integer scalar, total number of surface reactions with + modified reverse species orders. + IRORD(*) - Integer array, indices of surface reactions with modified + reverse species orders; dimension at least NRORD. + RORD(*,*) - Real matrix, the modified reverse species orders for the + NRORD surface reactions; + dimension at least KKTOT for the first, the total species + count, and at least NRORD for the second. + RORD(K,N) is the reverse order of species K for the Nth + surface change-order reaction. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109074.md b/2026R1/chemkin_26-r1/articles/pgfId-1109074.md new file mode 100644 index 0000000000..858aabf279 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109074.md @@ -0,0 +1,54 @@ +# SKIRNU + + + + SKIRNU SKIRNU SKIRNU SKIRNU SKIRNU SKIRNU SKIRNU + ********************************************** + ************************** + ****** + + SUBROUTINE SKIRNU (IDIM, NDIM, ISKWRK, RSKWRK, NIIRNU, IRNU, + NSPEC, KI, RNU) + Returns the number and indices of surface reactions with real + stoichiometric coefficients, number of species in the reactions, + and the species indices and coefficients; + + INPUT + IDIM - Integer scalar, dimension of the arrays IRNU and NSPEC, + and the second dimension of matrices KI and RNU; + IDIM must be at least NIIRNU, the number of surface + reactions with real stoichiometric coefficients. + NDIM - Integer scalar, first dimension of matrices KI and RNU; + NDIM must be at least MAXSPR, the maximum number of + species allowed in a surface reaction. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + NIIRNU - Integer scalar, total number of surface reactions with + real stoichiometric coefficients. + IRNU(*) - Integer array, indices of surface reactions with real + stoichiometric coefficients; dimension at least NIIRNU. + NSPEC(*) - Integer array, total number of species in a surface + reaction; + dimension at least NIIRNU. + KI(*,*) - Integer matrix, species indices for species in a surface + reaction; + dimension at least MAXSPR for the first, and at least + NIIRNU for the second. + KI(M,N) is the species index of the Mth species in the + Nth real coefficient surface reaction. + RNU(*,*) - Real matrix, stoichiometric coefficients for species + in the NIIRNU reactions; dimension at least MAXSPR for + the first, and at least NIIRNU for the second. + RNU(M,N) is the stoichiometric coefficient of the Mth + species in the Nth real coefficient surface reaction, and + RNU(M,*) < 0 if the Mth species is a reactant; + RNU(M,*) > 0 if the Mth species is a product. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109120.md b/2026R1/chemkin_26-r1/articles/pgfId-1109120.md new file mode 100644 index 0000000000..02dcf33259 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109120.md @@ -0,0 +1,28 @@ +# SKISTK + + + + SKISTK SKISTK SKISTK SKISTK SKISTK SKISTK SKISTK + ********************************************** + ************************** + ****** + + SUBROUTINE SKISTK (IR, ISKWRK, ISTFL) + Returns an integer flag to indicate whether reaction IR uses + sticking coefficients. + + INPUT + IR - Integer scalar, index of a surface reaction. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + + OUTPUT + ISTFL - Integer scalar, + 0, reaction IR does not use sticking coefficients + 1, reaction IR does use sticking coefficients + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109140.md b/2026R1/chemkin_26-r1/articles/pgfId-1109140.md new file mode 100644 index 0000000000..715effdbe8 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109140.md @@ -0,0 +1,29 @@ +# SKIUQ + + + + SKIUQ SKIUQ SKIUQ SKIUQ SKIUQ SKIUQ SKIUQ + ********************************************** + ************************** + ****** + + SUBROUTINE SKIUQ (ISKWRK, IQUSR) + Returns a set of flags indicating whether the reactions are + user-modify rate-of-progress reactions, and if so, + the user-modify type. + + INPUT + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + OUTPUT + IQUSR(*) - Integer array, user rate-modify flags for reactions; + dimension at least IISUR, the total surface reaction count. + IQUSR(IS)= 0 reaction IS is not a user rate-modify reaction + IQUSR(IS)= N reaction IS is a user rate-modify reaction, + with rate-modify type N + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109161.md b/2026R1/chemkin_26-r1/articles/pgfId-1109161.md new file mode 100644 index 0000000000..ed6b42642c --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109161.md @@ -0,0 +1,48 @@ +# SKIYLD + + + + SKIYLD SKIYLD SKIYLD SKIYLD SKIYLD SKIYLD SKIYLD + ********************************************** + ************************** + ****** + + SUBROUTINE SKIYLD (IR, ISKWRK, RSKWRK, IYLD, IYION, KYLD, PYLD) + Returns an integer flag to indicate whether reaction IR has yield- + modified species, the species index of its ion, yield-modify flags + for its reactants and products, and parameters for the yield + expression. + + INPUT + IR - Integer scalar, surface reaction index. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + IYLD - Integer scalar, flag for yield-modify reactions; + 1, reaction IR uses yield-modification + 0, no + IYION - Integer scalar, species index of the ion in a yield- + modify reaction. + KYLD(*) - Integer array, yield flags for the species in a yield- + modify reaction; + dimension at least MAXSPR, the maximum number of species + allowed in a surface reaction. + 1, species is yield-modified + 0, no + PYLD(*) - Real array, parameters for the yield-expression in + a yield-modify reaction; + dimension at least NYPAR, the number of parameters + required. + If IYLD=1, and KYLD of the Nth species in the reaction + is 1, the stoichiometric coefficient NU of the species is + scaled by the results of the expression + PYLD(1) * [Ei**PYLD(3) - PYLD(2)**PYLD(3)] **PYLD(4) + where Ei is the ion energy of species IYION. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109201.md b/2026R1/chemkin_26-r1/articles/pgfId-1109201.md new file mode 100644 index 0000000000..9147001266 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109201.md @@ -0,0 +1,37 @@ +# SKKFRT + + + + SKKFRT SKKFRT SKKFRT SKKFRT SKKFRT SKKFRT SKKFRT + ********************************************** + ************************** + ****** + + SUBROUTINE SKKFRT (P, T, ISKWRK, RSKWRK, RKFT, RKRT) + Returns the temperature-dependent forward and reverse reaction + rate coefficients for reactions given pressure and temperature. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + RKFT(*) - Real array, forward reaction rates for reactions; + dimension at least IISUR, the total reaction count. + cgs units, depends on the reaction + RKRT(*) - Real array, reverse reaction rates for reactions; + dimension at least IISUR, the total reaction count. + cgs units, depends on the reaction + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109230.md b/2026R1/chemkin_26-r1/articles/pgfId-1109230.md new file mode 100644 index 0000000000..e3cbd485f9 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109230.md @@ -0,0 +1,30 @@ +# SKKION + + + + SKKION SKKION SKKION SKKION SKKION SKKION SKKION + ********************************************** + ************************** + ****** + + SUBROUTINE SKKION (ISKWRK, KEL, KKION, KION) + Returns the species number of the electron, the number of positive + ions in the gas phase, and an array of species number for each + positive ion + + INPUT + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + + OUTPUT + KEL - Integer scalar, species index of the electron species. + KKION - Integer scalar, total gas-phase positive ion count. + KION - Integer array, species indices for the gas-phase positive + ions; + dimension at least NKKGAS, the gas-phase species count. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109252.md b/2026R1/chemkin_26-r1/articles/pgfId-1109252.md new file mode 100644 index 0000000000..3021ec70a5 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109252.md @@ -0,0 +1,28 @@ +# SKKTFL + + + + SKKTFL SKKTFL SKKTFL SKKTFL SKKTFL SKKTFL SKKTFL + ********************************************** + ************************** + ****** + + SUBROUTINE SKKTFL (ISKWRK, KTFL) + + Allows the user to assign a location in the temperature array + to use for the gas-phase species. + + INPUT + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + KTFL(*) - Integer array, ndices into the temperature(s) for + gas-phase species; + dimension at least KKGAS, the total gas-phase species + count. + Default value stored in ISKWRK is set to 1 in SKINIT. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109272.md b/2026R1/chemkin_26-r1/articles/pgfId-1109272.md new file mode 100644 index 0000000000..e5517e1bd5 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109272.md @@ -0,0 +1,27 @@ +# SKKTMP + + + + SKKTMP SKKTMP SKKTMP SKKTMP SKKTMP SKKTMP SKKTMP + ********************************************** + ************************** + ****** + + SUBROUTINE SKKTMP (ISKWRK, KTFL) + Returns the temperature array indices for the + gas-phase species. + + INPUT + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + KTFL(*) - Integer array, indices into the temperature(s) for + gas-phase species; + dimension at least KKGAS, the total gas-phase species + count. + Default value stored in ISKWRK is set to 1 in SKINIT. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109291.md b/2026R1/chemkin_26-r1/articles/pgfId-1109291.md new file mode 100644 index 0000000000..5e302178ef --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109291.md @@ -0,0 +1,29 @@ +# SKKUW + + + + SKKUW SKKUW SKKUW SKKUW SKKUW SKKUW SKKUW + ********************************************** + ************************** + ****** + + SUBROUTINE SKKUW (ISKWRK, KWUSR) + Returns a set of flags indicating whether the species are + user-modify rate-of-production species, and if so, + the user-modify type. + + INPUT + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + OUTPUT + KWUSR(*) - Integer array, user rate-modify flags for species; + dimension at least KKTOT, the total species count. + KWUSR(K)= 0 species K is not a user rate-modify species + KWUSR(K)= N species is a user rate-modify species, + with rate-modify type N + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109312.md b/2026R1/chemkin_26-r1/articles/pgfId-1109312.md new file mode 100644 index 0000000000..ccfc5b6327 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109312.md @@ -0,0 +1,31 @@ +# SKLEN + + + + SKLEN SKLEN SKLEN SKLEN SKLEN SKLEN SKLEN + ********************************************** + ************************** + ****** + + SUBROUTINE SKLEN (LINSK, LOUT, LENI, LENR, LENC, IFLAG) + Reads the first record of the linkfile to return the lengths + required for the integer, real, and character work arrays. + + INPUT + LINSK - Integer scalar, input unit number assigned to linkfile. + LOUT - Integer scalar, formatted output unit file number. + + OUTPUT + LENI - Integer scalar, dimension required for integer work + array, ISKWRK. + LENR - Integer scalar, dimension required for real work + array, RSKWRK. + LENC - Integer scalar, dimension required for character work + array, CSKWRK. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109335.md b/2026R1/chemkin_26-r1/articles/pgfId-1109335.md new file mode 100644 index 0000000000..26a6a89ac1 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109335.md @@ -0,0 +1,49 @@ +# SKLEN2 + + + + SKLEN2 SKLEN2 SKLEN2 SKLEN2 SKLEN2 SKLEN2 SKLEN2 + ********************************************** + ************************** + ****** + + SUBROUTINE SKLEN2 (LINSK, LOUT, LENI, LENR, LENC, + NELEM, NKKGAS, NKKSUR, NKKBLK, NKKTOT, NPHASE, + NNSUR, NNBLK, NIISUR, NIICON, MORE, IFLAG) + Reads the first record of the linkfile to return the lengths + required for the integer, real, and character work arrays, + as well as other size information needed for memory allocation. + The routine also advances to the end of the first material. + + INPUT + LINSK - Integer scalar, input unit number assigned to linkfile. + LOUT - Integer scalar, formatted output unit file number. + + OUTPUT + LENI - Integer scalar, dimension required for integer work + array, ISKWRK. + LENR - Integer scalar, dimension required for real work + array, RSKWRK. + LENC - Integer scalar, dimension required for character work + array, CSKWRK. + NELEM - Integer scalar, number of elements + NKKGAS - Integer scalar, number of gas-phase species + NKKSUR - Integer scalar, number of surface site species + NKKBLK - Integer scalar, number of bulk species + NKKTOT - Integer scalar, total number of species + NPHASE - Integer scalar, total number of phases + NNSUR - Integer scalar, number of surface phases + NNBLK - Integer scalar, number of bulk phases + NIISUR - Number of surface reactions + NIICON - Number of reactions for which sites are not conserved. + MORE - Integer scalar, flag if > 0 indicates another material + follows this one in the linking file. + IFLAG - Integer scalar, flag if > 0 indicates an error occurred + during reading of the linking file. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109376.md b/2026R1/chemkin_26-r1/articles/pgfId-1109376.md new file mode 100644 index 0000000000..377d1c6c1a --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109376.md @@ -0,0 +1,26 @@ +# SKMXTP + + + + SKMXTP SKMXTP SKMXTP SKMXTP SKMXTP SKMXTP SKMXTP + ********************************************** + ************************** + ****** + + SUBROUTINE SKMXTP (ISKWRK, MXTP) + Returns the maximum number of temperatures used in + fitting the thermodynamic properties of the species. + + INPUT + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + + OUTPUT + MXTP - Integer scalar, maximum number of temperatures used in + fitting the thermodynamic properties of the species. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109394.md b/2026R1/chemkin_26-r1/articles/pgfId-1109394.md new file mode 100644 index 0000000000..d6c17da049 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109394.md @@ -0,0 +1,30 @@ +# SKNCF + + + + SKNCF SKNCF SKNCF SKNCF SKNCF SKNCF SKNCF + ********************************************** + ************************** + ****** + + SUBROUTINE SKNCF (NELDIM, ISKWRK, NEL) + Returns the elemental composition of the species. + + INPUT + NELDIM - Integer scalar, first dimension of the matrix NEL; + must be at least NELEM, the total element count. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + + OUTPUT + NEL(*,*) - Integer matrix, elemental compositions of the species; + dimension at least NELEM for the first, the total + element count, and at least KKTOT for the second, the + total species count. + NEL(M,K) is the quantity of element M in species K. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109435.md b/2026R1/chemkin_26-r1/articles/pgfId-1109435.md new file mode 100644 index 0000000000..9ad996288a --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109435.md @@ -0,0 +1,37 @@ +# SKNU + + + + SKNU SKNU SKNU SKNU SKNU SKNU SKNU + ********************************************** + ************************** + ****** + + SUBROUTINE SKNU (IDIM, ISKWRK, RSKWRK, KSTOIC, NSTOIC) + Returns the stoichiometric coefficients of the species and the net + change in phases for all of the surface reactions in a mechanism. + + INPUT + IDIM - Integer scalar, first dimension of the array NSTOIC; + must be at least IISUR, the total surface reaction count. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + KSTOIC(*,*)-Integer matrix, stoichiometric coefficients for the + species in the surface reactions; + the first dimension must be at least IISUR, the total + surface reaction count, and at least KKTOT for the + second, the total species count. + NSTOIC(*,*)-Integer matrix, net change of the phases for the surface + reactions; + the first dimension must be at least IISUR, the total + surface reaction count, and at least NPHASE for the + second the total phase count. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109464.md b/2026R1/chemkin_26-r1/articles/pgfId-1109464.md new file mode 100644 index 0000000000..262918c8a8 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109464.md @@ -0,0 +1,32 @@ +# SKNUF + + + + SKNUF SKNUF SKNUF SKNUF SKNUF SKNUF SKNUF + ********************************************** + ************************** + ****** + + SUBROUTINE SKNUF (IDIM, ISKWRK, KSTOIF) + Returns the stoichiometric coefficients of the species + for all reactants in all surface reactions in a mechanism. + (note - reactants only! - they will all be negative) + + INPUT + IDIM - Integer scalar, first dimension of the array NSTOIC; + must be at least ISUR, the total surface reaction count. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + + OUTPUT + KSTOIF(*,*)-Integer matrix, stoichiometric coefficients for the + reactants in the surface reactions; + dimension at least IISUR for the first, the total surface + reaction ount, and at least KKTOT for the second, the + total species count. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109488.md b/2026R1/chemkin_26-r1/articles/pgfId-1109488.md new file mode 100644 index 0000000000..ebf6dbfa17 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109488.md @@ -0,0 +1,82 @@ +# SKPCMP + + + + SKPCMP SKPCMP SKPCMP SKPCMP SKPCMP SKPCMP SKPCMP + ********************************************** + ************************** + ****** + + SUBROUTINE SKPCMP (ISTR, IRAY, NN, SETS, NSETS, ISET, IND, NT) + This subroutine can do everything that the subroutine SKCOMP can do, + and additionally, has the capabilities of separating the elements of + IRAY into categories and then search IRAY by element and category. + The categories that each element of IRAY will be assigned to are + specified by the input character string vector SETS of vector length + NSETS. Elements of each category in IRAY must be grouped congrously. + The number of elements in each category within IRAY is specified by + the input integer vector ISET. To search for the existence of an + element within acategory ISTR may additionally be composed of two + substrings, ISTR="ELEMENT_NAME/CATEGORY_NAME/", where CATEGORY_NAME + is one of the categories specified in SETS. In this case, IND will + return the first position in IRAY where ELEMENT_NAME occurred within + the category CATEGORY_NAME. NT will return the total number of + times ELEMENT_NAME occurred within the category CATEGORY_NAME. + If ELEMENT_NAME is not found within the specified category, IND and + NT are returned with a value of zero. If no category is specified + within ISTR, IND and NT return with the same values as they would + from subroutine SKCOMP. + + Consider the following example, + IRAY = {"RED", "BLUE", "JADE", "RUBY", "TOPAZ", "JADE"} + NN = 6 + SETS = {"COLORS", "STONES"}, + NSETS = 2 + ISET = {4, 2}. + This assumes that the elements of IRAY were grouped into two + sets, consisting of 4 and 2 elements, respectively, and the + following names + "COLORS" = {"RED", "BLUE", "JADE", "RUBY"}, and + "STONES" = {"TOPAZ", "JADE"}. + + If ISTR="BLUE" then IND=2 and NT=1; + if ISTR="PINK" then IND=0 and NT=0; and + if ISTR="JADE",then IND=3 and NT=2. + + If ISTR="BLUE/COLORS/" then IND=2 and NT=1; + if ISTR="BLUE/STONES/" then IND=0 and NT=0; + if ISTR="JADE/GEMS/" then IND=0 and NT=0; and + if ISTR="JADE/STONES/",then IND=6 and NT=1. + + INPUT + ISTR - Character string, which may or may not end with a + slash-delimited substring. + IRAY(*) - Character string array; + dimension at least NN. + NN - Integer scalar, number of entries in IRAY(*). + SETS(*) - Character string array, cross-reference set to relate + with elements of IRAY; + dimension at least NSETS. + NSETS - Integer scalar, number of entries in SETS(*) + ISET(*) - Integer array, total number of entries in a subset of + IRAY; dimension at least NSETS. + + OUTPUT + IND - Integer scalar, index of ISTR in IRAY(*). + If ISTR is not in IRAY(*), IND = 0. + If the slash-delimited substring of ISTR is not + in SETS(*), IND = 0. + If the slash-delimited substring of ISTR is in + SETS(N), but the substring before the slash is + not a member of the subset associated with SETS(N), + IND = 0, whether or not the substring is in IRAY(*). + NT - Integer scalar, total occurrence of ISTR in IRAY(*), + or total number of times ISTR occurs in a subset + of IRAY(*). + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109562.md b/2026R1/chemkin_26-r1/articles/pgfId-1109562.md new file mode 100644 index 0000000000..ebd998a705 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109562.md @@ -0,0 +1,31 @@ +# SKPKK + + + + SKPKK SKPKK SKPKK SKPKK SKPKK SKPKK SKPKK + ********************************************** + ************************** + ****** + + SUBROUTINE SKPKK (ISKWRK, KKPHAS, KFIRST, KLAST) + Returns arrays of species pointers for the phases. + + INPUT + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + + OUTPUT + KKPHAS(*) - Integer array, the total species counts for phases; + dimension at least NPHASE, the total phase count. + KFIRST(*) - Integer array, species indices for the first species of + the phases; + dimension at least NPHASE, the total phase count. + KLAST(*) - Integer array, species indices for the last species of + the phases; + dimension at least NPHASE, the total phase count. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109585.md b/2026R1/chemkin_26-r1/articles/pgfId-1109585.md new file mode 100644 index 0000000000..e8e3fb649d --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109585.md @@ -0,0 +1,25 @@ +# SKPNDX + + + + SKPNDX SKPNDX SKPNDX SKPNDX SKPNDX SKPNDX SKPNDX + ********************************************** + ************************** + ****** + + SUBROUTINE SKPNDX (ISKWRK, KELECT, KKION) + Returns plasma indices for the particular reaction mechanism. + + INPUT + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + + OUTPUT + KELECT - Integer scalar, species array index for the electron. + KKION - Integer scalar, total ion count. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109602.md b/2026R1/chemkin_26-r1/articles/pgfId-1109602.md new file mode 100644 index 0000000000..cbb60cf588 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109602.md @@ -0,0 +1,33 @@ +# SKPNT + + + + SKPNT SKPNT SKPNT SKPNT SKPNT SKPNT SKPNT + ********************************************** + ************************** + ****** + + SUBROUTINE SKPNT (LSAVE, LOUT, VERS, PREC, LENI, LENR, LENC, IERR) + Reads from a file information about a Surface Chemkin linkfile, + pointers for the Surface Chemkin Library, and returns lengths + of work arrays. + + INPUT + LSAVE - Integer scalar, input unit for binary data file. + LOUT - Integer scalar, formatted output file unit number. + + OUTPUT + VERS - Real scalar, version number of the Surface Chemkin + linkfile. + PREC - Character string, machine precision of the linkfile. + LENI - Integer scalar, length required for integer work array. + LENR - Integer scalar, length required for real work array. + LENC - Integer scalar, length required for character work array. + KERR - Logical, error flag. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109627.md b/2026R1/chemkin_26-r1/articles/pgfId-1109627.md new file mode 100644 index 0000000000..3e26f9b56f --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109627.md @@ -0,0 +1,41 @@ +# SKRAEX + + + + SKRAEX SKRAEX SKRAEX SKRAEX SKRAEX SKRAEX SKRAEX + ********************************************** + ************************** + ****** + + SUBROUTINE SKRAEX (IR, ISKWRK, RSKWRK, RA) + + Returns the Pre-exponential rate constant + (or sticking coefficient) of the IRth reaction, or changes its + value, depending on the sign of IR. + + INPUT + IR - Integer scalar, reaction index; + IR> 0 gets RA(I) from RSKWRK + IR< 0 puts RA(I) into RSKWRK + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + If IR< 0: + RA - Real scalar, pre-exponential or sticking coefficient for + reaction IR. + cgs units, mole-cm-sec-K for pre-exponential, + none for sticking coefficients + + OUTPUT + If IR> 0: + RA - Real scalar, pre-exponential or sticking coefficient for + reaction IR. + cgs units, mole-cm-sec-K for pre-exponential, + none for sticking coefficients + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109660.md b/2026R1/chemkin_26-r1/articles/pgfId-1109660.md new file mode 100644 index 0000000000..b6bd95ca3e --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109660.md @@ -0,0 +1,43 @@ +# SKRATI + + + + SKRATI SKRATI SKRATI SKRATI SKRATI SKRATI SKRATI + ********************************************** + ************************** + ****** + + SUBROUTINE SKRATI (IR, ROP, ISKWRK, RSKWRK, SDOTI, SITDTI) + Returns rates of production of the species by surface reaction IR. + + INPUT + IR - Integer scalar, reaction index; + ROP(*) - Real array, rates of progress for the surface reactions; + dimension at least IISUR, the total surface reaction + count. + cgs units, moles/(cm**2*sec). + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + SDOTI(*) - Real array, production rates of the species by reaction + IR; + dimension at least KKTOT, the total species count. + cgs units, moles/(cm**2*sec) + for 1,KKGAS, the production rate of gas-phase species, + for KKGAS+1,KKGAS+KKSUR, the production rate of surface + species, + for KKGAS+KKSUR+1,KKTOT, the production rate of bulk + species. + ITDTI(*) - Real array, production rates of the surface phases due to + reaction IR; + dimension at least NPHASE, the total phase count, but + subroutine calculates entries only for site phases. + cgs units, moles/(cm**2*sec) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109695.md b/2026R1/chemkin_26-r1/articles/pgfId-1109695.md new file mode 100644 index 0000000000..fe471ea227 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109695.md @@ -0,0 +1,65 @@ +# SKRATK + + + + SKRATK SKRATK SKRATK SKRATK SKRATK SKRATK SKRATK + ********************************************** + ************************** + ****** + + SUBROUTINE SKRATK (P, T, ACT, SDEN, RKFT, RKRT, ISKWRK, RSKWRK, + SDOT, SITDOT) + Returns production rates for the species and sites, using the + pre-calculated temperature-dependent rate coefficients RKFT, RKRT. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ACT(*) - Real array, activities of the species; + dimension at least KKTOT, the total species count. + The first KKGAS activities are mole fractions, + the next KKSURF activities are site fractions + (species density normalized by the site density; + surface concentration in moles/cm**2 is + ACT(K)*SITE_DENSITY / # sites per species), and + the next KKBULK activities for bulk phase species + should be from 0 to 1, and should sum to 1 for each + phase. + SDEN(*) - Real array, site densities for the site types; + dimension at least NPHASE, the total phase count, + but the subroutine only uses site phase entries, + NFSURF <= N <= NLSURF. + cgs units, moles/cm**2. + RKFT(*) - Real array, forward reaction rates for reactions; + dimension at least IISUR, the total reaction count. + cgs units, depends on the reaction + RKRT(*) - Real array, reverse reaction rates for reactions; + dimension at least IISUR, the total reaction count. + cgs units, depends on the reaction + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + SDOT(*) - Real array, production rates of the species; + dimension at least KKTOT, the total species count. + cgs units, moles/(cm**2*sec) + for 1,KKGAS, the production rate of gas-phase species, + for KKGAS+1,KKGAS+KKSUR, the production rate of surface + species, + for KKGAS+KKSUR+1,KKTOT, the production rate of bulk + species. + SITDOT(*) - Real array, production rates of the surface phases; + dimension at least NPHASE, the total phase count, but + subroutine only calculates entries for site phases. + cgs units, moles/(cm**2*sec) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109752.md b/2026R1/chemkin_26-r1/articles/pgfId-1109752.md new file mode 100644 index 0000000000..fb12443189 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109752.md @@ -0,0 +1,57 @@ +# SKRAT + + + + SKRAT SKRAT SKRAT SKRAT SKRAT SKRAT SKRAT + ********************************************** + ************************** + ****** + + SUBROUTINE SKRAT (P, T, ACT, SDEN, ISKWRK, RSKWRK, SDOT, SITDOT) + Returns production rates for the species and sites. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ACT(*) - Real array, activities of the species; + dimension at least KKTOT, the total species count. + The first KKGAS activities are mole fractions, + the next KKSURF activities are site fractions + (species density normalized by the site density; + surface concentration in moles/cm**2 is + ACT(K)*SITE_DENSITY / # sites per species), and + the next KKBULK activities for bulk phase species + should be from 0 to 1, and should sum to 1 for each + phase. + SDEN(*) - Real array, site densities for the site types; + dimension at least NPHASE, the total phase count, + but the subroutine only uses site phase entries, + NFSURF <= N <= NLSURF. + cgs units, moles/cm**2. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + SDOT(*) - Real array, production rates of the species; + dimension at least KKTOT, the total species count. + cgs units, moles/(cm**2*sec) + for 1,KKGAS, the production rate of gas-phase species, + for KKGAS+1,KKGAS+KKSUR, the production rate of surface + species, + for KKGAS+KKSUR+1,KKTOT, the production rate of bulk + species. + SITDOT(*) - Real array, production rates of the surface phases; + dimension at least NPHASE, the total phase count, but + subroutine only calculates entries for site phases. + cgs units, moles/(cm**2*sec) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109801.md b/2026R1/chemkin_26-r1/articles/pgfId-1109801.md new file mode 100644 index 0000000000..47d2e67c64 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109801.md @@ -0,0 +1,34 @@ +# SKRDEX + + + + SKRDEX SKRDEX SKRDEX SKRDEX SKRDEX SKRDEX SKRDEX + ********************************************** + ************************** + ****** + + SUBROUTINE SKRDEX (IR, ISKWRK, RSKWRK, RD) + + Returns the perturbation factor of the IRth reaction, + or changes its value, depending on the sign of IR. + + INPUT + IR - Integer scalar, reaction index; + IR> 0 gets RD(I) from RSKWRK + IR< 0 puts RD(I) into RSKWRK + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + If IR< 0: + RD - Real scalar, perturbation factor for reaction IR. + + OUTPUT + If IR> 0: + RD - Real scalar, perturbation factor for reaction IR. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109827.md b/2026R1/chemkin_26-r1/articles/pgfId-1109827.md new file mode 100644 index 0000000000..14a0426416 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109827.md @@ -0,0 +1,28 @@ +# SKREADF + + + + SKREADF SKREADF SKREADF SKREADF SKREADF SKREADF SKREADF + ********************************************** + ************************** + ****** + + SUBROUTINE SKREADF (LOUT, LFORM, KERR) + Reads from a formatted file the pointer integers for the + surface CHEMKIN work arrays (See SKSAVEF) + + INPUT + LOUT - Integer scalar, formatted output file unit number. + for diagnostic printing + LFORM - Integer scalar, formatted output file unit number + for reading the pointer integers from a file + OUTPUT + KERR - Logical flag indicating whether an error was + encountered while writing to the file + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109847.md b/2026R1/chemkin_26-r1/articles/pgfId-1109847.md new file mode 100644 index 0000000000..269290f51b --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109847.md @@ -0,0 +1,39 @@ +# SKREEX + + + + SKREEX SKREEX SKREEX SKREEX SKREEX SKREEX SKREEX + ********************************************** + ************************** + ****** + + SUBROUTINE SKREEX (IR, ISKWRK, RSKWRK, RE) + + Returns the activation energy + of the IRth reaction, or changes its + value, depending on the sign of IR. + + INPUT + IR - Integer scalar, reaction index; + IR> 0 gets RE(I) from RSKWRK + IR< 0 puts RE(I) into RSKWRK + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + If IR< 0: + RE - Real scalar, activation energy for + reaction IR. + cgs units, K + + OUTPUT + If IR> 0: + RE - Real scalar, activation energy for + reaction IR. + cgs units, K + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109878.md b/2026R1/chemkin_26-r1/articles/pgfId-1109878.md new file mode 100644 index 0000000000..cc762ac76c --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109878.md @@ -0,0 +1,30 @@ +# SKREWR + + + + SKREWR SKREWR SKREWR SKREWR SKREWR SKREWR SKREWR + ********************************************** + ************************** + ****** + + SUBROUTINE SKREWR (LINSK, LOUT, ISKWRK, RSKWRK, CSKWRK, IFLAG) + Rewrites a new linkfile from the data stored in ISKWRK, + RSKWRK and CSKWRK. + + INPUT + LINSK - Integer scalar, linkfile output file unit number. + LOUT - Integer scalar, formatted output file unit number. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + CSKWRK(*) - Character string workspace array; dimension at least + LENCSK. + OUTPUT + IFLAG - Integer scalar to indicate successful writing of + linkfile; IFLAG>0 is an error type. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109900.md b/2026R1/chemkin_26-r1/articles/pgfId-1109900.md new file mode 100644 index 0000000000..a1bc1fa55f --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109900.md @@ -0,0 +1,47 @@ +# SKRHEX + + + + SKRHEX SKRHEX SKRHEX SKRHEX SKRHEX SKRHEX SKRHEX + ********************************************** + ************************** + ****** + + SUBROUTINE SKRHEX (K, ISKWRK, RSKWRK, A6) + + Returns an array of the sixth thermodynamic polynomial + coefficients for a species, or changes their value, + depending on the sign of K. + + INPUT + K - Integer scalar, species index; + K > 0 gets A6(*) from RSKWRK + K < 0 puts A6(*) into RSKWRK + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + If K < 0: + A6(*) - Integer array, the 6th thermodynamic polynomial + coefficients for species K, over the number of + temperature ranges used in fitting thermodynamic + properties; + dimension at least MAXTP-1, where MAXTP is the + maximum number of temperatures used in fitting the + thermodynamic properties of the species. + + OUTPUT + If K > 0: + A6(*) - Integer array, the 6th thermodynamic polynomial + coefficients for species K, over the number of + temperature ranges used in fitting thermodynamic + properties; + dimension at least MAXTP-1, where MAXTP is the + maximum number of temperatures used in fitting the + thermodynamic properties of the species. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109939.md b/2026R1/chemkin_26-r1/articles/pgfId-1109939.md new file mode 100644 index 0000000000..a896d11909 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109939.md @@ -0,0 +1,49 @@ +# SKROP + + + + SKROP SKROP SKROP SKROP SKROP SKROP SKROP + ********************************************** + ************************** + ****** + + SUBROUTINE SKROP (P, T, ACT, SDEN, ISKWRK, RSKWRK, ROP) + Returns rates of progress for the surface reactions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ACT(*) - Real array, activities of the species; + dimension at least KKTOT, the total species count. + The first KKGAS activities are mole fractions, + the next KKSURF activities are site fractions + (species density normalized by the site density; + surface concentration in moles/cm**2 is + ACT(K)*SITE_DENSITY / # sites per species), and + the next KKBULK activities for bulk phase species + should be from 0 to 1, and should sum to 1 for each + phase. + SDEN(*) - Real array, site densities for the site types; + dimension at least NPHASE, the total phase count, + but the subroutine only uses site phase entries, + NFSURF <= N <= NLSURF. + cgs units, moles/cm**2. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + ROP(*) - Real array, rates of progress for the surface reactions; + dimension at least IISUR, the total surface reaction + count. + cgs units, moles/(cm**2*sec). + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1109980.md b/2026R1/chemkin_26-r1/articles/pgfId-1109980.md new file mode 100644 index 0000000000..1c40729cf0 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1109980.md @@ -0,0 +1,30 @@ +# SKRPAR + + + + SKRPAR SKRPAR SKRPAR SKRPAR SKRPAR SKRPAR SKRPAR + ********************************************** + ************************** + ****** + + SUBROUTINE SKRPAR (ISKWRK, RSKWRK, ENRGI) + + Allows the user to input auxiliary reaction-rate parameters for + special types of reactions. The first parameter is the species (ion) + directed energy for ion-energy-dependent reactions. + + INPUT + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + ENRGI(*) - Real array, species ion energies used in the NIIEDP + reactions; + dimension at least KKGAS, the total gas-phase species + count. + Default value stored in RSKWRK is set to 0.0 in SKINIT. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1110002.md b/2026R1/chemkin_26-r1/articles/pgfId-1110002.md new file mode 100644 index 0000000000..4ecf841beb --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1110002.md @@ -0,0 +1,32 @@ +# SKRP + + + + SKRP SKRP SKRP SKRP SKRP SKRP SKRP + ********************************************** + ************************** + ****** + + SUBROUTINE SKRP (ISKWRK, RSKWRK, RU, RUC, PATM) + Returns universal gas constants and the pressure of one standard + atmosphere. + + INPUT + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + RU - Real scalar, universal gas constant. + cgs units, 8.314510E7 ergs/(mole*K) + RUC - Real scalar, universal gas constant used only in + conjuction with activation energy. + preferred units, RU / 4.184 cal/(mole*K) + PA - Real scalar, pressure of one standard atmosphere. + cgs units, 1.01325E6 dynes/cm**2 + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1110026.md b/2026R1/chemkin_26-r1/articles/pgfId-1110026.md new file mode 100644 index 0000000000..9cf9cea6be --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1110026.md @@ -0,0 +1,28 @@ +# SKSAVE + + + + SKSAVE SKSAVE SKSAVE SKSAVE SKSAVE SKSAVE SKSAVE + ********************************************** + ************************** + ****** + + SUBROUTINE SKSAVE (LOUT, LSAVE, ISKWRK, RSKWRK, CSKWRK) + Writes to a binary file information about a Surface Chemkin + linkfile, pointers for the Surface Chemkin Library, and + Surface Chemkin work arrays. + + INPUT + LOUT - Integer scalar, formatted output file unit number. + LSAVE - Integer scalar, unformatted output file unit number. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + CSKWRK(*) - Character string workspace array; dimension at least + LENCSK. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1110066.md b/2026R1/chemkin_26-r1/articles/pgfId-1110066.md new file mode 100644 index 0000000000..8a1c3252d1 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1110066.md @@ -0,0 +1,30 @@ +# SKSDEN + + + + SKSDEN SKSDEN SKSDEN SKSDEN SKSDEN SKSDEN SKSDEN + ********************************************** + ************************** + ****** + + SUBROUTINE SKSDEN (ISKWRK, RSKWRK, SDEN0) + Returns a real array of standard-state phase densities as given + on input to the interpreter. + + INPUT + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + SDEN0(*) - Real array; standard-state densities for the + site types, AS READ BY THE INTERPRETER; + dimension at least NPHASE, the total phase count, + but the subroutine only uses site phase entries, + NFSURF <= N <= NLSURF. + cgs units, moles/cm**2. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1110088.md b/2026R1/chemkin_26-r1/articles/pgfId-1110088.md new file mode 100644 index 0000000000..5683063bcc --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1110088.md @@ -0,0 +1,31 @@ +# SKSML + + + + SKSML SKSML SKSML SKSML SKSML SKSML SKSML + ********************************************** + ************************** + ****** + + SUBROUTINE SKSML (T, ISKWRK, RSKWRK, SML) + Returns an array of the standard state entropies in molar units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + SML(*) - Real array, standard state entropies for the species; + dimension at least KKTOT, the total species count. + cgs units, ergs/(mole*K) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1110111.md b/2026R1/chemkin_26-r1/articles/pgfId-1110111.md new file mode 100644 index 0000000000..795314e2fc --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1110111.md @@ -0,0 +1,31 @@ +# SKSMS + + + + SKSMS SKSMS SKSMS SKSMS SKSMS SKSMS SKSMS + ********************************************** + ************************** + ****** + + SUBROUTINE SKSMS (T, ISKWRK, RSKWRK, SMS) + Returns an array of the standard state entropies in mass units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + SMS(*) - Real array, standard state entropies for the species; + dimension at least KKTOT, the total species count. + cgs units, ergs/(gm*K) + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1110135.md b/2026R1/chemkin_26-r1/articles/pgfId-1110135.md new file mode 100644 index 0000000000..013b0b749f --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1110135.md @@ -0,0 +1,93 @@ +# SKSNUM + + + + SKSNUM SKSNUM SKSNUM SKSNUM SKSNUM SKSNUM SKSNUM + ********************************************** + ************************** + ****** + + SUBROUTINE SKSNUM (LINE, NEXP, LOUT, KNAM, KKTOT, PNAM, NNPHAS, + KKPHAS, KNUM, NT, NVAL, RVAL, KERR) + This subroutine is used to read a format-free input line of + combined alphanumerical data. It can be used to parse an input + character string, LINE, which may be composed of several blank- + delimited substrings. This subroutine assumes that the first + substring in LINE is the name of a species in the Surface Chemkin + mechanism. If the species name is not unique within the Surface + Chemkin mechanism, the phase of the species should be input + immediately after the species name, delimited by slashes. + Upon return from the subroutine, KNUM returns the index position + of the species within the Surface Chemkin linkfile. If the + species name is not unique, KNUM returns the first position and + NT returns the number of the times the species occurs within the + linkfile. If the species name is not found, or there is a + syntax error, on return, KNUM=0, NT=0, and KERR=.TRUE. + The substrings in LINE following the first are expected to + represent numbers. They are converted into floating point + values and stored in the output vector, RVAL(*). Upon input, + NEXP is equal to the number of values expected to be found. + If NEXP numbers are not found, KERR will be set to .TRUE. on + return from the subroutine. + + Example input: + LINE = GA(S)/BULK1/ 1.2 + NEXP = 1, the number of values expected + LOUT = 6, a logical unit number on which to write + diagnostic messages + KNAM(*) = Array of character species names + KKTOT = Total number of species + PNAM(*) = Array of character phase names + NNPHAS = Total number of phases + KKPHAS(*)= Index array of the number of species in the + phases + Output: + KNUM = The index number of the species which + has the name "GA(S)" and resides in phase + "BULK1" + NT = 1, if there is only one species GA(S) + in phase BULK1 + NVAL = 1, the number of values found in LINE + following the species name + RVAL(1) = 1.200E+00, the substring converted to a + real number + + KERR = .FALSE. + + INPUT + LINE - Character string; length depends on calling routine. + + NEXP - Integer scalar, number of values to be found in LINE. + If NEXP < 0, then IABS(NEXP) values are expected, but + it is not an error condition if less values are found. + LOUT - Integer scalar, formatted output file unit number. + KNAM(*) - Character string array, species names; + dimension at least KKTOT, the total species count. + KKTOT - Integer scalar, the total species count. + PNAM(*) - Character string array, phase names; + dimension at least NNPHAS, the total phase count. + + NNPHAS - Integer scalar, the total phase count. + KKPHAS(*) - Integer array, total species counts for the phases; + dimension at least NNPHAS, the total phase count. + + OUTPUT + KNUM - Integer scalar, species index if the species name appears + in LINE. + NT - Integer scalar, number of times the species name occurs + in the linkfile. + + NVAL - Integer scalar, number of value character strings found + + in LINE. + RVAL(*) - Real array, real values for their character strings in + LINE; + dimension at least NEXP, the number of values expected. + KERR - Logical, syntax or dimensioning error flag; + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1110214.md b/2026R1/chemkin_26-r1/articles/pgfId-1110214.md new file mode 100644 index 0000000000..a606e0fb91 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1110214.md @@ -0,0 +1,32 @@ +# SKSOR + + + + SKSOR SKSOR SKSOR SKSOR SKSOR SKSOR SKSOR + ********************************************** + ************************** + ****** + + SUBROUTINE SKSOR (T, ISKWRK, RSKWRK, SOR) + Returns an array of the nondimensional entropies. + + + INPUT + + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + SOR(*) - Real array, nondimensional entropies for the species; + dimension at least KKTOT, the total species count. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1110236s.md b/2026R1/chemkin_26-r1/articles/pgfId-1110236s.md new file mode 100644 index 0000000000..cf650c13cb --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1110236s.md @@ -0,0 +1,28 @@ +# SKSYME + + + + SKSYME SKSYME SKSYME SKSYME SKSYME SKSYME SKSYME + ********************************************** + ************************** + ****** + + SUBROUTINE SKSYME (ISKWRK, CSKWRK, LOUT, ENAM, KERR) + Returns a character string array of element names. + + INPUT + CSKWRK(*) - Character string workspace array; dimension at least + LENCSK. + LOUT - Integer scalar, formatted output file unit number. + + OUTPUT + ENAM(*) - Character string array, element names; + dimension at least NELEM, the total element count. + KERR - Logical, character length error flag. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1110256.md b/2026R1/chemkin_26-r1/articles/pgfId-1110256.md new file mode 100644 index 0000000000..fa802cc945 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1110256.md @@ -0,0 +1,28 @@ +# SKSYMM + + + + SKSYMM SKSYMM SKSYMM SKSYMM SKSYMM SKSYMM SKSYMM + ********************************************** + ************************** + ****** + + SUBROUTINE SKSYMM (ISKWRK, CSKWRK, LOUT, MATNAM, KERR) + Returns the character string name of a material. + + INPUT + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + CSKWRK(*) - Character string workspace array; dimension at least + LENCSK. + LOUT - Integer scalar, formatted output file unit number. + + OUTPUT + MATNAM - Character string, material name. + KERR - Logical, character length error flag. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1110276.md b/2026R1/chemkin_26-r1/articles/pgfId-1110276.md new file mode 100644 index 0000000000..cb76e94322 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1110276.md @@ -0,0 +1,28 @@ +# SKSYMP + + + + SKSYMP SKSYMP SKSYMP SKSYMP SKSYMP SKSYMP SKSYMP + ********************************************** + ************************** + ****** + + SUBROUTINE SKSYMP (ISKWRK, CSKWRK, LOUT, PNAM, KERR) + Returns a character string array of phase names. + + INPUT + CSKWRK(*) - Character string workspace array; dimension at least + LENCSK. + LOUT - Integer scalar, formatted output file unit number. + + OUTPUT + PNAM(*) - Character string array, phase names; + dimension at least NNPHAS, the total phase count. + KERR - Logical, character length error flag. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1110296.md b/2026R1/chemkin_26-r1/articles/pgfId-1110296.md new file mode 100644 index 0000000000..eb2e5d54e0 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1110296.md @@ -0,0 +1,33 @@ +# SKSYMR + + + + SKSYMR SKSYMR SKSYMR SKSYMR SKSYMR SKSYMR SKSYMR + ********************************************** + ************************** + ****** + + SUBROUTINE SKSYMR (IR, LOUT, ISKWRK, RSKWRK, CSKWRK, LT, RNAM, + KERR) + Returns the character string representation of reaction IR. + + INPUT + IR - Integer scalar, reaction index. + LOUT - Integer scalar, formatted output file unit number. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + CSKWRK(*) - Character string workspace array; dimension at least + LENCSK. + + OUTPUT + LT - Integer scalar, nunber of non-blank characters in the + reaction string. + RNAM - Character string, representation of reaction. + KERR - Logical, character length error flag. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1110321.md b/2026R1/chemkin_26-r1/articles/pgfId-1110321.md new file mode 100644 index 0000000000..b714a5de19 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1110321.md @@ -0,0 +1,28 @@ +# SKSYMS + + + + SKSYMS SKSYMS SKSYMS SKSYMS SKSYMS SKSYMS SKSYMS + ********************************************** + ************************** + ****** + + SUBROUTINE SKSYMS (ISKWRK, CSKWRK, LOUT, KNAM, KERR) + Returns a character array of species names. + + INPUT + CSKWRK(*) - Character string workspace array; dimension at least + LENCSK. + LOUT - Integer scalar, formatted output file unit number. + + OUTPUT + KNAM(*) - Character string array, species names; + dimension at least KKTOT, the total species count. + KERR - Logical, character length error flag. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1110341.md b/2026R1/chemkin_26-r1/articles/pgfId-1110341.md new file mode 100644 index 0000000000..ca63ee3df1 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1110341.md @@ -0,0 +1,31 @@ +# SKUML + + + + SKUML SKUML SKUML SKUML SKUML SKUML SKUML + ********************************************** + ************************** + ****** + + SUBROUTINE SKUML (T, ISKWRK, RSKWRK, UML) + Returns an array of the internal energies in molar units. Does not account for dependence on surface coverage (HFCOV). To include that effect, use subroutine SKCUML. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + UML(*) - Real array, internal energies of the species; + dimension at least KKTOT, the total species count. + cgs units, ergs/mole + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1110364.md b/2026R1/chemkin_26-r1/articles/pgfId-1110364.md new file mode 100644 index 0000000000..a1ab6ba676 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1110364.md @@ -0,0 +1,31 @@ +# SKUMS + + + + SKUMS SKUMS SKUMS SKUMS SKUMS SKUMS SKUMS + ********************************************** + ************************** + ****** + + SUBROUTINE SKUMS (T, ISKWRK, RSKWRK, UMS) + Returns an array of the internal energies in mass units. Does not account for dependence on surface coverage (HFCOV). To include that effect, use subroutine SKCUMS. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + UMS(*) - Real array, internal energies of the species; + dimension at least KKTOT, the total species count. + cgs units, ergs/gm + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1110387.md b/2026R1/chemkin_26-r1/articles/pgfId-1110387.md new file mode 100644 index 0000000000..a00e87e8c8 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1110387.md @@ -0,0 +1,26 @@ +# SKWT + + + + SKWT SKWT SKWT SKWT SKWT SKWT SKWT + ********************************************** + ************************** + ****** + + SUBROUTINE SKWT (ISKWRK, RSKWRK, WT) + Returns the molecular weights of the species. + + INPUT + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + WT(*) - Real array, molecular masses for the species; + dimension at least KKTOT, the total species count. + cgs units, gm/mole + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1110928.md b/2026R1/chemkin_26-r1/articles/pgfId-1110928.md new file mode 100644 index 0000000000..12c4f63926 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1110928.md @@ -0,0 +1,39 @@ +# SKINDX + + + + SKINDX SKINDX SKINDX SKINDX SKINDX SKINDX SKINDX + ********************************************** + ************************** + ****** + + SUBROUTINE SKINDX (ISKWRK, NELM, KKGAS, KKSUR, KKBULK, KKTOT, + NNPHAS, NNSURF, NFSURF, NLSURF, NNBULK, NFBULK, + NLBULK, IISUR) + Returns a group of indices defining the size of the surface + reaction mechanism. + + INPUT + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + + OUTPU + NELM - Integer scalar, total element count. + KKGAS - Integer scalar, total gas-phase species count. + KKSUR - Integer scalar, total surface species count. + KKBULK - Integer scalar, total bulk species count. + KKTOT - Integer scalar, total species count (KKGAS+KKSUR+KKBULK). + NNPHAS - Integer scalar, total phase count (gas + sites + bulks). + NNSURF - Integer scalar, total surface phase count. + NFSURF - Integer scalar, phase index of the first surface phase. + NLSURF - Integer scalar, phase index of the last surface phase. + NNBULK - Integer scalar, total bulk phase count. + NFBULK - Integer scalar, phase index of the first bulk phase. + NLBULK - Integer scalar, phase index of the last bulk phase. + IISUR - Integer scalar, total surface reaction count. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1111005.md b/2026R1/chemkin_26-r1/articles/pgfId-1111005.md new file mode 100644 index 0000000000..f11bd16584 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1111005.md @@ -0,0 +1,40 @@ +# SKIREV + + + + SKIREV SKIREV SKIREV SKIREV SKIREV SKIREV SKIREV + ********************************************** + ************************** + ****** + + SUBROUTINE SKIREV (IR, ISKWRK, RSKWRK, IREV, RAR, RBR, RER) + Returns an integer flag to indicate whether reaction IR has an + explicitly assigned reverse rate constant. It also returns the + reverse Arrhenius expression values for surface reaction IR, + if it was explicitly assigned in the Surface Chemkin interpreter. + If reverse Arrhenius values were not explicitly assigned, + RAR, RBR and RER will be zero. + + INPUT + IR - Integer scalar, surface reaction index. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + IREV - Integer scalar, + 1, reaction IR has explicit reverse rate parameters + 0, no. + RAR - Real scalar, explicit pre-exponential constants + for reaction IR. + cgs units, mole-cm-sec-K + RBR - Real scalar, explicit temperature dependence exponents + for reaction IR. + RER - Real scalar, explicit activation energy for reaction IR. + cgs units, Kelvins + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1111251.md b/2026R1/chemkin_26-r1/articles/pgfId-1111251.md new file mode 100644 index 0000000000..717aac3e49 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1111251.md @@ -0,0 +1,27 @@ +# SKNCON + + + + SKNCON SKNCON SKNCON SKNCON SKNCON SKNCON SKNCON + ********************************************** + ************************** + ****** + + SUBROUTINE SKNCON (ISKWRK, RSKWRK, NCON) + Returns the total number of surface reactions which do not conserve + sites of the phases. + + INPUT + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + + OUTPUT + NCON(*) - Integer array, count of surface reactions which do not + conserve sites in the phases; + dimension at least NPHASE, the total phase count. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1111649.md b/2026R1/chemkin_26-r1/articles/pgfId-1111649.md new file mode 100644 index 0000000000..db71cbcb00 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1111649.md @@ -0,0 +1,28 @@ +# SKSAVEF + + + + SKSAVEF SKSAVEF SKSAVEF SKSAVEF SKSAVEF SKSAVEF SKSAVEF + ********************************************** + ************************** + ****** + + SUBROUTINE SKSAVEF (LOUT, LFORM, KERR) + Writes to a formatted file the pointer integers for the + surface CHEMKIN work arrays (See SKREADF) + + INPUT + LOUT - Integer scalar, formatted output file unit number. + for diagnostic printing + LFORM - Integer scalar, formatted output file unit number + for printing the pointer integers to a file + OUTPUT + KERR - Logical flag indicating whether an error was + encountered while writing to the file + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1117697.md b/2026R1/chemkin_26-r1/articles/pgfId-1117697.md new file mode 100644 index 0000000000..f2b2eb4095 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1117697.md @@ -0,0 +1,12 @@ +# Output from Premixed Flame Model + +Running the Premixed Flame model sample results in this output file: + +**/samples /sample_apps_f77/props/premix.out** + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1117790.md b/2026R1/chemkin_26-r1/articles/pgfId-1117790.md new file mode 100644 index 0000000000..258d3d6c05 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1117790.md @@ -0,0 +1,30 @@ +# Discussion of Sample Problem + +The sample problem handles each of the 13 possible types of values listed +above. The problem requires not only the chem.inp file (this file has been +changed from earlier examples, to facilitate mixture processes), but also pre- +processing of the _Transport_ Properties, which requires the solution of the +Premixed Flame problem that makes up part of this sample. The _Transport_ pre- +processing can be specified by the `-f ` flag on the mechanism pre-processor +command line, or in the Ansys Chemkin user interface with the checkbox for +fitting _Transport_ data. Mixture processes additionally require an +application solution, such as that of the Premixed Flame problem included in +this sample. + +* * * + +**Note:** When using this example, you must (i) ensure FLEXLM_ARCH is set +(see [Recompiling and Linking a User Subroutine](i71111.md "2.1.3. +Recompiling and Linking a User Subroutine") ) and (ii) edit the .inc makefile +so that the CKROOT variable is set to the location of your Ansys Chemkin +installation (see [Compile and Link](pgfId-1085750.md#i60052 "3.1.1.6. +Compile and Link") ). + +* * * + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1117794.md b/2026R1/chemkin_26-r1/articles/pgfId-1117794.md new file mode 100644 index 0000000000..6cd901969e --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1117794.md @@ -0,0 +1,12 @@ +# Output from Gas-phase Kinetics Pre-processor + +The sample run results in a file: + +**/samples /sample_apps_f77/props/chem.out** + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1117943.md b/2026R1/chemkin_26-r1/articles/pgfId-1117943.md new file mode 100644 index 0000000000..02be593ad9 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1117943.md @@ -0,0 +1,13 @@ +# Input to Gas-phase Kinetics Pre-processor + +The input file for the _Gas-phase Kinetics_ pre-processor is in the Ansys +Chemkin installation directories at: + +**/samples /sample_apps_f77/props/chem.inp** + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1118032.md b/2026R1/chemkin_26-r1/articles/pgfId-1118032.md new file mode 100644 index 0000000000..ce0390e5a6 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1118032.md @@ -0,0 +1,13 @@ +# Input to Premixed Flame Model + +The input file for the Premixed Flame model is in the Ansys Chemkin file +directories at: + +**/samples /sample_apps_f77/props/premix.inp** + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1118390.md b/2026R1/chemkin_26-r1/articles/pgfId-1118390.md new file mode 100644 index 0000000000..beeb58a5c2 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1118390.md @@ -0,0 +1,27 @@ +# Output from Chemkin Sample Program (PROPS) + +The 13 different possible requested values listed in [Transport Sample Problem (PROPS)](pgfId-1078341.md "3.4. Transport Sample Problem (PROPS)") each +produce an output file. + +| Value | File | +| ---------------------------------------------- | ----------------- | +| Binary diffusion coefficient | **diffcoef.out** | +| Thermal conductivities | **thermcond.out** | +| Viscosities | **viscos.out** | +| Kinematic viscosities | **kinvisc.out** | +| Constant-pressure specific heats | **conpcp.out** | +| Constant-volume specific heats | **convcp.out** | +| Specific heat ratios | **cpratio.out** | +| Isentropic speed of sound | **asound.out** | +| Mixture-averaged diffusion coefficients | **mixavg.out** | +| Ordinary multicomponent diffusion coefficients | **multidiff.out** | +| Thermal diffusion coefficients | **mixdiff.out** | +| Mixture thermal conductivities | **mixcond.out** | +| Mixture viscosity | **mixvis.out** | + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1119361.md b/2026R1/chemkin_26-r1/articles/pgfId-1119361.md new file mode 100644 index 0000000000..c13ec56f7d --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1119361.md @@ -0,0 +1,13 @@ +# Input to Chemkin Sample Program (PROPS) + +The input file for the _Transport_ sample problem is in the Ansys Chemkin file +directories at: + +**/samples /sample_apps_f77/props/props.inp** + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1126317.md b/2026R1/chemkin_26-r1/articles/pgfId-1126317.md new file mode 100644 index 0000000000..2ef764b883 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1126317.md @@ -0,0 +1,128 @@ +# Surface Kinetics Sample Program (SKSAMPLE) + +**SKSAMPLE** is an example FORTRAN program for directly accessing the _Surface +Kinetics_ Subroutine Library. The problem that we have chosen for the example +involves the time-dependent deposition of a solid film on the surfaces of a +fixed-volume, fixed-temperature container that was initially filled with a gas +mixture. + +One of the first tasks is to derive a system of equations that describes the +process to be simulated. Here, the first equation involves the conservation of +mass in the container: + +| ![](graphics/pgfId-1080135.svg) | **(3 -3)** | +| ------------------------------- | ---------- | + +where ![](graphics/eq90bd8d54-abbd-449c-84e4-a8b2be916355.svg) is time, +![](graphics/eq102cbc4a-ccc2-4b5c-a897-59f688f80015.svg) is the mass of gas- +phase species ![](graphics/eq5b3ec680-ee1f-4d15-bf70-6f765679508e.svg) in the +container, ![](graphics/eq693dd893-1aa0-40bd-afb3-e603eb24c8da.svg) is the +container volume,![](graphics/eq30872893-5952-5117-8225-867420063838.svg) is +the molar production (destruction) rate of gas-phase species by gas-phase +chemical reactions, ![](graphics/eqaa65409a-29b8-4090-a133-8531b7aa9f69.svg) +are the species molecular weights, +![](graphics/eqf5c7a138-d164-435c-bd6e-65d87bd26fee.svg) is the container-wall +surface area, and ![](graphics/eq35347292-3805-0415-0160-109773348712.svg) is +the molar production rate of gas-phase species by surface reactions. After +introducing the gas-phase mass density +![](graphics/eq48500687-4074-7400-6084-505550119112.svg) (where +![](graphics/eqb596b963-f51a-4c9f-a9dc-b0abfedc00f1.svg) is the total gas- +phase mass) and the gas-phase species mass fractions +![](graphics/eq33753323-2102-8177-4314-724765120672.svg), some manipulation +leads to the following equation: + +| ![](graphics/pgfId-1080179.svg) | **(3 -4)** | +| ------------------------------- | ---------- | + +The total mass in the gas phase depends on the production (destruction) of +gas-phase species by surface reaction, as stated by + +| ![](graphics/pgfId-1080184.svg) | **(3 -5)** | +| ------------------------------- | ---------- | + +We rewrite this equation slightly to make +![](graphics/eq27878385-6900-1426-0394-637900994082.svg) a dependent variable +and use the area-to-volume +![](graphics/eq17372311-4896-2333-4000-425140588590.svg) as a parameter: + +| ![](graphics/pgfId-1080195.svg) | **(3 -6)** | +| ------------------------------- | ---------- | + +On the surface, the number of moles of species +![](graphics/eq99f42b89-fd39-44fc-b632-be0490a0943a.svg) is given by + +| ![](graphics/pgfId-1080203.svg) | **(3 -7)** | +| ------------------------------- | ---------- | + +where ![](graphics/eq171e77ce-3478-44da-b3d1-3634f88ea170.svg) is the site +fraction of species ![](graphics/eqe2fca669-ba20-4f73-8947-131870f5e6e1.svg) +on surface site ![](graphics/eq1e9994c6-152e-4395-866b-cd0c05256be9.svg) +(fraction of sites occupied by species +![](graphics/eqa3cb9a36-06b9-429e-960c-3267f34005f1.svg) in phase +![](graphics/eqffea94ed-4b38-467c-8f37-37b88bb61d4b.svg)), +![](graphics/eq92401940-9538-4780-1106-870534929156.svg) is the density of +sites in phase ![](graphics/eqbecd06a5-2268-41e3-96dd-8546fc7e6a90.svg) (in +mole/cm2), and ![](graphics/eq59010999-1591-3899-4556-926796331858.svg) is the +number of sites that species +![](graphics/eq08ea1f7d-6c45-43c8-a76c-9aec9bf6ba1c.svg) occupies. The molar +production (destruction) rate of surface species +![](graphics/eq4a975373-97f9-4952-8da4-a5d222ba188e.svg) by surface reaction +is stated as + +| ![](graphics/pgfId-1080241.svg) | **(3 -8)** | +| ------------------------------- | ---------- | + +In terms of site fractions +![](graphics/eq8d46359c-e88b-4f7a-80a8-39ccbeaf4892.svg), the equation +governing the surface species is given as + +| ![](graphics/pgfId-1080249.svg) | **(3 -9)** | +| ------------------------------- | ---------- | + +where the last term can be dropped if the number of surface sites if fixed. +When surface reactions create or destroy sites, then a conservation equation +is included for the site densities of each phase +![](graphics/eq7bdbc1b5-1b9a-4da3-a72b-d48b75c9cf5f.svg): + +| ![](graphics/i54532.svg) | **(3 -10)** | +| ------------------------ | ----------- | + +However, our sample mechanism conserves sites, so the time derivative in +[Equation 3-10](pgfId-1126317.md#i54532 "(3–10)") is trivially zero. + +The governing system of ordinary differential equations and accompanying +initial conditions form an initial value problem. The equations will be solved +using the software VODE.[Equation 3-1](pgfId-1085459.md#pgfId-1082323 "(3–1)") We find this software to be reliable for the solution of a wide +range of stiff initial-value problems. + +The FORTRAN program _sksample.f_ for the solution of the sample problem is +provided in the Ansys Chemkin user area subdirectory _samples +\sample_apps_f77\sksample_ (PC), _samples +/sample_apps_f77/sksample_ (UNIX). After initializing the +_Gas-phase Kinetics_ Subroutine Library and the _Surface Kinetics_ Subroutine +Library, the program reads the initial nonzero moles from input. It then +repeatedly calls subroutine VODE to obtain the solution at uniform print +intervals. The governing equation formulation is found in SUBROUTINE FUN, +which is called by VODE. + +* * * + +**Note:** When using this example, you must (i) ensure FLEXLM_ARCH is set +(see [Recompiling and Linking a User Subroutine](i71111.md "2.1.3. +Recompiling and Linking a User Subroutine") ) and (ii) edit the .inc makefile +so that the CKROOT variable is set to the location of your Ansys Chemkin +installation (see [Compile and Link](pgfId-1085750.md#i60052 "3.1.1.6. +Compile and Link") ). + +* * * + +The sections below presents the _Gas-phase Kinetics_ Pre-processor input and +output, _Surface Kinetics_ Pre-processor input and output, and the sample +program input and output. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1126583.md b/2026R1/chemkin_26-r1/articles/pgfId-1126583.md new file mode 100644 index 0000000000..4658700269 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1126583.md @@ -0,0 +1,28 @@ +# SKCHRG + + + + SKCHRG SKCHRG SKCHRG SKCHRG SKCHRG SKCHRG SKCHRG + ********************************************** + ************************** + ****** + + SUBROUTINE SKCHRG (ISKWRK, RSKWRK, KCHARG) + Returns an array containing electronic charges of the species. + + INPUT + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + KCHARG(*) - Integer array, electronic charges of the species; + dimension at least KKTOT, the total species count. + KCHARG(K)=-2 indicates that the species K has two excess + electrons. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1126691.md b/2026R1/chemkin_26-r1/articles/pgfId-1126691.md new file mode 100644 index 0000000000..450929e3ad --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1126691.md @@ -0,0 +1,203 @@ +# VODE Summary + +The VODE solver[Equation 3-1](pgfId-1085459.md#pgfId-1082323 "(3–1)") is +reliable for the solution of a wide range of stiff initial-value problems. The +source code for the solver is provided in the Ansys Chemkin subdirectory +**source_public\vode.f** (PC), **source_public/vode.f** (UNIX), which is +extensively commented as to its implementation. + + + + SUBROUTINE DVODE (F, NEQ, Y, T, TOUT, ITOL, RTOL, ATOL, ITASK, + 1 ISTATE, IOPT, RWORK, LRW, IWORK, LIW, JAC, MF, + 2 RPAR, IPAR) + EXTERNAL F, JAC + DOUBLE PRECISION Y, T, TOUT, RTOL, ATOL, RWORK, RPAR + INTEGER NEQ, ITOL, ITASK, ISTATE, IOPT, LRW, IWORK, LIW, + 1 MF, IPAR + DIMENSION Y(*), RTOL(*), ATOL(*), RWORK(LRW), IWORK(LIW), + 1 RPAR(*), IPAR(*) + C----------------------------------------------------------------------- + C DVODE.. Variable-coefficient Ordinary Differential Equation solver, + C with fixed-leading coefficient implementation. + C This version is in double precision. + C + C DVODE solves the initial value problem for stiff or nonstiff + C systems of first order ODEs, + C dy/dt = f(t,y) , or, in component form, + C dy(i)/dt = f(i) = f(i,t,y(1),y(2),...,y(NEQ)) (i = 1,...,NEQ). + C DVODE is a package based on the EPISODE and EPISODEB packages, and + C on the ODEPACK user interface standard, with minor modifications. + C----------------------------------------------------------------------- + C Revision History (YYMMDD) + C 890615 Date Written + C 890922 Added interrupt/restart ability, minor changes throughout. + C 910228 Minor revisions in line format, prologue, etc. + C 920227 Modifications by D. Pang: + C (1) Applied subgennam to get generic intrinsic names. + C (2) Changed intrinsic names to generic in comments. + C (3) Added *DECK lines before each routine. + C 920721 Names of routines and labeled Common blocks changed, so as + C to be unique in combined single/double precision code (ACH). + C 920722 Minor revisions to prologue (ACH). + C 920831 Conversion to double precision done (ACH). + C----------------------------------------------------------------------- + C References.. + C + C 1. P. N. Brown, G. D. Byrne, and A. C. Hindmarsh, "VODE: A Variable + C Coefficient ODE Solver," SIAM J. Sci. Stat. Comput., 10 (1989), + C pp. 1038-1051. Also, LLNL Report UCRL-98412, June 1988. + C 2. G. D. Byrne and A. C. Hindmarsh, "A Polyalgorithm for the + C Numerical Solution of Ordinary Differential Equations," + C ACM Trans. Math. Software, 1 (1975), pp. 71-96. + C 3. A. C. Hindmarsh and G. D. Byrne, "EPISODE: An Effective Package + C for the Integration of Systems of Ordinary Differential + C Equations," LLNL Report UCID-30112, Rev. 1, April 1977. + C 4. G. D. Byrne and A. C. Hindmarsh, "EPISODEB: An Experimental + C Package for the Integration of Systems of Ordinary Differential + C Equations with Banded Jacobians," LLNL Report UCID-30132, April + C 1976. + C 5. A. C. Hindmarsh, "ODEPACK, a Systematized Collection of ODE + C Solvers," in Scientific Computing, R. S. Stepleman et al., eds., + C North-Holland, Amsterdam, 1983, pp. 55-64. + C 6. K. R. Jackson and R. Sacks-Davis, "An Alternative Implementation + C of Variable Step-Size Multistep Formulas for Stiff ODEs," ACM + C Trans. Math. Software, 6 (1980), pp. 295-318. + C----------------------------------------------------------------------- + C Authors.. + C + C Peter N. Brown and Alan C. Hindmarsh + C Computing and Mathematics Research Division, L-316 + C Lawrence Livermore National Laboratory + C Livermore, CA 94550 + C and + C George D. Byrne + C Exxon Research and Engineering Co. + C Clinton Township + C Route 22 East + C Annandale, NJ 08801 + C----------------------------------------------------------------------- + C Summary of usage. + C + C Communication between the user and the DVODE package, for normal + C situations, is summarized here. This summary describes only a subset + C of the full set of options available. See the full description for + C details, including optional communication, nonstandard options, + C and instructions for special situations. See also the example + C problem (with program and output) following this summary. + C + C A. First provide a subroutine of the form.. + C + C SUBROUTINE F (NEQ, T, Y, YDOT, RPAR, IPAR) + C DOUBLE PRECISION T, Y, YDOT, RPAR + C DIMENSION Y(NEQ), YDOT(NEQ) + C + C which supplies the vector function f by loading YDOT(i) with f(i). + C + C B. Next determine (or guess) whether or not the problem is stiff. + C Stiffness occurs when the Jacobian matrix df/dy has an eigenvalue + C whose real part is negative and large in magnitude, compared to the + C reciprocal of the t span of interest. If the problem is nonstiff, + C use a method flag MF = 10. If it is stiff, there are four standard + C choices for MF (21, 22, 24, 25), and DVODE requires the Jacobian + C matrix in some form. In these cases (MF .gt. 0), DVODE will use a + C saved copy of the Jacobian matrix. If this is undesirable because of + C storage limitations, set MF to the corresponding negative value + C (-21, -22, -24, -25). (See full description of MF below.) + C The Jacobian matrix is regarded either as full (MF = 21 or 22), + C or banded (MF = 24 or 25). In the banded case, DVODE requires two + C half-bandwidth parameters ML and MU. These are, respectively, the + C widths of the lower and upper parts of the band, excluding the main + C diagonal. Thus the band consists of the locations (i,j) with + C i-ML .le. j .le. i+MU, and the full bandwidth is ML+MU+1. + C + C C. If the problem is stiff, you are encouraged to supply the Jacobian + C directly (MF = 21 or 24), but if this is not feasible, DVODE will + C compute it internally by difference quotients (MF = 22 or 25). + C If you are supplying the Jacobian, provide a subroutine of the form.. + C + C SUBROUTINE JAC (NEQ, T, Y, ML, MU, PD, NROWPD, RPAR, IPAR) + C DOUBLE PRECISION T, Y, PD, RPAR + C DIMENSION Y(NEQ), PD(NROWPD,NEQ) + C + C which supplies df/dy by loading PD as follows.. + C For a full Jacobian (MF = 21), load PD(i,j) with df(i)/dy(j), + C the partial derivative of f(i) with respect to y(j). (Ignore the + C ML and MU arguments in this case.) + C For a banded Jacobian (MF = 24), load PD(i-j+MU+1,j) with + C df(i)/dy(j), i.e. load the diagonal lines of df/dy into the rows of + C PD from the top down. + C In either case, only nonzero elements need be loaded. + C + C D. Write a main program which calls subroutine DVODE once for + C each point at which answers are desired. This should also provide + C for possible use of logical unit 6 for output of error messages + C by DVODE. On the first call to DVODE, supply arguments as follows.. + C F = Name of subroutine for right-hand side vector f. + C This name must be declared external in calling program. + C NEQ = Number of first order ODE-s. + C Y = Array of initial values, of length NEQ. + C T = The initial value of the independent variable. + C TOUT = First point where output is desired (.ne. T). + C ITOL = 1 or 2 according as ATOL (below) is a scalar or array. + C RTOL = Relative tolerance parameter (scalar). + C ATOL = Absolute tolerance parameter (scalar or array). + C The estimated local error in Y(i) will be controlled so as + C to be roughly less (in magnitude) than + C EWT(i) = RTOL*abs(Y(i)) + ATOL if ITOL = 1, or + C EWT(i) = RTOL*abs(Y(i)) + ATOL(i) if ITOL = 2. + C Thus the local error test passes if, in each component, + C either the absolute error is less than ATOL (or ATOL(i)), + C or the relative error is less than RTOL. + C Use RTOL = 0.0 for pure absolute error control, and + C use ATOL = 0.0 (or ATOL(i) = 0.0) for pure relative error + C control. Caution.. Actual (global) errors may exceed these + C local tolerances, so choose them conservatively. + C ITASK = 1 for normal computation of output values of Y at t = TOUT. + C ISTATE = Integer flag (input and output). Set ISTATE = 1. + C IOPT = 0 to indicate no optional input used. + C RWORK = Real work array of length at least.. + C 20 + 16*NEQ for MF = 10, + C 22 + 9*NEQ + 2*NEQ**2 for MF = 21 or 22, + C 22 + 11*NEQ + (3*ML + 2*MU)*NEQ for MF = 24 or 25. + C LRW = Declared length of RWORK (in user's DIMENSION statement). + C IWORK = Integer work array of length at least.. + C 30 for MF = 10, + C 30 + NEQ for MF = 21, 22, 24, or 25. + C If MF = 24 or 25, input in IWORK(1),IWORK(2) the lower + C and upper half-bandwidths ML,MU. + C LIW = Declared length of IWORK (in user's DIMENSION). + C JAC = Name of subroutine for Jacobian matrix (MF = 21 or 24). + C If used, this name must be declared external in calling + C program. If not used, pass a placeholder name. + C MF = Method flag. Standard values are.. + C 10 for nonstiff (Adams) method, no Jacobian used. + C 21 for stiff (BDF) method, user-supplied full Jacobian. + C 22 for stiff method, internally generated full Jacobian. + C 24 for stiff method, user-supplied banded Jacobian. + C 25 for stiff method, internally generated banded Jacobian. + C RPAR,IPAR = user-defined real and integer arrays passed to F and JAC. + C Note that the main program must declare arrays Y, RWORK, IWORK, + C and possibly ATOL, RPAR, and IPAR. + C + C E. The output from the first call (or any call) is.. + C Y = Array of computed values of y(t) vector. + C T = Corresponding value of independent variable (normally TOUT). + C ISTATE = 2 if DVODE was successful, negative otherwise. + C -1 means excess work done on this call. (Perhaps wrong MF.) + C -2 means excess accuracy requested. (Tolerances too small.) + C -3 means illegal input detected. (See printed message.) + C -4 means repeated error test failures. (Check all input.) + C -5 means repeated convergence failures. (Perhaps bad + C Jacobian supplied or wrong choice of MF or tolerances.) + C -6 means error weight became zero during problem. (Solution + C component i vanished, and ATOL or ATOL(i) = 0.) + C F. To continue the integration after a successful return, simply + C reset TOUT and call DVODE again. No other parameters need be reset. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1127449.md b/2026R1/chemkin_26-r1/articles/pgfId-1127449.md new file mode 100644 index 0000000000..14ac4a3e0e --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1127449.md @@ -0,0 +1,42 @@ +# SKCAMS + + + + SKCAMS SKCAMS SKCAMS SKCAMS SKCAMS SKCAMS SKCAMS + ********************************************** + ************************** + ****** + + SUBROUTINE SKCAMS (T, ACT, ISKWRK, RSKWRK, AMS) + Returns an the standard state Helmholtz free energies in mas units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ACT(*) - Real array, activities of the species; + dimension at least KKTOT, the total species count. + The first KKGAS activities are mole fractions, + the next KKSURF activities are site fractions + (species density normalized by the site density; + surface concentration in moles/cm**2 is + ACT(K)*SITE_DENSITY / # sites per species), and + the next KKBULK activities for bulk phase species + should be from 0 to 1, and should sum to 1 for each + phase. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + AMS(*) - Real array, standard state Helmholtz free energies + for species; + dimension at least KKTOT, the total species count. + cgs units, ergs/gm + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1127551.md b/2026R1/chemkin_26-r1/articles/pgfId-1127551.md new file mode 100644 index 0000000000..082a399fbb --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1127551.md @@ -0,0 +1,43 @@ +# SKCGML + + + + SKCGML SKCGML SKCGML SKCGML SKCGML SKCGML SKCGML + ********************************************** + ************************** + ****** + + SUBROUTINE SKCGML (T, ACT, ISKWRK, RSKWRK, GML) + Returns an array of the standard state Gibbs free energies + in molar units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ACT(*) - Real array, activities of the species; + dimension at least KKTOT, the total species count. + The first KKGAS activities are mole fractions, + the next KKSURF activities are site fractions + (species density normalized by the site density; + surface concentration in moles/cm**2 is + ACT(K)*SITE_DENSITY / # sites per species), and + the next KKBULK activities for bulk phase species + should be from 0 to 1, and should sum to 1 for each + phase. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + GML(*) - Real array, standard state Gibbs free energies + for the species; + dimension KKTOT, the total species count. + cgs units, ergs/mole + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1127569.md b/2026R1/chemkin_26-r1/articles/pgfId-1127569.md new file mode 100644 index 0000000000..38581c1bc7 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1127569.md @@ -0,0 +1,43 @@ +# SKCGMS + + + + SKCGMS SKCGMS SKCGMS SKCGMS SKCGMS SKCGMS SKCGMS + ********************************************** + ************************** + ****** + + SUBROUTINE SKCGMS (T, ACT, ISKWRK, RSKWRK, GMS) + Returns an array of the standard state Gibbs free energies + in mass units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ACT(*) - Real array, activities of the species; + dimension at least KKTOT, the total species count. + The first KKGAS activities are mole fractions, + the next KKSURF activities are site fractions + (species density normalized by the site density; + surface concentration in moles/cm**2 is + ACT(K)*SITE_DENSITY / # sites per species), and + the next KKBULK activities for bulk phase species + should be from 0 to 1, and should sum to 1 for each + phase. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + GMS(*) - Real array, standard state Gibbs free energies + for the species; + dimension at least KKTOT, the total species count. + cgs units, ergs/gm + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1127665.md b/2026R1/chemkin_26-r1/articles/pgfId-1127665.md new file mode 100644 index 0000000000..e6b9343f8d --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1127665.md @@ -0,0 +1,41 @@ +# SKCHML + + + + SKCHML SKCHML SKCHML SKCHML SKCHML SKCHML SKCHML + ********************************************** + ************************** + ****** + + SUBROUTINE SKCHML (T, ACT, ISKWRK, RSKWRK, HML) + Returns an array of the enthalpies in molar units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ACT(*) - Real array, activities of the species; + dimension at least KKTOT, the total species count. + The first KKGAS activities are mole fractions, + the next KKSURF activities are site fractions + (species density normalized by the site density; + surface concentration in moles/cm**2 is + ACT(K)*SITE_DENSITY / # sites per species), and + the next KKBULK activities for bulk phase species + should be from 0 to 1, and should sum to 1 for each + phase. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + HML(*) - Real array, enthalpies for the species; + dimension at least KKTOT, the total species count. + cgs units, ergs/mole + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1127681.md b/2026R1/chemkin_26-r1/articles/pgfId-1127681.md new file mode 100644 index 0000000000..9e5f47272f --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1127681.md @@ -0,0 +1,41 @@ +# SKCHMS + + + + SKCHMS SKCHMS SKCHMS SKCHMS SKCHMS SKCHMS SKCHMS + ********************************************** + ************************** + ****** + + SUBROUTINE SKCHMS (T, ACT, ISKWRK, RSKWRK, HMS) + Returns an array of the enthalpies in mass units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ACT(*) - Real array, activities of the species; + dimension at least KKTOT, the total species count. + The first KKGAS activities are mole fractions, + the next KKSURF activities are site fractions + (species density normalized by the site density; + surface concentration in moles/cm**2 is + ACT(K)*SITE_DENSITY / # sites per species), and + the next KKBULK activities for bulk phase species + should be from 0 to 1, and should sum to 1 for each + phase. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + HMS(*) - Real array, enthalpies for the species; + dimension at least KKTOT, the total species count. + cgs units, ergs/gm + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1127771.md b/2026R1/chemkin_26-r1/articles/pgfId-1127771.md new file mode 100644 index 0000000000..be6f31edc3 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1127771.md @@ -0,0 +1,40 @@ +# SKCHORT + + + + SKCHORT SKCHORT SKCHORT SKCHORT SKCHORT SKCHORT SKCHORT + ********************************************** + ************************** + ****** + + SUBROUTINE SKCHORT (T, ACT, ISKWRK, RSKWRK, HORT) + Returns an array of the nondimensional enthalpies. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ACT(*) - Real array, activities of the species; + dimension at least KKTOT, the total species count. + The first KKGAS activities are mole fractions, + the next KKSURF activities are site fractions + (species density normalized by the site density; + surface concentration in moles/cm**2 is + ACT(K)*SITE_DENSITY / # sites per species), and + the next KKBULK activities for bulk phase species + should be from 0 to 1, and should sum to 1 for each + phase. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + HORT(*) - Real array, nondimensional enthalpies for the species; + dimension at least KKTOT, the total species count. + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1130125.md b/2026R1/chemkin_26-r1/articles/pgfId-1130125.md new file mode 100644 index 0000000000..1eb2cc2da9 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1130125.md @@ -0,0 +1,42 @@ +# SKCAML + + + + SKCAML SKCAML SKCAML SKCAML SKCAML SKCAML SKCAML + ********************************************** + ************************** + ****** + + SUBROUTINE SKCAML (T, ACT, ISKWRK, RSKWRK, AML) + Returns the standard state Helmholtz free energies in molar units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ACT(*) - Real array, activities of the species; + dimension at least KKTOT, the total species count. + The first KKGAS activities are mole fractions, + the next KKSURF activities are site fractions + (species density normalized by the site density; + surface concentration in moles/cm**2 is + ACT(K)*SITE_DENSITY / # sites per species), and + the next KKBULK activities for bulk phase species + should be from 0 to 1, and should sum to 1 for each + phase. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + AML(*) - Real array, standard state Helmholtz free energies + for species; + dimension at least KKTOT, the total species count. + cgs units, ergs/mole + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1130734.md b/2026R1/chemkin_26-r1/articles/pgfId-1130734.md new file mode 100644 index 0000000000..d70d179edf --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1130734.md @@ -0,0 +1,41 @@ +# SKCUML + + + + SKCUML SKCUML SKCUML SKCUML SKCUML SKCUML SKCUML + ********************************************** + ************************** + ****** + + SUBROUTINE SKCUML (T, ACT, ISKWRK, RSKWRK, UML) + Returns an array of the internal energies in molar units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ACT(*) - Real array, activities of the species; + dimension at least KKTOT, the total species count. + The first KKGAS activities are mole fractions, + the next KKSURF activities are site fractions + (species density normalized by the site density; + surface concentration in moles/cm**2 is + ACT(K)*SITE_DENSITY / # sites per species), and + the next KKBULK activities for bulk phase species + should be from 0 to 1, and should sum to 1 for each + phase. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + UML(*) - Real array, internal energies of the species; + dimension at least KKTOT, the total species count. + cgs units, ergs/mole + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/pgfId-1130765.md b/2026R1/chemkin_26-r1/articles/pgfId-1130765.md new file mode 100644 index 0000000000..ec1974ee09 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/pgfId-1130765.md @@ -0,0 +1,41 @@ +# SKCUMS + + + + SKCUMS SKCUMS SKCUMS SKCUMS SKCUMS SKCUMS SKCUMS + ********************************************** + ************************** + ****** + + SUBROUTINE SKCUMS (T, ACT, ISKWRK, RSKWRK, UMS) + Returns an array of the internal energies in mass units. + + INPUT + T(*) - Real array, temperature(s); dimension is determined by + the application program to be the total number of + species temperatures, nominally 1. + cgs units, K + ACT(*) - Real array, activities of the species; + dimension at least KKTOT, the total species count. + The first KKGAS activities are mole fractions, + the next KKSURF activities are site fractions + (species density normalized by the site density; + surface concentration in moles/cm**2 is + ACT(K)*SITE_DENSITY / # sites per species), and + the next KKBULK activities for bulk phase species + should be from 0 to 1, and should sum to 1 for each + phase. + ISKWRK(*) - Integer workspace array; dimension at least LENISK. + RSKWRK(*) - Real workspace array; dimension at least LENRSK. + + OUTPUT + UMS(*) - Real array, internal energies of the species; + dimension at least KKTOT, the total species count. + cgs units, ergs/gm + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/remove-digit-in-toc.py b/2026R1/chemkin_26-r1/articles/remove-digit-in-toc.py new file mode 100644 index 0000000000..e408ee44c4 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/remove-digit-in-toc.py @@ -0,0 +1,13 @@ +import re + +with open('toc.yml', 'r') as file: + lines = file.readlines() + +new_lines = [] +for line in lines: + if "- name:" in line: + line = re.sub(r'(- name:)\s*\d+(\.\d+)*\.\s*', r'\1 ', line) + new_lines.append(line) + +with open('toc.yml', 'w') as file: + file.writelines(new_lines) \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/articles/toc.yml b/2026R1/chemkin_26-r1/articles/toc.yml new file mode 100644 index 0000000000..bb6692e52b --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/toc.yml @@ -0,0 +1,722 @@ +- name: Introduction + href: i13005api_intro.md + items: + - name: Compiler Compatibility + href: i43132.md + items: + - name: Compiler Summary + href: ck_api_sect_compiler_compat.md + - name: Prerequisite Skills + href: pgfId-1021445.md + - name: Overview of Utilities Packages + href: marker-1040891.md + - name: Structure and Use of Gas-phase Kinetics Utilities + href: pgfId-1040829.md + items: + - name: Example- Hydrogen Oxidation + href: marker-1017775.md + - name: Example for a Multi-Temperature Plasma + href: pgfId-1017885.md + - name: Structure and Use of the Surface Kinetics Utilities + href: pgfId-1017373.md + items: + - name: Example of Using the Surface Kinetics Pre-processor + href: pgfId-1020396.md + - name: Structure and Use of the Transport Utilities + href: pgfId-1021250.md +- name: User Supplemental Programming + href: i13005api_user_sup_prog.md + items: + - name: User-programmed Subroutines + href: pgfId-1071662.md + items: + - name: User-programmed Reaction Rate Routines + href: pgfId-1073967.md + - name: User-programmed Subroutines in Reactor Models + href: pgfId-1074407.md + - name: Recompiling and Linking a User Subroutine + href: i71111.md +- name: Writing User Applications + href: i13005api_writing_userapps.md + items: + - name: Basic Requirements of a Chemkin Program + href: pgfId-1102613.md + items: + - name: Requirements for Writing a FORTRAN Program + href: pgfId-1085750.md + - name: Requirements for Writing a C++ Program + href: pgfId-1085808.md + - name: Gas-phase Kinetics Sample Program (CONP) + href: pgfId-1085459.md + items: + - name: Input to Gas-phase Kinetics Pre-processor + href: pgfId-1082370.md + - name: Output from Gas-phase Kinetics Pre-processor + href: pgfId-1082404.md + - name: Input to Chemkin Sample Program (CONP) + href: marker-1082818.md + - name: Output from Chemkin Sample Program (CONP) + href: marker-1096354.md + - name: Surface Kinetics Sample Program (SKSAMPLE) + href: pgfId-1126317.md + items: + - name: Discussion of Sample Problem + href: pgfId-1096620.md + - name: Input to Gas-phase Kinetics Pre-processor + href: pgfId-1080354.md + - name: Output from Gas-phase Kinetics Pre-processor + href: pgfId-1096966.md + - name: Input to Surface Kinetics Pre-processor + href: marker-1126991.md + - name: Output from Surface Kinetics Pre-processor + href: pgfId-1080556.md + - name: Input to Chemkin Sample Program (SKSAMPLE) + href: pgfId-1089398.md + - name: Output from Chemkin Sample Program (SKSAMPLE) + href: pgfId-1081192.md + - name: Transport Sample Problem (PROPS) + href: pgfId-1078341.md + items: + - name: Discussion of Sample Problem + href: pgfId-1117790.md + - name: Input to Gas-phase Kinetics Pre-processor + href: pgfId-1117943.md + - name: Output from Gas-phase Kinetics Pre-processor + href: pgfId-1117794.md + - name: Input to Premixed Flame Model + href: pgfId-1118032.md + - name: Output from Premixed Flame Model + href: pgfId-1117697.md + - name: Input to Chemkin Sample Program (PROPS) + href: pgfId-1119361.md + - name: Output from Chemkin Sample Program (PROPS) + href: pgfId-1118390.md + - name: VODE Summary + href: pgfId-1126691.md +- name: Quick Reference Guide to the Gas-phase Kinetics Subroutine + href: i13005api_quickref_gaskinetics.md + items: + - name: Mnemonics + href: pgfId-1066782.md + - name: Initialization + href: pgfId-1066867.md + - name: Information About Elements + href: pgfId-1066901.md + - name: Information About Species + href: pgfId-1066953.md + - name: Information About Reactions + href: pgfId-1067107.md + - name: Gas Constants and Units + href: pgfId-1067123api.md + - name: Equations of State and Mole-Mass Conversions + href: pgfId-1067294.md + - name: Thermodynamic Properties (Nondimensional) + href: pgfId-1067361.md + - name: Thermodynamic Properties (Mass Units) + href: pgfId-1067446.md + - name: Thermodynamic Properties (Molar Units) + href: pgfId-1067510.md + - name: Mean Thermodynamic Properties (Mass Units) + href: pgfId-1067584.md + - name: Mean Thermodynamic Properties (Molar Units) + href: pgfId-1067658.md + - name: Chemical Production Rates + href: i78942.md + - name: Equilibrium Constants and Rate of Progress Variables + href: pgfId-1068000.md + - name: Utilities + href: pgfId-1068172.md +- name: Quick Reference Guide to the Surface Kinetics Subroutine Library + href: i13005api_refsurfkineticslib.md + items: + - name: Mnemonics + href: pgfId-1071760.md + - name: Initialization + href: pgfId-1071816.md + - name: Information about Elements + href: pgfId-1071835.md + - name: Information about Species + href: pgfId-1071910.md + - name: Information about Phases and Materials + href: pgfId-1071956.md + - name: Information about Surface Reactions + href: pgfId-1072129.md + - name: Gas Constants and Units + href: pgfId-1072147.md + - name: Thermodynamic Properties (Non dimensional) + href: pgfId-1072203.md + - name: Thermodynamic Properties (Mass Units) + href: pgfId-1072258.md + - name: Thermodynamic Properties (Molar Units) + href: pgfId-1072309.md + - name: Chemical Production Rates + href: pgfId-1072364.md + - name: Equilibrium Constants and Rate-of-Progress Variables + href: pgfId-1072392.md + - name: Utilities + href: pgfId-1072442.md +- name: Quick Reference Guide to the Transport Subroutine Library + href: i13005api_quickref_transp_lib.md + items: + - name: Mnemonics + href: pgfId-1062650.md + - name: Initialization and Parameters + href: pgfId-1062725api.md + - name: Viscosity + href: pgfId-1062756.md + - name: Conductivity + href: pgfId-1062795.md + - name: Diffusion Coefficients + href: pgfId-1062833.md + - name: Thermal Diffusion + href: pgfId-1021042.md +- name: Alphabetical Listing of the Gas-phase Kinetics Subroutine + href: i13005api_list_gpk.md + items: + - name: CKABE + href: pgfId-1091838.md + - name: CKABML + href: pgfId-1091864.md + - name: CKABMS + href: pgfId-1091891.md + - name: CKAML + href: pgfId-1091918.md + - name: CKAMS + href: pgfId-1091942.md + - name: CKATHM + href: pgfId-1091966.md + - name: CKATOM + href: pgfId-1092017.md + - name: CKAVG + href: pgfId-1092033.md + - name: CKAWT + href: pgfId-1092053.md + - name: CKBSEC + href: pgfId-1092072.md + - name: CKCDC + href: pgfId-1092087.md + - name: CKCDXP + href: pgfId-1092119.md + - name: CKCDXR + href: pgfId-1092150.md + - name: CKCDYP + href: pgfId-1092181.md + - name: CKCDYR + href: pgfId-1092212.md + - name: CKCHRG + href: pgfId-1092260.md + - name: CKCOMP + href: pgfId-1092297.md + - name: CKCONT + href: pgfId-1092321.md + - name: CKCOPY + href: pgfId-1092346.md + - name: CKCPBL + href: pgfId-1092363.md + - name: CKCPBS + href: pgfId-1092387.md + - name: CKCPML + href: pgfId-1092411.md + - name: CKCPMS + href: pgfId-1092435.md + - name: CKCPOR + href: pgfId-1092459.md + - name: CKCRAY + href: pgfId-1092482.md + - name: CKCTC + href: pgfId-1092524.md + - name: CKCTX + href: pgfId-1098925.md + - name: CKCTXP + href: pgfId-1092554.md + - name: CKCTXR + href: pgfId-1092608.md + - name: CKCTY + href: pgfId-1098949.md + - name: CKCTYP + href: pgfId-1092640.md + - name: CKCTYR + href: pgfId-1092694.md + - name: CKCVBL + href: pgfId-1092727.md + - name: CKCVBS + href: pgfId-1092751.md + - name: CKCVML + href: pgfId-1092775.md + - name: CKCVMS + href: pgfId-1092799.md + - name: CKDHXP + href: pgfId-1092823.md + - name: CKDHYP + href: pgfId-1092850.md + - name: CKDLIM + href: pgfId-1092877.md + - name: CKDONE + href: pgfId-1092894.md + - name: CKDOT + href: pgfId-1092910.md + - name: CKDTAB + href: pgfId-1092938.md + - name: CKEQC + href: pgfId-1092951.md + - name: CKEQXP + href: pgfId-1092980.md + - name: CKEQXR + href: pgfId-1093009.md + - name: CKEQYP + href: pgfId-1093040.md + - name: CKEQYR + href: pgfId-1093070.md + - name: CKFALP + href: pgfId-1093100.md + - name: CKFAL + href: pgfId-1093167.md + - name: CKFRCH + href: pgfId-1093259.md + - name: CKGBML + href: pgfId-1093277.md + - name: CKGBMS + href: pgfId-1093304s.md + - name: CKGML + href: pgfId-1093331.md + - name: CKGMS + href: pgfId-1093355.md + - name: CKHBML + href: pgfId-1093379.md + - name: CKHBMS + href: pgfId-1093403api.md + - name: CKHML + href: pgfId-1093427.md + - name: CKHMS + href: pgfId-1093450.md + - name: CKHORT + href: pgfId-1093473.md + - name: CKHRX + href: pgfId-1093495.md + - name: CKI2CH + href: pgfId-1093517.md + - name: CKIEXC + href: pgfId-1093538.md + - name: CKIFT1 + href: pgfId-1093562.md + - name: CKIJAN + href: pgfId-1093590.md + - name: CKILT + href: pgfId-1093618.md + - name: CKIMOM + href: pgfId-1093646.md + - name: CKINDX + href: pgfId-1093670.md + - name: CKINIT + href: pgfId-1093694.md + - name: CKINU + href: pgfId-1093724.md + - name: CKION + href: pgfId-1093760.md + - name: CKIORD + href: pgfId-1093778.md + - name: CKIPLG + href: pgfId-1093818.md + - name: CKIREV + href: pgfId-1093855.md + - name: CKIRNU + href: pgfId-1093887.md + - name: CKISIG + href: pgfId-1093931.md + - name: CKITDE + href: pgfId-1093964.md + - name: CKITR + href: pgfId-1093987.md + - name: CKIUQ + href: pgfId-1094017.md + - name: CKIVIS + href: pgfId-1094038.md + - name: CKIXSM + href: pgfId-1094066.md + - name: CKKFKR + href: pgfId-1094090.md + - name: CKKFRT + href: pgfId-1094121.md + - name: CKKTFL + href: pgfId-1094148.md + - name: CKKTMP + href: pgfId-1094166.md + - name: CKKUW + href: pgfId-1094184.md + - name: CKLEN + href: pgfId-1098973.md + - name: CKLEN2 + href: pgfId-1094205.md + - name: CKLKUP + href: pgfId-1094265.md + - name: CKLSCH + href: pgfId-1094285.md + - name: CKMMWC + href: pgfId-1094299.md + - name: CKMMWX + href: pgfId-1094321.md + - name: CKMMWY + href: pgfId-1094342.md + - name: CKMXTP + href: pgfId-1094363.md + - name: CKNCF + href: pgfId-1094381.md + - name: CKNCMP + href: pgfId-1094405.md + - name: CKNORM + href: pgfId-1094417.md + - name: CKNPAR + href: pgfId-1094431.md + - name: CKNU + href: pgfId-1094465.md + - name: CKNUF + href: pgfId-1094490.md + - name: CKPC + href: pgfId-1094519.md + - name: CKPHAZ + href: pgfId-1094545.md + - name: CKPNT + href: pgfId-1094566.md + - name: CKPX + href: pgfId-1094591.md + - name: CKPY + href: pgfId-1094618.md + - name: CKQC + href: pgfId-1094645.md + - name: CKQXP + href: pgfId-1094672.md + - name: CKQYP + href: pgfId-1094700.md + - name: CKQYR + href: pgfId-1094728.md + - name: CKR2CH + href: pgfId-1094756.md + - name: CKRAEX + href: pgfId-1094780.md + - name: CKRCXP + href: pgfId-1094805.md + - name: CKRDEX + href: pgfId-1094855.md + - name: CKREADF + href: pgfId-1094880.md + - name: CKREEX + href: pgfId-1094900.md + - name: CKREWR + href: pgfId-1098091.md + - name: CKRHEX + href: pgfId-1094948.md + - name: CKRHOC + href: pgfId-1094974.md + - name: CKRHOX + href: pgfId-1095001.md + - name: CKRHOY + href: pgfId-1095028.md + - name: CKRP + href: pgfId-1095055.md + - name: CKSAVE + href: pgfId-1099000.md + - name: CKSAVEF + href: pgfId-1098212.md + - name: CKSBML + href: pgfId-1095118.md + - name: CKSBMS + href: pgfId-1095145.md + - name: CKSCAL + href: pgfId-1095172.md + - name: CKSLEN + href: pgfId-1095187.md + - name: CKSML + href: pgfId-1095205.md + - name: CKSMS + href: pgfId-1095228.md + - name: CKSNUM + href: pgfId-1095251.md + - name: CKSOR + href: pgfId-1095306.md + - name: CKSUBS + href: pgfId-1095328.md + - name: CKSUM + href: pgfId-1095351.md + - name: CKSYME + href: pgfId-1095361.md + - name: CKSYMR + href: pgfId-1095381.md + - name: CKSYMS + href: pgfId-1095405.md + - name: CKTHB + href: pgfId-1095425.md + - name: CKUBML + href: pgfId-1095449.md + - name: CKUBMS + href: pgfId-1095473.md + - name: CKUML + href: pgfId-1095497.md + - name: CKUMS + href: pgfId-1095520.md + - name: CKWC + href: pgfId-1095543.md + - name: CKWL + href: pgfId-1095570.md + - name: CKWT + href: pgfId-1095597.md + - name: CKWXP + href: pgfId-1095616.md + - name: CKWXR + href: pgfId-1095644.md + - name: CKWYP + href: pgfId-1095672.md + - name: CKWYPK + href: pgfId-1095700.md + - name: CKWYR + href: pgfId-1095734.md + - name: CKXMAX + href: pgfId-1095760.md + - name: CKXMIN + href: pgfId-1095777.md + - name: CKXNUM + href: pgfId-1095794.md + - name: CKXTCP + href: pgfId-1095828.md + - name: CKXTCR + href: pgfId-1095856.md + - name: CKXTND + href: pgfId-1095884.md + - name: CKXTY + href: pgfId-1095899.md + - name: CKYTCP + href: pgfId-1095919.md + - name: CKYTCR + href: pgfId-1095947.md + - name: CKYTX + href: pgfId-1095975.md + - name: PKINDX + href: pgfId-1095995.md +- name: Alphabetical Listing of the Surface Kinetics Subroutine Library + href: i13005api_list_surf_kin.md + items: + - name: SKABE + href: pgfId-1107884.md + - name: SKAML + href: pgfId-1107919.md + - name: SKAMS + href: pgfId-1107943.md + - name: SKATCZ + href: pgfId-1107967.md + - name: SKATHM + href: pgfId-1108011.md + - name: SKCAML + href: pgfId-1130125.md + - name: SKCAMS + href: pgfId-1127449.md + - name: SKCGML + href: pgfId-1127551.md + - name: SKCGMS + href: pgfId-1127569.md + - name: SKCHML + href: pgfId-1127665.md + - name: SKCHMS + href: pgfId-1127681.md + - name: SKCHORT + href: pgfId-1127771.md + - name: SKCHRG + href: pgfId-1126583.md + - name: SKCOMP + href: pgfId-1108105.md + - name: SKCONT + href: pgfId-1108137.md + - name: SKCOV + href: pgfId-1108164.md + - name: SKCPML + href: pgfId-1108181.md + - name: SKCPMS + href: pgfId-1108206.md + - name: SKCPOR + href: pgfId-1108231.md + - name: SKCUML + href: pgfId-1130734.md + - name: SKCUMS + href: pgfId-1130765.md + - name: SKCZTA + href: pgfId-1108255.md + - name: SKDEN + href: pgfId-1108297.md + - name: SKDRDA + href: pgfId-1108345.md + - name: SKDRDC + href: pgfId-1108389.md + - name: SKDSDC + href: pgfId-1108433.md + - name: SKDSDX + href: pgfId-1108501.md + - name: SKEQ + href: pgfId-1108570.md + - name: SKFLGS + href: pgfId-1108613.md + - name: SKGML + href: pgfId-1108663.md + - name: SKGMS + href: pgfId-1108688.md + - name: SKHML + href: pgfId-1108713.md + - name: SKHMS + href: pgfId-1108736.md + - name: SKHORT + href: pgfId-1108759.md + - name: SKIBHM + href: pgfId-1108781.md + - name: SKICOV + href: pgfId-1108802.md + - name: SKIENR + href: pgfId-1108833.md + - name: SKILANG + href: pgfId-1108860.md + - name: SKINIT + href: pgfId-1108932.md + - name: SKINU + href: pgfId-1108962.md + - name: SKIORD + href: pgfId-1108997.md + - name: SKIRNU + href: pgfId-1109074.md + - name: SKISTK + href: pgfId-1109120.md + - name: SKIUQ + href: pgfId-1109140.md + - name: SKIYLD + href: pgfId-1109161.md + - name: SKKFRT + href: pgfId-1109201.md + - name: SKKION + href: pgfId-1109230.md + - name: SKKTFL + href: pgfId-1109252.md + - name: SKKTMP + href: pgfId-1109272.md + - name: SKKUW + href: pgfId-1109291.md + - name: SKLEN + href: pgfId-1109312.md + - name: SKLEN2 + href: pgfId-1109335.md + - name: SKMXTP + href: pgfId-1109376.md + - name: SKNCF + href: pgfId-1109394.md + - name: SKNU + href: pgfId-1109435.md + - name: SKNUF + href: pgfId-1109464.md + - name: SKPCMP + href: pgfId-1109488.md + - name: SKPKK + href: pgfId-1109562.md + - name: SKPNDX + href: pgfId-1109585.md + - name: SKPNT + href: pgfId-1109602.md + - name: SKRAEX + href: pgfId-1109627.md + - name: SKRATI + href: pgfId-1109660.md + - name: SKRATK + href: pgfId-1109695.md + - name: SKRAT + href: pgfId-1109752.md + - name: SKRDEX + href: pgfId-1109801.md + - name: SKREADF + href: pgfId-1109827.md + - name: SKREEX + href: pgfId-1109847.md + - name: SKREWR + href: pgfId-1109878.md + - name: SKRHEX + href: pgfId-1109900.md + - name: SKROP + href: pgfId-1109939.md + - name: SKRPAR + href: pgfId-1109980.md + - name: SKRP + href: pgfId-1110002.md + - name: SKSAVE + href: pgfId-1110026.md + - name: SKSDEN + href: pgfId-1110066.md + - name: SKSML + href: pgfId-1110088.md + - name: SKSMS + href: pgfId-1110111.md + - name: SKSNUM + href: pgfId-1110135.md + - name: SKSOR + href: pgfId-1110214.md + - name: SKSYME + href: pgfId-1110236s.md + - name: SKSYMM + href: pgfId-1110256.md + - name: SKSYMP + href: pgfId-1110276.md + - name: SKSYMR + href: pgfId-1110296.md + - name: SKSYMS + href: pgfId-1110321.md + - name: SKUML + href: pgfId-1110341.md + - name: SKUMS + href: pgfId-1110364.md + - name: SKWT + href: pgfId-1110387.md + - name: SKINDX + href: pgfId-1110928.md + - name: SKIREV + href: pgfId-1111005.md + - name: SKNCON + href: pgfId-1111251.md + - name: SKSAVEF + href: pgfId-1111649.md +- name: Alphabetical Listing of the Transport Subroutine Library + href: i13005api_list_transportlib.md + items: + - name: MCACON + href: pgfId-1070384.md + - name: MCADIF + href: pgfId-1070406api.md + - name: MCATDR + href: pgfId-1070431.md + - name: MCAVIS + href: pgfId-1070456.md + - name: MCCCEX + href: pgfId-1070479.md + - name: MCCDEX + href: pgfId-1070507.md + - name: MCCVEX + href: pgfId-1070541.md + - name: MCINIT + href: pgfId-1070567.md + - name: MCLEN + href: pgfId-1070605.md + - name: MCMCDT + href: pgfId-1070627.md + - name: MCMDIF + href: pgfId-1070665.md + - name: MCPNT + href: pgfId-1070695.md + - name: MCPRAM + href: pgfId-1070721api.md + - name: MCREWR + href: pgfId-1070760.md + - name: MCSAVE + href: pgfId-1070780.md + - name: MCSCON + href: pgfId-1070797.md + - name: MCSDIF + href: pgfId-1070817.md + - name: MCSVIS + href: pgfId-1070844.md + + + + + + + diff --git a/2026R1/chemkin_26-r1/articles/transformed_ck_api_sect_compiler_compat.md b/2026R1/chemkin_26-r1/articles/transformed_ck_api_sect_compiler_compat.md new file mode 100644 index 0000000000..911bedc96a --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_ck_api_sect_compiler_compat.md @@ -0,0 +1,62 @@ +# Compiler Summary + +This section lists the compile-specifics required by the API for Ansys Chemkin +releases built using the required compiler tool set. + +For detailed and current information on Ansys compiler compatibility, see the +"Platform Details" chapter for Linux or Windows in the Installation Guide in +the Ansys, Inc. Installation and Licensing Set. + + * Linux: [Compiler Requirements for Linux Systems in the Ansys, Inc. Installation Guides](../installation/installation_set_cbn_sqj_r5.md "Compiler Requirements for Linux Systems in the Ansys, Inc. Installation Guides") + + * Windows: [Compiler Requirements for Windows Systems in the Ansys, Inc. Installation Guides](../installation/win_compilers.md "Compiler Requirements for Windows Systems in the Ansys, Inc. Installation Guides") + +* * * + +Note: For detailed and current information on Ansys operating platforms, see +the [Platform Support](http://www.ansys.com/Solutions/Solutions-by-Role/IT- +Professionals/Platform-Support) page on the Ansys website. + +* * * + + + +## Compiler Installation + +Follow the instructions from the compiler provider on how to install the +compiler for the Windows or Linux platforms. + + + +## Setting Up Your Compiler Environment + +See your compiler documentation for information on how to set up your +environment for Linux or Windows. + + + +## Testing Your Program + +To test the success of your installation, follow these steps: + + 1. Open the very small test program to compile and link, named helloTest_Intel_Composer.zip. It is located in the utilities folder of the Chemkin installation. + + 2. Copy this .zip file to a Windows system and extract it to create a helloTest sub-directory. + + 3. For the Linux platform, copy the helloTest sub-directory to your Linux system. + + 4. Set up your compiler environment. + + 5. Follow the directions in the readme.txt file to use the make utility to compile and link the test programs. The test programs should compile and run as described in the readme.txt file. + +[ « 1.1. Compiler Compatibility](i43132.md) + + [1.2. Prerequisite Skills » ](pgfId-1021445.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2025 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:37-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_i13005api_intro.md b/2026R1/chemkin_26-r1/articles/transformed_i13005api_intro.md new file mode 100644 index 0000000000..6e126b85f7 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_i13005api_intro.md @@ -0,0 +1,80 @@ +# Chapter 1: Introduction + +Advanced users of Ansys Chemkin may want to write their own custom Chemkin +program, or they may want to modify or supplement the functionality of +existing Chemkin application programs. This manual provides guidance for both +options. The API manual contains detailed programming-interface information +for accessing Chemkin's subroutine libraries for gas-phase kinetics, surface- +kinetics, thermodynamic-property, and transport-property utilities. Explicit +instructions are also given for modifying user-routine templates to customize +existing Chemkin reactor-model programs. The Chemkin subroutine libraries may +be accessed either from user-modified subroutines called by Chemkin pre- +packaged Reactor Models, or from entirely user-written application programs. +User application programs may be written in C, C++, or FORTRAN computer +languages. + +* * * + +Note: In each chapter where the definition and argument list of each routine +is described, the FORTRAN interface is shown with the additional subroutine or +function appendix or additional arguments required by the C++ interface +enclosed in { }. For example: + + + + SUBROUTINE CKCOMP{_C} ({N,NARRAY, } IST, IRAY, II, I) + + has FORTRAN interface and C++ interface + SUBROUTINE CKCOMP (IST, IRAY, II, I) SUBROUTINE CKCOMP_C (N,NARRAY, IST, IRAY, II, + I) + + +* * * + +All Ansys Chemkin user subroutines are currently in FORTRAN. For all +Chemkin/API programmers, access to a supported FORTRAN compiler and basic +knowledge of FORTRAN linking procedures are required. For C/C++ programmers, +access to a supported C or C++ compiler is also required. Details of these +requirements are discussed in each chapter of this manual. + +The remainder of [Introduction](i13005api_intro.md "Chapter 1: +Introduction") contains an overview of the structure of a typical Ansys +Chemkin-based program and the interactions between different utility +components in a Chemkin application program. [User Supplemental +Programming](i13005api_user_sup_prog.md "User Supplemental Programming") +provides detailed instructions for modifying user-routines to supplement the +behavior of Chemkin Reactor Models. [Writing User +Applications](i13005api_writing_userapps.md "Writing User Applications") +provides instructions on how to write an application program from scratch, +which uses calls to the various Chemkin subroutine libraries, including +several complete example programs. [Quick Reference Guide to the Gas-phase +Kinetics Subroutine Library](i13005api_quickref_gaskinetics.md "Quick +Reference Guide to the Gas-phase Kinetics Subroutine Library") , [Quick +Reference Guide to the Surface Kinetics Subroutine +Library](i13005api_refsurfkineticslib.md "Quick Reference Guide to the +Surface Kinetics Subroutine Library") , and [Quick Reference Guide to the +Transport Subroutine Library](i13005api_quickref_transp_lib.md "Quick +Reference Guide to the Transport Subroutine Library") contain quick-reference +lists of the available subroutines in the three subroutine libraries for gas- +phase kinetics, surface kinetics, and transport-properties. Finally, +[Alphabetical Listing of the Gas-phase Kinetics Subroutine +Library](i13005api_list_gpk.md "Alphabetical Listing of the Gas-phase +Kinetics Subroutine Library") , [Alphabetical Listing of the Surface Kinetics +Subroutine Library](i13005api_list_surf_kin.md "Alphabetical Listing of the +Surface Kinetics Subroutine Library") , and [Alphabetical Listing of the +Transport Subroutine Library](i13005api_list_transportlib.md "Alphabetical +Listing of the Transport Subroutine Library") contain alphabetical listings +and more detailed descriptions of call lists for all of the subroutines in the +three subroutine libraries. + +[ « Chemkin Application Programming Interface Manual](chemkin_api.md) + + [1.1. Compiler Compatibility » ](i43132.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:37-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_i13005api_list_gpk.md b/2026R1/chemkin_26-r1/articles/transformed_i13005api_list_gpk.md new file mode 100644 index 0000000000..f0d944f23a --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_i13005api_list_gpk.md @@ -0,0 +1,34 @@ +# Chapter 7: Alphabetical Listing of the Gas-phase Kinetics Subroutine +Library + +Each subroutine in the Gas-phase Kinetics Subroutine Library is described in +this chapter, together with a detailed description of the variables in the +call lists. For all arrays, information is given on the required dimensioning +in the calling program. For all variables having units, the cgs units are +stated. + +In most cases the subroutines are backwards compatible with the original +version of Chemkin. However, there are some cases where either the +functionality is different or the call list has changed, but we have kept the +same subroutine name. + +* * * + +Note: All routines for which the call list or functionality may have changed +from the original version of Chemkin are identified by an asterisk. +Subroutines whose call lists have changed since later versions, known as +Chemkin II, are indicated by a double asterisk. + +* * * + +[ « 6.6. Thermal Diffusion](pgfId-1021042.md) + + [7.1. CKABE » ](pgfId-1091838.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:41-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_i13005api_list_surf_kin.md b/2026R1/chemkin_26-r1/articles/transformed_i13005api_list_surf_kin.md new file mode 100644 index 0000000000..25b9d989d6 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_i13005api_list_surf_kin.md @@ -0,0 +1,19 @@ +# Chapter 8: Alphabetical Listing of the Surface Kinetics Subroutine Library + +Each subroutine in the Surface Kinetics Subroutine Library is described in +this chapter, together with a detailed description of the variables in the +call lists. For all arrays, information is given on the required dimensioning +in the calling program. For all variables having units, the cgs units are +stated. + +[ « 7.159. PKINDX](pgfId-1095995.md) + + [8.1. SKABE » ](pgfId-1107884.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:42-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_i13005api_list_transportlib.md b/2026R1/chemkin_26-r1/articles/transformed_i13005api_list_transportlib.md new file mode 100644 index 0000000000..8de016963d --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_i13005api_list_transportlib.md @@ -0,0 +1,17 @@ +# Chapter 9: Alphabetical Listing of the Transport Subroutine Library + +The following pages list detailed descriptions for the user interface to each +of the package's seventeen user-callable subroutines. They are listed in +alphabetical order. + +[ « 8.90. SKWT](pgfId-1110387.md) + + [9.1. MCACON » ](pgfId-1070384.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:42-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_i13005api_quickref_gaskinetics.md b/2026R1/chemkin_26-r1/articles/transformed_i13005api_quickref_gaskinetics.md new file mode 100644 index 0000000000..384067e58b --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_i13005api_quickref_gaskinetics.md @@ -0,0 +1,24 @@ +# Chapter 4: Quick Reference Guide to the Gas-phase Kinetics Subroutine +Library + +This chapter is arranged by topical area to provide a quick reference to each +of the Gas-phase Kinetics Library Subroutines. In addition to the subroutine +call list itself, the purpose of the subroutine is briefly described. Where +appropriate, the description refers to an equation number in [Chemkin Theory +Manual](../chemkin_th/chemkin_th.md "Chemkin Theory Manual") . Detailed +descriptions of the subroutines are included alphabetically in [Alphabetical +Listing of the Gas-phase Kinetics Subroutine Library](i13005api_list_gpk.md +"Chapter 7: Alphabetical Listing of the Gas-phase Kinetics Subroutine +Library") . + +[ « 3.5. VODE Summary](pgfId-1126691.md) + + [4.1. Mnemonics » ](pgfId-1066782.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:40-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_i13005api_quickref_transp_lib.md b/2026R1/chemkin_26-r1/articles/transformed_i13005api_quickref_transp_lib.md new file mode 100644 index 0000000000..8e14758603 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_i13005api_quickref_transp_lib.md @@ -0,0 +1,19 @@ +# Chapter 6: Quick Reference Guide to the Transport Subroutine Library + +Users creating their own Ansys Chemkin Applications may need to access the +Transport Subroutine Library directly to calculate transport properties. This +chapter is arranged by topical area to provide a quick reference to each of +the Transport subroutines. In addition to the subroutine call list itself, the +purpose of the subroutine is briefly described. + +[ « 5.13. Utilities](pgfId-1072442.md) + + [6.1. Mnemonics » ](pgfId-1062650.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:40-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_i13005api_refsurfkineticslib.md b/2026R1/chemkin_26-r1/articles/transformed_i13005api_refsurfkineticslib.md new file mode 100644 index 0000000000..8a83ef198e --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_i13005api_refsurfkineticslib.md @@ -0,0 +1,18 @@ +# Chapter 5: Quick Reference Guide to the Surface Kinetics Subroutine Library + +This chapter is arranged by topical area to provide a quick reference to each +subroutine of the Surface Kinetics Subroutine Library. In addition to the +subroutine call list itself, the purpose of the subroutine is briefly +described. + +[ « 4.15. Utilities](pgfId-1068172.md) + + [5.1. Mnemonics » ](pgfId-1071760.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:40-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_i13005api_user_sup_prog.md b/2026R1/chemkin_26-r1/articles/transformed_i13005api_user_sup_prog.md new file mode 100644 index 0000000000..dfefc69771 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_i13005api_user_sup_prog.md @@ -0,0 +1,31 @@ +# Chapter 2: User Supplemental Programming + +With many of the Ansys Chemkin pre-packaged Reactor Models, you have some +flexibility in modifying the behavior of the underlying programs through +supplemental programming. Many of the Reactor Models contain user-subroutine +options, which allow users to insert their own arbitrary formulations or sub- +models for describing heat transfer, inlet attributes, or time- or distance- +dependent problem constraints, such as pressure, volume, or temperature. This +chapter describes the use of this option, with particular attention to the +mechanics of recompiling the user program. + +* * * + +Note: For network-license installs, users who wish to take advantage of user +programming should be sure to have a local installation of Ansys Chemkin, so +that changes do not affect other users on the system. Please see your system +administrator for assistance in setting up a local install. + +* * * + +[ « 1.6. Structure and Use of the Transport Utilities](pgfId-1021250.md) + + [2.1. User-programmed Subroutines » ](pgfId-1071662.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:37-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_i13005api_writing_userapps.md b/2026R1/chemkin_26-r1/articles/transformed_i13005api_writing_userapps.md new file mode 100644 index 0000000000..c32d7b1569 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_i13005api_writing_userapps.md @@ -0,0 +1,21 @@ +# Chapter 3: Writing User Applications + +This chapter discusses the following topics: + + * [3.1. Basic Requirements of a Chemkin Program](pgfId-1102613.md "3.1. Basic Requirements of a Chemkin Program") + * [3.2. Gas-phase Kinetics Sample Program (CONP)](pgfId-1085459.md "3.2. Gas-phase Kinetics Sample Program \(CONP\)") + * [3.3. Surface Kinetics Sample Program (SKSAMPLE)](pgfId-1126317.md "3.3. Surface Kinetics Sample Program \(SKSAMPLE\)") + * [3.4. Transport Sample Problem (PROPS)](pgfId-1078341.md "3.4. Transport Sample Problem \(PROPS\)") + * [3.5. VODE Summary](pgfId-1126691.md "3.5. VODE Summary") + +[ « 2.1.3. Recompiling and Linking a User Subroutine](i71111.md) + + [3.1. Basic Requirements of a Chemkin Program » ](pgfId-1102613.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:38-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_i43132.md b/2026R1/chemkin_26-r1/articles/transformed_i43132.md new file mode 100644 index 0000000000..d34663a810 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_i43132.md @@ -0,0 +1,34 @@ +# Compiler Compatibility + +There are many versions of FORTRAN and C or C++ compilers available for each +computer platform, especially for Linux. These compilers and linkers have many +compile, optimization, and linking options. There are also differences in the +runtime library functions associated with different versions of FORTRAN and +C/C++ packages. Here, we document which versions of FORTRAN and C/C++ are +known to work with our libraries. In the Ansys Chemkin installations, we +provide sample code and a make-file system. These files demonstrate the +compilation and linking of user-written programs and routines that involve +calls to the Chemkin libraries. The compile and link flags and system +libraries used in the make files have been verified with the supported +compilers and corresponding platforms, as indicated at our website. + +Due to these language, library, and system complexities, we cannot guarantee +that every module written in any version of FORTRAN or C/C++ will be linkable +with our libraries. We especially caution that FORTRAN-90/95 modules using +those language extensions may require system libraries that are not compatible +with the Ansys Chemkin libraries. Since the combination of operating system, +compilers, and third-party packages is often unique to your computing +environment, our ability to assist you in troubleshooting these combinations +will be limited. + +[ « Chapter 1: Introduction](i13005api_intro.md) + + [1.1.1. Compiler Summary » ](ck_api_sect_compiler_compat.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:37-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_i71111.md b/2026R1/chemkin_26-r1/articles/transformed_i71111.md new file mode 100644 index 0000000000..eca8718f24 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_i71111.md @@ -0,0 +1,125 @@ +# Recompiling and Linking a User Subroutine + +* * * + +Note: Before starting to recompile or link, you must set up your compile +environment. For more information on the compiler compatibility with Ansys +Chemkin libraries, see [Compiler Compatibility](i43132.md "1.1. Compiler +Compatibility"). + +* * * + +Incorporating customized user subroutines into Ansys Chemkin shared objects +requires the following basic steps, each of which are described in more detail +below: + + 1. On Windows platforms, set the environment variable `FLEXLM_ARCH` to:`win64`. + + 2. Modify the user routine for the option of interest. + + 3. Compile and update the user routine's static object-archive library. + + 4. Link the user routine library into the target run-time shared-object library. + +As an example, the following steps will incorporate a customized rate routine +in cklib_user_routines.f, and/or a modified `FUNCTION PRQFUN` in +premix_user_routines.f for the Premixed Laminar Flame Models, by recompiling +the modified user routines and updating the object archive library required by +the application program: + + 1. On Windows systems, set the FLEXLM_ARCH environment variable. + + 2. Locate the user routines' archive library file: + +For Windows/PC, this library is located at \lib\user_routines.lib. + +For UNIX, this library is located at /lib/user_routines.a. + + 3. Back up the library file; for example, rename the existing user_routines.lib file (e.g. as installed_user_routines.lib), so that it does not get overwritten. + + 4. Using the makefile available in the user_routines directory, the following will compile the changes made to the user routine files and create a new user_routines.lib. The command must be typed in an Intel FORTRAN command window (PC) or in a UNIX shell with the Intel FORTRAN environment, after using the `cd` command to reach the user_routines directory: + +For Windows/PC, use: + +`nmake -i -f user_routines_pc.mak` + +For UNIX, use: + +`make -i -f user_routines_unix.mak` + +* * * + +Note: If you copy instead of rename the original library, you will have to +also explicitly delete the original file from the lib directory before `make` +will build a new version. + +* * * + + 5. On Windows platforms, set the environment variable `FLEXLM_ARCH` to: `win64`. + + 6. You must rebuild the target executable's shared-object library, thus linking the updated user routines' library. The shared-object libraries are located in the bin directory (for example, PC: %CHEMKIN_BIN% ; UNIX: $CHEMKIN_BIN). In this example, you create the shared-object library associated with the `PRQFUN` routine in [Table 2.1: Keyword and FORTRAN Code Relationships](pgfId-1074407.md#i77953 "Table 2.1: Keyword and FORTRAN Code Relationships"), to incorporate the modified routines cited in the previous step: + +For Windows/PC, the shared-object library consists of three files, +premixdll.dll, premixdll.exp, and premixdll.lib. + +For UNIX platforms, the corresponding file is libpremix.so (for LINUX). + + 7. Back up the shared-object library for the executable that you want to build. For example, rename the existing premixdll.* files (for example, as installed_premixdll.dll), so that they do not get overwritten. + +* * * + +Note: If you copy instead of rename the original library, you will have to +also explicitly delete the original file from the bin directory before `make` +will build a new version. + +* * * + + 8. Change directories to the drivers_cpp directory: + +For Windows/PC, use: + +`cd ..\drivers_cpp` + +For UNIX, use: + +`cd ../drivers_cpp` + + 9. For the Reactor Model you are targeting, make a new shared-object library using the makefile located in the drivers_cpp directory: + +For Windows/PC, use: + +`nmake -i -f drivers_cpp_pc.mak ..\bin\premixdll.dll` + +which also creates a new premixdll.exp and premixdll.lib. + +For UNIX, use: + +`make -i -f drivers_cpp_unix.mak ../bin/libpremix.so` + +Now you can launch the Ansys Chemkin interface and process your input files as +usual with the modified run-time shared-object library for the associated +Reactor Models (in this case the Premixed Burner-stabilized Flame and the +Premixed Flame-speed Calculator). Remember to restore the backed-up shared- +object library when you want to return to the as-installed functionality. + +* * * + +Note: There are some features in the Reactor Models and Ansys Chemkin +utilities that will be incompatible with the global replacement of species +rates of production, such as sensitivity analysis and rate-of-production +analysis. Such features will return zero values when user rate-routine +programming is encountered. + +* * * + +[ « 2.1.2. User-programmed Subroutines in Reactor Models](pgfId-1074407.md) + + [Chapter 3: Writing User Applications » ](i13005api_writing_userapps.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:37-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_i78942.md b/2026R1/chemkin_26-r1/articles/transformed_i78942.md new file mode 100644 index 0000000000..d9f39f4fe8 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_i78942.md @@ -0,0 +1,49 @@ +# Chemical Production Rates + +Table 4.12: Chemical Production Rates Subroutines[a] + +Subroutine | Description +---|--- +`SUBROUTINE CKCDC (T, C, ICKWRK, RCKWRK, CDOT, DDOT)` | Returns the molar creation and destruction rates of the species given temperature(s) and molar concentrations; see [Equation 3-51](../chemkin_th/i11616.md#i39748 "Equation 3–51") . +`SUBROUTINE CKDOT (RKF, RKR, ICKWRK, RCKWRK, CDOT, DDOT)` | Returns the molar creation and destruction rates of the species given reactions' rates of progress. +`SUBROUTINE CKCDXP (P, T, X, ICKWRK, RCKWRK, CDOT, DDOT)` | Returns the molar creation and destruction rates of the species given pressure, temperature(s) and mole fractions; see [Equation 3-51](../chemkin_th/i11616.md#i39748 "Equation 3–51") . +`SUBROUTINE CKCDXR (RHO, T, X, ICKWRK, RCKWRK, CDOT, DDOT)` | Returns the molar creation and destruction rates of the species given mass density, temperature(s) and mole fractions; see [Equation 3-51](../chemkin_th/i11616.md#i39748 "Equation 3–51") . +`SUBROUTINE CKCDYP (P, T, Y, ICKWRK, RCKWRK, CDOT, DDOT)` | Returns the molar creation and destruction rates of the species given pressure, temperature(s) and mass fractions; see [Equation 3-51](../chemkin_th/i11616.md#i39748 "Equation 3–51") . +`SUBROUTINE CKCDYR (RHO, T, Y, ICKWRK, RCKWRK, CDOT, DDOT)` | Returns the molar creation and destruction rates of the species given mass density, temperature(s) and mass fractions; see [Equation 3-51](../chemkin_th/i11616.md#i39748 "Equation 3–51") . +`SUBROUTINE CKCONT (K, Q, ICKWRK, RCKWRK, CIK)` | Returns the contributions of the reactions to the molar production rate of a species; see [Equation 3-2](../chemkin_th/pgfId-1075229.md#i12274 "Equation 3–2") and [Equation 3-4](../chemkin_th/pgfId-1075229.md#i91749 "Equation 3–4") . +`SUBROUTINE CKCTC (T, C, ICKWRK, RCKWRK, CDOT, TAU)` | Returns the molar creation rates and characteristic destruction times of the species given temperature(s) and molar concentrations; see [Equation 3-54](../chemkin_th/i11616.md#i79011 "Equation 3–54") and [Equation 3-56](../chemkin_th/i11616.md#i33517 "Equation 3–56") . +`SUBROUTINE CKCTXP (P, T, X, ICKWRK, RCKWRK, CDOT, TAU)` | Returns the molar creation rates and characteristic destruction times of the species given pressure, temperature(s) and mole fractions; see [Equation 3-54](../chemkin_th/i11616.md#i79011 "Equation 3–54") and [Equation 3-56](../chemkin_th/i11616.md#i33517 "Equation 3–56") . +`SUBROUTINE CKCTXR (RHO, T, X, ICKWRK, RCKWRK, CDOT, TAU)` | Returns the molar creation rates and characteristic destruction times of the species given mass density, temperature(s) and mole fractions; see [Equation 3-54](../chemkin_th/i11616.md#i79011 "Equation 3–54") and [Equation 3-56](../chemkin_th/i11616.md#i33517 "Equation 3–56") . +`SUBROUTINE CKCTYP (P, T, Y, ICKWRK, RCKWRK, CDOT, TAU)` | Returns the molar creation rates and characteristic destruction times of the species given pressure, temperature(s) and mass fractions; see [Equation 3-54](../chemkin_th/i11616.md#i79011 "Equation 3–54") and [Equation 3-56](../chemkin_th/i11616.md#i33517 "Equation 3–56") . +`SUBROUTINE CKCTYR (RHO, T, Y, ICKWRK, RCKWRK, CDOT, TAU)` | Returns the molar creation rates and characteristic destruction times of the species given mass density, temperature(s) and mass fractions; see [Equation 3-54](../chemkin_th/i11616.md#i79011 "Equation 3–54") and [Equation 3-56](../chemkin_th/i11616.md#i33517 "Equation 3–56") . +`SUBROUTINE CKDHXP (P, T, X, ICKWRK, RCKWRK, HDOT)` | Returns the heat release rate of the mixture given pressure, temperature(s) and mole fractions. +`SUBROUTINE CKDHYP (P, T, Y, ICKWRK, RCKWRK, HDOT)` | Returns the heat release rate of the mixture given pressure, temperature(s) and mass fractions. +`SUBROUTINE CKKFKR (P, T, X, ICKWRK, RCKWRK, FWDK, REVK)` | Returns the forward and reverse reaction rates for reactions given pressure, temperature(s) and mole fractions. +`SUBROUTINE CKKFRT (P, T, ICKWRK, RCKWRK, RKFT, RKRT)` | Returns the forward and reverse reaction rates for reactions given pressure and temperature(s). This subroutine returns only the temperature-dependent part of the forward and reverse rate constants. The pressure is included in the interface so that general pressure dependence using the logarithmic interpolation is accounted for. +`SUBROUTINE CKRCXP (P, T, X, ICKWRK, RCKWRK, RCFT, RCRT)` | Returns the forward and reverse rate constants for all reactions given pressure, temperature and mole fractions; see [Equation 3-4](../chemkin_th/pgfId-1075229.md#i91749 "Equation 3–4") and [Equation 3-19](../chemkin_th/pgfId-1062725.md#i73167 "Equation 3–19") . Note this subroutine will calculate a value for the reverse rate constant irrespective of whether the reaction was deemed reversible in the Pre-processor file. Also note that the concentration of third bodies for third body reactions is included in the returned rate constant. The units for the rate constant will depend on the number of reactants. +`SUBROUTINE CKRDEX (I, RCKWRK, RD)*` | Get/put the perturbation factor of the i th reaction +`SUBROUTINE CKWC (T, C, ICKWRK, RCKWRK, WDOT)` | Returns the molar production rates of the species given temperature(s) and molar concentrations; see [Equation 3-2](../chemkin_th/pgfId-1075229.md#i12274 "Equation 3–2") . +`SUBROUTINE CKWXP (P, T, X, ICKWRK, RCKWRK, WDOT)` | Returns the molar production rates of the species given pressure, temperature(s) and mole fractions; see [Equation 3-2](../chemkin_th/pgfId-1075229.md#i12274 "Equation 3–2") . +`SUBROUTINE CKWXR (RHO, T, X, ICKWRK, RCKWRK, WDOT)` | Returns the molar production rates of the species given mass density, temperature(s) and mole fractions; see [Equation 3-2](../chemkin_th/pgfId-1075229.md#i12274 "Equation 3–2") . +`SUBROUTINE CKWYP (P, T, Y, ICKWRK, RCKWRK, WDOT)` | Returns the molar production rates of the species given pressure, temperature(s) and mass fractions; see [Equation 3-2](../chemkin_th/pgfId-1075229.md#i12274 "Equation 3–2") . +`SUBROUTINE CKWYPK (P, T, Y, RKFT, RKRT, ICKWRK, RCKWRK, WDOT)` | Returns the molar production rates of the species given pressure, temperature(s) and mass fractions; see [Equation 3-2](../chemkin_th/pgfId-1075229.md#i12274 "Equation 3–2") . +`SUBROUTINE CKWYR (RHO, T, Y, ICKWRK, RCKWRK, WDOT)` | Returns the molar production rates of the species given mass density, temperature and mass fractions; see [Equation 3-2](../chemkin_th/pgfId-1075229.md#i12274 "Equation 3–2") . + +[a] Where appropriate, the description refers to an equation number in +[Chemkin Theory Manual](../chemkin_th/chemkin_th.md "Chemkin Theory Manual") +. + + + +[ « 4.12. Mean Thermodynamic Properties (Molar Units)](pgfId-1067658.md) + + [4.14. Equilibrium Constants and Rate of Progress Variables » +](pgfId-1068000.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:40-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_marker-1017775.md b/2026R1/chemkin_26-r1/articles/transformed_marker-1017775.md new file mode 100644 index 0000000000..733e1de9a5 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_marker-1017775.md @@ -0,0 +1,137 @@ +# Example: Hydrogen Oxidation + +The input file to the Gas-phase Kinetics Pre-processor for a hydrogen- +oxidation process is shown in [Example 1.1: Sample Reaction Mechanism as Read +by the Gas-phase Kinetics Pre-processor](marker-1017775.md#i62305 "Example +1.1: Sample Reaction Mechanism as Read by the Gas-phase Kinetics Pre- +processor") . First, the file specifies the elements and species that appear +in the mechanism, and then includes the reaction mechanism description. The +input is essentially format free. The elements and species names need only be +separated by blank spaces, but may also be separated by tabs or blank lines. +In the REACTIONS section, the character string that describes the reaction +appears on the left and is followed by the three Arrhenius coefficients (pre- +exponential factor, temperature exponent, and activation energy). Enhanced +third body efficiencies for selected species are specified in the line +following that for several reactions that contain an arbitrary third body, +`M`. Exclamation marks signify the beginning of comments and the remainder of +the line is ignored. + +Example 1.1: Sample Reaction Mechanism as Read by the Gas-phase Kinetics Pre- +processor + + + + ELEMENTS H O N END + SPECIES H2 H O2 O OH HO2 H2O2 H2O N N2 NO END + REACTIONS + H2+O2=2OH 0.170E+14 0.00 47780 + OH+H2=H20+H 0.117E+10 1.30 3626 !D-L&W + O+OH=O2+H 0.400E+15 -0.50 0 !JAM 1986 + O+H2=OH+H 0.506E+05 2.67 6290 !KLEMM ET AL., 1986 + H+O2+M=HO2+M 0.361E+18 -0.72 0 !DIXON-LEWIS + H2O/18.6/ H2/2.86/ N2/1.26/ + OH+HO2=H2O+O2 0.750E+13 0.00 0 !D-L + H+HO2=2OH 0.140E+15 0.00 1073 !D-L + O+HO2=O2+OH 0.140E+14 0.00 1073 !D-L + 2OH=O+H2O 0.600E+09 1.30 0 !COHEN-WEST + H+H+M=H2+M 0.100E+19 -1.00 0 !D-L + H2O/0.0/ H2/0.0/ + H+H+H2=H2+H2 0.920E+17 -0.60 0 + H+H+H2O=H2+H2O 0.600E+20 -1.25 0 + H+OH+M=H2O+M 0.160E+23 -2.00 0 !D-L + H2O/5/ + H+O+M=OH+M 0.620E+17 -0.60 0 !D-L + H2O/5/ + O+O+M=O2+M 0.189E+14 0.00 -1788 !NBS + H+HO2=H2+O2 0.125E+14 0.00 0 !D-L + HO2+HO2=H2O2+O2 0.200E+13 0.00 0 + H2O2+M=OH+OH+M 0.130E+18 0.00 45500 + H2O2+H=HO2+H2 0.160E+13 0.00 3800 + H2O2+OH=H2O+HO2 0.100E+14 0.00 1800 + O+N2=NO+N 0.140E+15 0.00 75800 + N+O2=NO+O 0.640E+10 1.00 6280 + OH+N=NO+H 0.400E+14 0.00 0 + END + + + +Assume the governing equation we wish to study is the energy conservation +equation for a constant-pressure environment: + +![](graphics/pgfId-1017826.svg)| (1-1) +---|--- + +where ![](graphics/eq46866867-7696-0694-4316-160670959464.svg) is the +temperature, ![](graphics/eq03997499-9721-2657-4837-302200179031.svg) the mass +density, ![](graphics/eq63147088-2251-7922-1261-201208011563.svg) the mean +specific heat, ![](graphics/eq13044458-1852-7664-2739-935200283902.svg) the +molar species enthalpies, and +![](graphics/eq81120276-6457-6675-0451-615086917044.svg) the species molar +production rates. The representation of this equation begins with Gas-phase +Kinetics subroutine calls (the output variables are underlined to help +distinguish them): + +Example 1.2: Gas-phase Kinetics subroutine call + + + + CALL CKINIT(LENIWK, LENRWK, LENCWK, LINKCK, LOUT, ICKWRK, RCKWRK, CCKWRK, IFLAG) + CALL CKINDX(ICKWRK, RCKWRK, MM, KK, II, NFIT) + CALL CKRHOY(P, T, Y, ICKWRK, RCKWRK, RHO) + CALL CKCPBS(T, Y, ICKWRK, RCKWRK, CPB) + CALL CKHML (T, ICKWRK, RCKWRK, HML) + CALL CKWYP (P, T, Y, ICKWRK, RCKWRK, WDOT) + + + +The complete details for these calls are explained in later sections of this +manual; the objective here is to illustrate the relative simplicity of writing +an Ansys Chemkin application. Briefly, the first call is to the initialization +subroutine `CKINIT`, which reads the Linking File created by the Pre-processor +and fills the three work arrays. `LENIWK`, `LENRWK` and `LENCWK` are +dimensions provided by the user for the data arrays `ICKWRK`, `RCKWRK`, and +`CCKWRK`. `IFLAG` is an error flag that is returned with a zero value if no +errors occur. `LINKCK` is the logical file unit number of the Linking File, +chem.asc, and `LOUT` is the logical file number for printed diagnostic and +error messages. The call to `CKINDX` provides index information about the +reaction mechanism: `MM` is the number of elements contained in the species, +`KK` is the number of gas-phase species, `II` is the number of reactions, and +`NFIT` is the number of coefficients in the thermodynamic fits. In the +remaining calls, `P`, `T`, and `Y` are the pressure, temperature, and vector +of species mass fractions, respectively. The output variables correspond to +the various terms for describing the equation, that is, +![](graphics/eq36566803-6667-6571-7922-127283430023.svg), +![](graphics/eq22108436-4521-9416-6238-010525748851.svg), +![](graphics/eq16410964-9849-7019-0098-502088480680.svg), and +![](graphics/eq23187667-5429-7985-3164-448329329190.svg). + +The FORTRAN representation of the governing equation, given by combining the +results of the above subroutine calls, is simply + +Figure 1.2: FORTRAN representation of an energy equation + + + + SUM=0.0 + DO 100 K=1,KK + SUM = SUM + HML(K)*WDOT(K) + 100 CONTINUE + DTDT = -SUM/(RHO*CPB) + + + +One can see from this example that relatively little programming effort is +required to form a conservation equation for an arbitrary reaction mechanism. + +[ « 1.4. Structure and Use of Gas-phase Kinetics +Utilities](pgfId-1040829.md) + + [1.4.2. Example for a Multi-Temperature Plasma » ](pgfId-1017885.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:37-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_marker-1040891.md b/2026R1/chemkin_26-r1/articles/transformed_marker-1040891.md new file mode 100644 index 0000000000..68f2fdb847 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_marker-1040891.md @@ -0,0 +1,27 @@ +# Overview of Utilities Packages + +CHEMKIN is highly structured and modular, consisting of three basic utilities +packages: Gas Kinetics, Surface Kinetics, and Transport. Gas Kinetics forms +the core set of utilities, upon which the other two depend. Use of these +utilities requires the manipulation of a number of programs, subroutines, and +data files. This section describes the structure of the Gas-phase Kinetics +package and the basic requirements for using it from within your own +application programs. [Structure and Use of the Surface Kinetics +Utilities](pgfId-1017373.md "1.5. Structure and Use of the Surface Kinetics +Utilities") provides similar information for the Surface Kinetics utilities, +while [Structure and Use of the Transport Utilities](pgfId-1021250.md "1.6. +Structure and Use of the Transport Utilities") provides an overview of the +Transport utilities. + +[ « 1.2. Prerequisite Skills](pgfId-1021445.md) + + [1.4. Structure and Use of Gas-phase Kinetics Utilities » +](pgfId-1040829.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:37-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_marker-1082818.md b/2026R1/chemkin_26-r1/articles/transformed_marker-1082818.md new file mode 100644 index 0000000000..ecfc8626ba --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_marker-1082818.md @@ -0,0 +1,23 @@ +# Input to Chemkin Sample Program (CONP) + + +``` +1 1000 +H2 1 +O2 3 +N2 .1 +END +3.0E-4 3.0E-5 +``` + +[ « 3.2.2. Output from Gas-phase Kinetics Pre-processor](pgfId-1082404.md) + + [3.2.4. Output from Chemkin Sample Program (CONP) » ](marker-1096354.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:38-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_marker-1096354.md b/2026R1/chemkin_26-r1/articles/transformed_marker-1096354.md new file mode 100644 index 0000000000..4ca7747bde --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_marker-1096354.md @@ -0,0 +1,73 @@ +# Output from Chemkin Sample Program (CONP) + + +``` +ADIABATIC FIXED PRESSURE PROBLEM, + +INPUT PRESSURE(ATM) AND TEMPERATURE(K): + 0.100E+01 0.100E+04 + +INPUT MOLES OF NEXT SPECIES +H2 + +INPUT MOLES OF NEXT SPECIES +O2 + +INPUT MOLES OF NEXT SPECIES +N2 . + +INPUT MOLES OF NEXT SPECIES +END + +INPUT FINAL TIME AND DT + 0.300E-03 0.300E-04 + + T(SEC) TMP(K) H2 H O2 O OH + HO2 H2O2 H2O N N2 + NO + 0.000E+00 0.100E+04 0.244E+00 0.000E+00 0.732E+00 0.000E+00 0.000E+00 + 0.000E+00 0.000E+00 0.000E+00 0.000E+00 0.244E-01 + 0.000E+00 + 0.300E-04 0.100E+04 0.244E+00 0.817E-05 0.732E+00 0.425E-05 0.144E-05 + 0.129E-04 0.103E-07 0.259E-04 0.181E-20 0.244E-01 + 0.375E-19 + 0.600E-04 0.196E+04 0.890E-02 0.169E-01 0.625E+00 0.570E-01 0.411E-01 + 0.174E-03 0.355E-04 0.224E+00 0.229E-09 0.262E-01 + 0.167E-07 + 0.900E-04 0.235E+04 0.367E-02 0.331E-02 0.658E+00 0.235E-01 0.392E-01 + 0.845E-04 0.445E-05 0.246E+00 0.193E-08 0.271E-01 + 0.163E-05 + 0.120E-03 0.243E+04 0.258E-02 0.185E-02 0.665E+00 0.165E-01 0.352E-01 + 0.693E-04 0.254E-05 0.251E+00 0.229E-08 0.272E-01 + 0.438E-05 + 0.150E-03 0.246E+04 0.216E-02 0.139E-02 0.669E+00 0.138E-01 0.330E-01 + 0.641E-04 0.197E-05 0.254E+00 0.236E-08 0.273E-01 + 0.730E-05 + 0.180E-03 0.248E+04 0.197E-02 0.120E-02 0.670E+00 0.125E-01 0.319E-01 + 0.619E-04 0.173E-05 0.255E+00 0.237E-08 0.273E-01 + 0.102E-04 + 0.210E-03 0.248E+04 0.188E-02 0.111E-02 0.671E+00 0.119E-01 0.313E-01 + 0.609E-04 0.162E-05 0.255E+00 0.238E-08 0.273E-01 + 0.131E-04 + 0.240E-03 0.249E+04 0.183E-02 0.106E-02 0.671E+00 0.116E-01 0.310E-01 + 0.604E-04 0.157E-05 0.256E+00 0.239E-08 0.273E-01 + 0.160E-04 + 0.270E-03 0.249E+04 0.181E-02 0.104E-02 0.672E+00 0.115E-01 0.308E-01 + 0.602E-04 0.154E-05 0.256E+00 0.240E-08 0.273E-01 + 0.188E-04 + 0.300E-03 0.249E+04 0.179E-02 0.103E-02 0.672E+00 0.114E-01 0.307E-01 + 0.600E-04 0.152E-05 0.256E+00 0.241E-08 0.273E-01 + 0.217E-04 0.217E-04 +``` + +[ « 3.2.3. Input to Chemkin Sample Program (CONP)](marker-1082818.md) + + [3.3. Surface Kinetics Sample Program (SKSAMPLE) » ](pgfId-1126317.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:38-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_marker-1126991.md b/2026R1/chemkin_26-r1/articles/transformed_marker-1126991.md new file mode 100644 index 0000000000..d131a44075 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_marker-1126991.md @@ -0,0 +1,72 @@ +# Input to Surface Kinetics Pre-processor + + +``` +SITE/SI3N4/ SDEN/4.1683e-9/ + NHSIF(S)/2/ + SIF3NH2(S)/2/ + SIF2NH(S)/2/ + NH2SIFNH(S)/2/ + NHSIFNHSIFNH(S)/4/ + NHNH2(S)/2/ +END +BULK SI(D)/2.066/ +BULK N(D) /1.374/ +END +THERMO ALL + 300. 600. 1685. +NHSIF(S) J 3/67N 1H 1SI 1F 1S 300.000 1685.00 1 + 0.24753989E 01 0.88112187E-03-0.20939481E-06 0.42757187E-11 0.16006564E-13 2 +-0.81255620E 03-0.12188747E 02 0.84197538E 00 0.83710416E-02-0.3077030E-04 3 + 0.97593603E-08-0.27279380E-11-0.52486288E 03-0.45272678E 01 4 +NHNH2(S) J 3/67N 2H 3SI 0F 0S 300.000 1685.00 1 + 0.24753989E 01 0.88112187E-03-0.20939481E-06 0.42757187E-11 0.16006564E-13 2 +-0.81255620E 03-0.12188747E 02 0.84197538E 00 0.83710416E-02-0.3077030E-04 3 + 0.97593603E-08-0.27279380E-11-0.52486288E 03-0.45272678E 01 4 +SIF3NH2(S) J 3/67N 1H 2SI 1F 3S 300.000 1685.00 1 + 0.24753989E 01 0.88112187E-03-0.20939481E-06 0.42757187E-11 0.16006564E-13 2 +-0.81255620E 03-0.12188747E 02 0.84197538E 00 0.83710416E-02-0.3077030E-04 3 + 0.97593603E-08-0.27279380E-11-0.52486288E 03-0.45272678E 01 4 +SIF2NH(S) J 3/67N 1H 1SI 1F 2S 300.000 1685.00 1 + 0.24753989E 01 0.88112187E-03-0.20939481E-06 0.42757187E-11 0.16006564E-13 2 +-0.81255620E 03-0.12188747E 02 0.84197538E 00 0.83710416E-02-0.3077030E-04 3 + 0.97593603E-08-0.27279380E-11-0.52486288E 03-0.45272678E 01 4 +NH2SIFNH(S) J 3/67N 2H 3SI 1F 1S 300.000 1685.00 1 + 0.24753989E 01 0.88112187E-03-0.20939481E-06 0.42757187E-11 0.16006564E-13 2 +-0.81255620E 03-0.12188747E 02 0.84197538E 00 0.83710416E-02-0.3077030E-04 3 + 0.97593603E-08-0.27279380E-11-0.52486288E 03-0.45272678E 01 4 +NHSIFNHSIFNH(S) J 3/67N 3H 3SI 2F 2S 300.000 1685.00 1 + 0.24753989E 01 0.88112187E-03-0.20939481E-06 0.42757187E-11 0.16006564E-13 2 +-0.81255620E 03-0.12188747E 02 0.84197538E 00 0.83710416E-02-0.3077030E-04 3 + 0.97593603E-08-0.27279380E-11-0.52486288E 03-0.45272678E 01 4 +SI(D) J 3/67SI 100 000 000 0S 300.000 1685.00 1 + 0.24753989E 01 0.88112187E-03-0.20939481E-06 0.42757187E-11 0.16006564E-13 2 +-0.81255620E 03-0.12188747E 02 0.84197538E 00 0.83710416E-02-0.3077030E-04 3 + 0.97593603E-08-0.27279380E-11-0.52486288E 03-0.45272678E 01 4 +N(D) J 3/67N 100 000 000 0S 300.000 1685.00 1 + 0.24753989E 01 0.88112187E-03-0.20939481E-06 0.42757187E-11 0.16006564E-13 2 +-0.81255620E 03-0.12188747E 02 0.84197538E 00 0.83710416E-02-0.3077030E-04 3 + 0.97593603E-08-0.27279380E-11-0.52486288E 03-0.45272678E 01 4 +END + +REACTIONS + NH3 + NHSIF(S) => NHNH2(S) + SI(D) + HF 7.5620E08 0.5 0.0 + SIF4 + NHNH2(S) => SIF3NH2(S) + N(D) + HF 3.0967E08 0.5 0.0 + SIF3NH2(S) => SIF2NH(S) + HF 1.0000E05 0.0 0.0 + NH3 + SIF2NH(S) => NH2SIFNH(S) + HF 7.5620E08 0.5 0.0 + NH2SIFNH(S) + SIF2NH(S) => NHSIFNHSIFNH(S) + HF 1.0000E15 0.0 0.0 + NHSIFNHSIFNH(S) + SIF2NH(S) => 3NHSIF(S) + N(D) + HF 1.0000E15 0.0 0.0 +END +``` + +[ « 3.3.3. Output from Gas-phase Kinetics Pre-processor](pgfId-1096966.md) + + [3.3.5. Output from Surface Kinetics Pre-processor » ](pgfId-1080556.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:38-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1017373.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1017373.md new file mode 100644 index 0000000000..645840381f --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1017373.md @@ -0,0 +1,82 @@ +# Structure and Use of the Surface Kinetics Utilities + + +Using the Surface Kinetics utilities is analogous to using the Gas-phase +Kinetics utilities, and the Surface Kinetics Pre-processor can only be used +after the Gas-phase Kinetics Pre-processor has been executed. The flow of +information from the Gas-phase Kinetics Pre-processor to the Application +program is shown in Figure 1.3: Relationships between the CHEMKIN Pre-processors and an Application . A +third set of utilities, which handles gas-phase molecular transport, may or +may not be needed in a particular Application. The Transport utilities are +described in [Structure and Use of the Transport Utilities](pgfId-1021250.md "1.6. Structure and Use of the Transport Utilities") . + +The Gas-phase Kinetics Pre-processor introduces the chemical elements that are +used in the entire Chemistry Set, whether they are in the gas-phase reaction +mechanism or the surface reaction mechanism. Gas-phase species (which can +appear in surface reactions) are also introduced with the Gas-phase Kinetics +Pre-processor. Thus, if a gas-phase species appears in surface reactions, they +must be included in the input to the Gas-phase Kinetics Pre-processor, even if +there are no gas-phase reactions. + +

+Figure 1.3: Relationships between the CHEMKIN Pre-processors and an +Application

+ +![Relationships between the CHEMKIN Pre-processors and an Application](graphics/CHEMKIN_Relationships_between_Pre-proc_and_Application.png) + + + +Like Gas-phase Kinetics, the Surface Kinetics package is composed of two +software components: + + * Surface Kinetics Pre-processor + + * Surface Kinetics Subroutine Library + +As with the Gas-phase Kinetics subroutine library, your own routines or +application programs can call Surface Kinetics subroutines that define the +terms in the equations relating to equation of state, chemical production +rates, and thermodynamics, and then combine the results to define the problem. +The Surface Kinetics subroutines provide information specifically for surface +chemistry on a particular surface material. + +The Surface Kinetics Pre-processor first reads the symbolic description of the +surface reaction mechanism and then extracts from a Thermodynamic Database the +appropriate thermodynamic information for the species involved in the surface +reaction mechanism. Gas-phase Kinetics and Surface Kinetics can share a common +database for this purpose. The output of the Surface Kinetics Pre-processor is +the Surface Kinetics Linking File, which contains all the pertinent +information on the elements, species, and reactions in the surface reaction +mechanism. Information on gas-phase species is brought in from the Gas-phase +Kinetics Linking File, and thus is duplicated in the two linking files for +efficiency in subsequent data processing. + +The Surface Kinetics Linking File is read by an initialization routine in the +Surface Kinetics Subroutine Library (`SKINIT`) that is called from the Ansys +Chemkin application program. The purpose of the initialization is to populate +three data arrays (one integer, one floating point, and one character data +type), which must be allocated by your program, that are then passed into and +used internally by the other subroutines in the Surface Kinetics Subroutine +Library. + +The Surface Kinetics Subroutine Library has approximately seventy (70) +subroutines that return information on elements, species, reactions, +thermodynamic properties, and chemical production rates. Generally, the input +to these routines will be the state of the gas and the surface--pressure, +temperature, and species composition. The species composition is specified in +terms of gas-phase mole fractions, surface site fractions, and bulk-phase +activities; surface site densities are also input to complete the +specification of the state of the surface. + +[ « 1.4.2. Example for a Multi-Temperature Plasma](pgfId-1017885.md) + + [1.5.1. Example of Using the Surface Kinetics Pre-processor » +](pgfId-1020396.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:37-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1017885.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1017885.md new file mode 100644 index 0000000000..e51e378947 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1017885.md @@ -0,0 +1,179 @@ +# Example for a Multi-Temperature Plasma + +The application of Gas-phase Kinetics to non-equilibrium plasma systems +requires that the kinetics coefficients can be specified independently of the +problem or application. For example, some assumption must be made a priori +about the electron-energy distribution function (`EEDF`) when specifying +electron-impact kinetics. In reality the `EEDF` will depend on the reactor +conditions, such as the local electric field magnitude or the degree of +dissociation of a molecular gas. These conditions are problem-dependent, such +that including these effects requires coupling between the kinetics-rate +determination and the `EEDF` determination. While we foresee a need in future +Gas-phase Kinetics development for treatment of fundamental reaction cross- +section data, there are many systems where application of problem-independent +kinetics in plasma modeling is reasonable. Such applications include plasma +conditions where the `EEDF` is nearly Maxwellian, such as near-thermal +atmospheric-pressure plasma jets, or very low-pressure, high-electron-density +systems for microelectronics processing. + +The input file to the Gas-phase Kinetics Pre-processor for a chlorine-plasma +excitation process is shown in [Example 1.3: Sample Plasma Reaction Mechanism +as Read by the Gas-phase Kinetics Pre-processor](pgfId-1017885.md#i94426 +"Example 1.3: Sample Plasma Reaction Mechanism as Read by the Gas-phase +Kinetics Pre-processor") . As with the previous hydrogen-oxidation example, +the file first specifies the elements and species that appear in the mechanism +and then describes the reaction mechanism. Here, electrons must be specified +both as an element and as a species. The elemental composition of a +unipositive ion is that of the corresponding neutral minus one electron. This +information is given in the species thermodynamic data and will be described +further in the next section. As in the thermal system, three Arrhenius +coefficients are used by default to describe reaction rates for electron- +impact kinetics. The auxiliary keyword '`TDEP` ' on a line following the +reaction statement indicates that the reaction rate is a function of the +temperature of the species specified in the slashes following the `TDEP` +keyword. + +As shown in [Example 1.3: Sample Plasma Reaction Mechanism as Read by the Gas- +phase Kinetics Pre-processor](pgfId-1017885.md#i94426 "Example 1.3: Sample +Plasma Reaction Mechanism as Read by the Gas-phase Kinetics Pre-processor") , +most of the plasma reactions require some auxiliary information beyond the +Arrhenius coefficients to distinguish the reaction description from the +default thermal reactions. `TDEP` is one example of an auxiliary keyword that +specifies the temperature dependence of the reaction. `EXCI` is used typically +to indicate an excitation reaction. Such "reactions" are often included to +allow calculation of inelastic energy loss rates for electrons, without +requiring the user to include all excited states as new species in the +reaction mechanism. The auxiliary information following the keyword `EXCI` +represents the energy-loss per collision in electron volts. The keyword `DUP` +is included to allow multiple occurrences of reaction statements that have +different rate coefficients or different auxiliary information, but otherwise +appear identical. This is frequently necessary in the specification of +multiple excitation reactions from the same ground-state species. The use of +auxiliary keywords is described in greater detail in the [Chemkin Input +Manual](../chemkin_in/chemkin_in.md "Chemkin Input Manual") Input Manual. + +Another important aspect of the plasma reactions shown in [Example 1.3: Sample +Plasma Reaction Mechanism as Read by the Gas-phase Kinetics Pre- +processor](pgfId-1017885.md#i94426 "Example 1.3: Sample Plasma Reaction +Mechanism as Read by the Gas-phase Kinetics Pre-processor") is that they are +all specified as irreversible reactions. This is in contrast to thermal +reactions, which are usually reversible and reverse rates can be calculated +directly from species thermodynamic properties. In the case of electron +kinetics, the interactions between electrons and neutral species can be +intrinsically irreversible. While detailed balancing may be appropriate for +near-thermal plasmas, the use of Ansys Chemkin thermodynamics is not +appropriate for determining reverse rates. In such cases, the user should +explicitly supply reverse kinetic parameters, or specify a reverse path as an +additional irreversible reaction. + +Example 1.3: Sample Plasma Reaction Mechanism as Read by the Gas-phase +Kinetics Pre-processor + + + + ELEMENTS E CL END + SPECIES E CL+ CL2+ CL- CL* CL CL2 END + REACTIONS KELVIN MOLECULES + ! reaction rates from Maxwellian EEDF + E + CL2 => E + CL2 2.5141E-02 -1.4443E+00 1.6650E+04 + TDEP/E/ !vibrational excitation + EXCI/ 0.07/ + DUP + E + CL2 => CL- + CL 5.8901E-09 -2.5619E-01 1.5834E+04 + TDEP/E/ !dissociative attachment + E + CL2 => 2CL + E 1.5356E-06 -3.4642E-01 7.0850E+04 + TDEP/E/ !dissociation + E + CL2 => E + CL2 6.3477E-06 -5.3987E-01 1.3920E+05 + TDEP/E/ !electronic excitation + EXCI/ 9.25/ + DUP + E + CL2 => CL2+ + 2E 1.1227E-04 -6.0067E-01 1.8070E+05 + TDEP/E/ !ionization + E + CL- => CL + 2E 3.1197E-06 -2.8757E-01 7.2058E+04 + TDEP/E/ !detachment + E + CL => E + CL* 1.2363E-05 -6.1356E-01 1.3297E+05 + TDEP/E/ !4s excitation + E + CL => E + CL 1.2363E-05 -6.1356E-01 1.3297E+05 + TDEP/E/ !4s excitation energy loss + EXCI/ 9.55/ + DUP + E + CL => E + CL 9.4444E-05 -7.3093E-01 1.5413E+05 + TDEP/E/ !3d excitation + EXCI/11.65/ + DUP + E + CL => CL+ + 2E 2.3736E-04 -7.0894E-01 1.8374E+05 + TDEP/E/ !ionization + E + CL* => CL+ + 2E 2.6471E-05 -4.3906E-01 6.3670E+04 + TDEP/E/ !Cl* ionization + CL- + CL2+ => CL + CL2 5.00E-08 0.0 0 + CL- + CL+ => 2CL 5.00E-08 0.0 0 + END + + + +Consider a simple form of the electron conservation equation for a closed +system: + +![](graphics/pgfId-1017950.svg)| (1-2) +---|--- + +where ![](graphics/eq70293795-5452-9866-0474-453739521730.svg) is the electron +molar concentration and +![](graphics/eq84267563-8249-6958-8288-169867362915.svg) the electron molar +production rate. The representation of this equation begins with Gas-phase +Kinetics subroutine calls: + +Example 1.4: Gas-phase Kinetics Subroutine + + + + CALL CKINIT(LENIWK, LENRWK, LENCWK, LINKCK, LOUT, ICKWRK, RCKWRK, CCKWRK, IFLAG) + CALL CKINDX(ICKWRK, RCKWRK, MM, KK, II, NFIT) + CALL PKINDX(ICKWRK, KEL, KKION) + CALL CKKTFL(ICKWRK, KTFL) + CALL CKWC(T, C, ICKWRK, RCKWRK, WDOT) + + + +As in the hydrogen-oxidation example, the first call is to the initialization +subroutine `CKINIT`. `CKINDX` provides general chemistry indices, while +`PKINDX` provides plasma-specific index information. In this case, we call +`PKINDX` to get `KEL`, the location in the species array of the electron. In +other words, there is no requirement for the species '`E` ' to be in any +particular order in the mechanism species list. `KKION` is the number of +positive and negative ions in the chemistry mechanism. The call to `CKKTFL` +initializes the species temperature flag array in the Gas-phase Kinetics +workspace. Without this call, it is assumed that all species share a common +temperature, which is always the first entry in the temperature array passed +to Gas-phase Kinetics in all subsequent calls. `KTFL` is a user-defined vector +that defines the locations in the temperature array that correspond to each +species temperature. This allows the application to define a different number +of temperatures in the system than the total number of species. For example, +in a two-temperature plasma, where `T(1)` is the gas temperature and `T(2)` is +the electron temperature, the user sets `KTFL(KEL) = 2`, and all other entries +are set to '`1` '. Finally, in the call to `CKWC`, `T` is the temperature +array, and `C` is the vector of species molar concentrations. The output +variable, `WDOT`, is the +![](graphics/eq22231585-5692-0452-7401-330238388594.svg) vector, where +![](graphics/eq66094508-0315-9064-8010-069988328246.svg) is the `KEL`th entry. + +* * * + +Note: This API does not support user-written programs or subroutines. +Developing user programs should therefore be considered only by advanced users +with appropriate programming skills. + +* * * + +[ « 1.4.1. Example: Hydrogen Oxidation](marker-1017775.md) + + [1.5. Structure and Use of the Surface Kinetics Utilities » +](pgfId-1017373.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:37-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1020396.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1020396.md new file mode 100644 index 0000000000..34c312c9b7 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1020396.md @@ -0,0 +1,178 @@ +# Example of Using the Surface Kinetics Pre-processor + +We illustrate the use of Surface Kinetics by a simple example involving +deposition of silicon. The surface reaction mechanism is shown in [Example +1.5: Sample Reaction Mechanism as Read by the Surface Kinetics Pre- +processor](pgfId-1020396.md#i40383 "Example 1.5: Sample Reaction Mechanism +as Read by the Surface Kinetics Pre-processor") as it appears for the input +file to the Surface Kinetics Pre-processor. The first two lines identify a +site type called `SILICON` that has a site density of 1.66 × 10-9 mole/cm2. +Only one species, SI(S), exists on this site type. The bulk material is +identified as SI(B), and it has a mass bulk density of 2.33 g/cm3. This is a +very simple example that has only one site type occupied by only one species +and only one pure bulk material. In general, however, an input file could +specify many different site types, each of which could be occupied by a +variety of species. Furthermore, there could be several bulk-phase mixtures +that could each be composed of several species. Examples of all these +possibilities appear in the [Chemkin Input +Manual](../chemkin_in/chemkin_in.md "Chemkin Input Manual") Input Manual. + +The reaction mechanism itself is listed next. The symbol `=>` in each reaction +expression indicates that all of the reactions are irreversible. The three +numbers following each reaction expression are its Arrhenius rate parameters ( +pre-exponential factor, temperature exponent, and activation energy). + +Example 1.5: Sample Reaction Mechanism as Read by the Surface Kinetics Pre- +processor + + + + SITE/SILICON/ SDEN/1.66E-09/ + SI(S) + BULK SI(B) /2.33/ + + REACTIONS + + SIH4 + SI(S) =>SI(S) + SI(B) + 2H2 1.05E17 0.5 40000 + SI2H6 +2SI(S) =>2SI(S) + 2SI(B) + 3H2 4.55E26 0.5 40000 + SIH2 + SI(S) =>SI(S) + SI(B) + H2 3.9933E11 0.5 0 + SI2H2 +2SI(S) => 2SI(S) + 2SI(B) + H2 1.7299E20 0.5 0 + 2SI2H3 +4SI(S) => 4SI(S) + 4SI(B) + 3H2 6.2219E37 0.5 0 + H2SISIH2 +2SI(S) => 2SI(S) + 2SI(B) + 2H2 1.7007E20 0.5 0 + 2SI2H5 +4SI(S)=> 4SI(S) + 4SI(B) + 5H2 6.1186E37 0.5 0 + 2SIH3 +2SI(S) => 2SI(S) + 2SI(B) + 3H2 2.3659E20 0.5 0 + 2SIH +2SI(S) => 2SI(S) + 2SI(B) + H2 2.4465E20 0.5 0 + SI + SI(S) => SI(S) + SI(B) 4.1341E11 0.5 0 + H3SISIH +2SI(S) => 2SI(S) + 2SI(B) + 2H2 1.7007E20 0.5 0 + SI2 +2SI(S) => 2SI(S) + 2SI(B) 1.7607E20 0.5 0 + SI3 +3SI(S) => 3SI(S) + 3SI(B) 8.6586E28 0.5 0 + END + + + +All of the reactions in this mechanism have the same form: a gas-phase species +reacting on a silicon site. The reaction of silane at the surface is +illustrated in [Figure 1.4: Illustration of Gas-Phase Silane +Reaction](pgfId-1020396.md#i30411 "Figure 1.4: Illustration of Gas-Phase +Silane Reaction") . Each silicon-containing gas-phase species can react on an +atomic surface site, SI(S), to deposit a silicon atom as SI(B) and release +hydrogen back into the gas phase. We have included SI(S) as both a reactant +and a product to indicate that a "site" must be available at which the gas- +phase species can react. In the example, however, the surface silicon SI(S) is +distinguished from the bulk deposit SI(B) by virtue of its position as the +top-most atom at the surface. Therefore, each time a SI(S) is consumed by a +reaction the bulk layer becomes one atom thicker and the silicon atom that +just left the gas now forms the top-most surface layer, that is, SI(S). For +this mechanism, the SI(S) could have been just as well left out of the +mechanism entirely. However, if other gas-phase species had been present (say +phosphine carrying phosphorus as a dopant), these species could compete for +the available silicon sites on the surface. Thus, by writing the reactions as +we have, we have left open the possibility for other species to occupy surface +sites and thus inhibit the deposition of silicon. + +Figure 1.4: Illustration of Gas-Phase Silane Reaction + +![Illustration of Gas-Phase Silane Reaction](graphics/CHEMKIN_Illustr_Gas-Phase_Silane_Reaction.png) + + + +As an example of the full use of Surface Kinetics, assume that the program we +are writing needs to evaluate a boundary condition concerning the energy +balance at a surface of an isothermal particle. + +The energy balance would take the following form (with the surface normal +![](graphics/eq49317123-2176-3484-4931-033635321250.svg) pointing into the +particle): + +![](graphics/i61143.svg)|

(1-3)

+---|--- + +The dependent variables in this expression are the temperature +![](graphics/eq44571692-4145-7004-9578-559495981262.svg), gas-phase mass +fractions ![](graphics/eq06842689-6285-3940-1317-920449819165.svg) and +convective velocity ![](graphics/eq40400771-9402-2923-0067-859801334946.svg). +The surface site fractions and the bulk-species activities are also dependent +variables, but do not appear explicitly in the expression. The first term in +this equation describes thermal conduction to the surface from the gas phase. +The thermal conductivity +![](graphics/eq14861225-4879-0995-5364-035411427608.svg) would be evaluated by +a call to the Transport Subroutine Library, and the temperature gradient could +be evaluated by finite differences. The second term concerns the diffusive and +convective flux of energy by gas-phase species at the surface. The mass +density ![](graphics/eq93152584-7975-3113-7550-670098777819.svg) and the gas- +phase enthalpies ![](graphics/eq75279664-2707-6194-5831-395933810193.svg) +would be evaluated by calls to the Gas-phase Kinetics Subroutine Library. The +gas-phase species diffusion velocities +![](graphics/eq21591324-9935-5242-0451-561379655072.svg) would be evaluated in +terms of diffusion coefficients that are obtained from the Transport Package +and finite difference approximations to the species gradients. The first term +on the right-hand side concerns the thermal radiation to or from the surface. + +We now concentrate on the final term, which concerns the energy generated or +consumed from surface reaction. The summation is over all surface and bulk +species, and the factors in the summation are the production rate of surface +and bulk species by surface reaction, +![](graphics/eq02907090-1529-9750-1881-235928793508.svg), the species +molecular weights, ![](graphics/eq28353307-7133-1078-1979-282715205698.svg), +and the enthalpies of the surface and bulk species, +![](graphics/eq79624287-1510-6777-1481-332300794039.svg). The FORTRAN +representation of this term begins with Surface Kinetics Subroutine Library +subroutine calls (the output variables are underlined to help distinguish +them): + +Example 1.6: Example calls to the Surface Kinetics Subroutine Library + + + + CALL SKINIT(LSIWK, LSRWK, LSCWK, LINKSK, LOUT, ISKWRK, RSKWRK, CSKWRK, IFLAG) + CALL SKWT(ISKWRK, RSKWRK, WT) + CALL SKHMS(T, ISKWRK, RSKWRK, HMS) + CALL SKRAT(P, T, ACT, SDEN, ISKWRK, RSKWRK, SDOT, SITDOT) + + + +The complete details for these calls are explained in later chapters of this +manual; the objective here is to illustrate the relative simplicity of writing +an Ansys Chemkin program. Briefly, the first call is to the initialization +subroutine `SKINIT`, which reads the Surface Kinetics Linking File created by +the Surface Kinetics Pre-processor and populates the three work arrays. +`LSIWK`, `LSRWK`, and `LSCWK` are the dimensions provided by the user for the +data arrays `ISKWRK`, `RSKWRK`, and `CSKWRK`. `LINKSK` is the logical file +number of the Surface Kinetics Linking File, `LOUT` is the logical file number +for printed diagnostic and error messages, and `IFLAG` is an integer error +flag. In the remaining calls, `P` and `T` are the pressure and temperature. +The array `ACT` contains the gas-phase mole fractions, the surface site +fractions, and the bulk species activities, in that order. The output variable +arrays, `HMS` and `SDOT`, correspond to the factors in the summation from Equation 1-3 , that is, `HMS` = +![](graphics/eq19135887-8623-2438-8563-132844781676.svg), and `SDOT` = +![](graphics/eq33719021-8375-1353-5972-733423400408.svg). + +The FORTRAN representation of the summation in the last term, given by +combining the results of the above subroutine calls, is simply + +Example 1.7: Example FORTRAN code for calculating equation terms + + + + SUM=0.0 + DO 100 K=FIRST_SURFACE_SPECIES, LAST_BULK_SPECIES + SUM = SUM + SDOT(K)*WT(K)*HMS(K) + 100 CONTINUE + + + +The species indices `FIRST_SURFACE_SPECIES` and `LAST_BULK_SPECIES` are also +available from a call to the Surface Kinetics Subroutine Library. + +[ « 1.5. Structure and Use of the Surface Kinetics +Utilities](pgfId-1017373.md) + + [1.6. Structure and Use of the Transport Utilities » ](pgfId-1021250.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:37-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1021042.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1021042.md new file mode 100644 index 0000000000..a37a05dd55 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1021042.md @@ -0,0 +1,25 @@ +# Thermal Diffusion + +Table 6.5: Thermal Diffusion Subroutines + +Subroutine| Description +---|--- +`SUBROUTINE MCATDR (T, X, IMCWRK, RMCWRK, TDR)` | This subroutine computes the thermal diffusion ratios for the light species into the mixture. +`SUBROUTINE MCMCDT (P, T, X, IMCWRK, RMCWRK, ICKWRK, CKWRK, DT, COND)`| This +subroutine computes the thermal diffusion coefficients, and mixture thermal +conductivities given the pressure, temperature, and mole fractions. + + + +[ « 6.5. Diffusion Coefficients](pgfId-1062833.md) + + [Chapter 7: Alphabetical Listing of the Gas-phase Kinetics Subroutine Library +» ](i13005api_list_gpk.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:40-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1021250.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1021250.md new file mode 100644 index 0000000000..8b9aa48aa6 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1021250.md @@ -0,0 +1,50 @@ +# Structure and Use of the Transport Utilities + +The Transport utilities must be used in conjunction with the Gas-phase +Kinetics utilities. The general flow of information is depicted in [Figure 1.3: Relationships between the CHEMKIN Pre-processors and an Application](pgfId-1017373.md#i62358 "Figure 1.3: Relationships between the CHEMKIN Pre-processors and an Application") . The Transport utilities can be used with or without the Surface Kinetics utilities. + +As with the Surface Kinetics utilities, the Gas-phase Kinetics Pre-processor +must be run prior to the Transport Pre-processor. The Transport Pre-processor +requires input from the Transport Database, and from the Gas-phase Kinetics +Linking File. The Transport Database contains molecular parameters for a +number of species; these parameters are: The Lennard-Jones well depth +![](graphics/eq71036551-1681-9604-2918-673011385917.svg) in Kelvins, the +Lennard-Jones collision diameter +![](graphics/eq20681490-1039-3612-7152-814451337282.svg) in Angstroms, the +dipole moment ![](graphics/eq66249785-7445-0260-8347-157091667088.svg) in +Debyes, the polarizability +![](graphics/eq00280314-3537-3805-6224-978331845878.svg) in cubic angstroms, +rotational relaxation collision number +![](graphics/eq97454377-1223-6035-1708-479487087431.svg) and an indicator +regarding the nature and geometrical configuration of the molecule. A +supplemental input file may also contain this information. The information +coming from the Gas-phase Kinetics Linking File contains the species names and +molecular weights, as well as thermodynamic data. Like the Gas-phase Kinetics +Pre-processor, the Transport Pre-processor produces a Transport Linking File +that is later needed in the Transport Subroutine Library. + +Both the Gas-phase Kinetics and the Transport Subroutine Libraries must be +initialized before use and there is a similar initialization subroutine in +each. The Transport Subroutine Library is initialized by a call to subroutine +`MCINIT`. Its purpose is to read the Transport Linking File and populate the +storage arrays, allocated by the calling program, which must be made available +to all other subroutines in the library. Once initialized, any subroutine in +the library may be called from the application program. There are just +eighteen (18) subroutines contained in the Transport subroutine library. These +return pure-species, binary, and gas-mixture transport properties, using +either a mixture-averaged or full multicomponent formulation, as described in +the [Chemkin Theory Manual](../chemkin_th/chemkin_th.md "Chemkin Theory +Manual") Theory Manual. + +[ « 1.5.1. Example of Using the Surface Kinetics Pre- +processor](pgfId-1020396.md) + + [Chapter 2: User Supplemental Programming » ](i13005api_user_sup_prog.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:37-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1021445.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1021445.md new file mode 100644 index 0000000000..c7915e90e6 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1021445.md @@ -0,0 +1,24 @@ +# Prerequisite Skills + +We presume that a user is familiar with the rudiments of setting environment +and path variables; the basic Ansys Chemkin requirements in that regard are +adequately provided by the README files, with further extensive information +and tutorial sessions in [Chemkin Getting Started +Guide](../chemkin_gs/chemkin_gs.md "Chemkin Getting Started Guide") . It is +further presumed that a user-programmer is familiar with the fundamentals of +using the compiler, linker, and make processes of the platform. The Chemkin +Application Programming Interface documentation is not designed to provide +detailed information on those processes, only on how to use them with Chemkin +programs and libraries. + +[ « 1.1.1. Compiler Summary](ck_api_sect_compiler_compat.md) + + [1.3. Overview of Utilities Packages » ](marker-1040891.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:37-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1040829.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1040829.md new file mode 100644 index 0000000000..5a2c3c04d5 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1040829.md @@ -0,0 +1,101 @@ +# Structure and Use of Gas-phase Kinetics Utilities + +The Gas-phase Kinetics utilities are composed of the following: + + * Gas-phase Kinetics Pre-processor (a program) + + * Gas-phase Kinetics Subroutine Library (a set of FORTRAN subroutines) + +The Gas-phase Kinetics Pre-processor is included as part of the Pre-processor +utility accessed from the Ansys Chemkin interface and described in [Chemkin +Getting Started Guide](../chemkin_gs/chemkin_gs.md "Chemkin Getting Started +Guide") . However, the Gas-phase Kinetics Pre-processor can also be run +independently, through the command-line, as described in [Chemkin Getting +Started Guide](../chemkin_gs/chemkin_gs.md "Chemkin Getting Started Guide") +. In either case, the Pre-processor must be run in order to produce a gas- +phase Linking File, which contains all of the chemistry-specific information +for the gas-phase−kinetics portion of the particular Chemistry Set identified +for the problem. This Linking File must be available to any Chemkin +application program that makes calls to the Gas-phase Kinetics Subroutine +Library. The Pre-processor program must therefore be run prior to running a +Chemkin application program or Reactor Model. + +The general structure of the Gas-phase Kinetics utilities and the relationship +between the utilities and an Ansys Chemkin application program are shown in +[Figure 1.1: Schematic representing the relationship of Gas-phase Kinetics and +the Application.](pgfId-1040829.md#i32598 "Figure 1.1: Schematic +representing the relationship of Gas-phase Kinetics and the Application.") . +The Gas-phase Kinetics Pre-processor is a program that reads a symbolic +description of a gas-phase reaction mechanism and then extracts the needed +thermodynamic data for each species involved in that mechanism from a +Thermodynamic Database file. The primary output from the Pre-processor is the +Gas-phase Kinetics Linking File. This file contains information that contains +all required information about the elements, species, and reactions in the +user's mechanism. However, users should not attempt to read this file +directly, as the structure changes from version to version of Chemkin +utilities. Instead, calls to initialization routines within the Gas-phase +Kinetics Library facilitate extraction of the data stored. + +* * * + +Note: If any errors occur during pre-processing, the error state will be +reflected in the Linking File and when called, the `CKINIT` will print a +diagnostic message and execution will stop. + +* * * + +The Linking File is read by an initialization subroutine, CKINIT. The purpose +of the initialization is to populate three data arrays (one integer, one +floating point, and one character data type) in stored memory within your +program. These arrays are then passed into other subroutines in the Gas-phase +Kinetics Subroutine Library, for internal use within the subroutines. These +arrays should not be modified within your program once they have been +initialized. Before the initialization routine is called, your application +program must first allocate the memory for the three arrays. A call into the +subroutine library can be made to retrieve the needed dimensions for this +purpose. The Gas-phase Kinetics subroutine to perform derived calculations or +extract chemistry-specific information during the simulation. + +* * * + +Note: Although the Linking File is a formatted file (for example, chem.asc), +user programs should not attempt to read this file directly; instead, always +use the Ansys Chemkin initialization routine `CKINIT` to extract information +from it. The format of the file will change from version to version, but the +subroutine library calling lists are static. + +* * * + +If you are writing your own application that describes a particular set of +governing equations, the programming required is highly leveraged by the Ansys +Chemkin subroutine libraries. For example, through a simple call to Gas-phase +Kinetics subroutines the program can obtain chemistry-specific terms in the +governing equations that relate to equations of state, chemical production, +and thermodynamics. You can then focus on the form of the equations and the +solver methodology, letting Chemkin subroutines handle all of the chemistry- +specific part of the problem definition. + +The Gas-phase Kinetics Subroutine Library has over 150 subroutines that return +information on elements, species, reactions, equations of state, thermodynamic +properties, and chemical production rates. Generally, the input to these +routines will be the state of the gas--pressure or density, temperature(s), +and species composition. + +Figure 1.1: Schematic representing the relationship of Gas-phase Kinetics and +the Application. + +![Schematic representing the relationship of Gas-phase Kinetics and the Application.](graphics/CHEMKIN_relationship_Gas-phase_Kinetics_and_Application.png) + + + +[ « 1.3. Overview of Utilities Packages](marker-1040891.md) + + [1.4.1. Example: Hydrogen Oxidation » ](marker-1017775.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:37-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1062650.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1062650.md new file mode 100644 index 0000000000..933bbdebce --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1062650.md @@ -0,0 +1,47 @@ +# Mnemonics + +There are seventeen user-callable subroutines in the package. All subroutine +names begin with `MC`. The following letter is either an `S`, an `A`, or an +`M`, indicating whether pure species (`S`), mixture-averaged (`A`), or +multicomponent (`M`) properties are returned. The remaining letters indicate +which property is returned: `CON` for conductivity, `VIS` for viscosity, `DIF` +for diffusion coefficients, `CDT` for both conductivity and thermal diffusion +coefficients, and `TDR` for the thermal diffusion ratios. + +A call to the initialization subroutine `MCINIT` must precede any other call. +This subroutine is normally called only once at the beginning of a problem; it +reads the Linking File and sets up the internal storage and working space - +arrays `IMCWRK` and `RMCWRK`. These arrays are required input to all other +subroutines in the library. Besides `MCINIT` there is only one other non- +property subroutine, called `MCPRAM` ; it is used to return the arrays of +molecular parameters that came from the database for the species in the +problem. All other subroutines are used to compute either viscosities, thermal +conductivities, or diffusion coefficients. They may be called to return pure +species properties, mixture-averaged properties, or multicomponent properties. + +In the input to all subroutines, the state of the gas is specified by the +pressure in dynes per square centimeter, temperature in Kelvin, and the +species mole fractions. The properties are returned in standard CGS units. The +order of vector information, such as the vector of mole fractions or pure +species viscosities, is the same as the order declared in the Gas-phase +Kinetics Pre-processor input. + +Here we provide a short description of each subroutine according to its +function. In [Alphabetical Listing of the Transport Subroutine +Library](i13005api_list_transportlib.md "Chapter 9: Alphabetical Listing of +the Transport Subroutine Library") we list the subroutines in alphabetical +order and provide a longer description of each subroutine including call-list +details. + +[ « Chapter 6: Quick Reference Guide to the Transport Subroutine +Library](i13005api_quickref_transp_lib.md) + + [6.2. Initialization and Parameters » ](pgfId-1062725api.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:40-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1062725api.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1062725api.md new file mode 100644 index 0000000000..70ee8d0041 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1062725api.md @@ -0,0 +1,32 @@ +# Initialization and Parameters + +Table 6.1: Initialization and Parameter Subroutines + +Subroutine| Description +---|--- +`SUBROUTINE MCINIT (LINKMC, LOUT, LENIMC, LENRMC, IMCWRK, RMCWRK)`| This +subroutine serves to read the Linking File from the fitting code and to create +the internal storage and work arrays, IMCWRK(*) and RMCWRK (*). MCINIT must be +called before any other Transport subroutine is called. It must be called +after the Gas-phase Kinetics package is initialized. +`SUBROUTINE MCPRAM (IMCWRK, RMCWRK EPS, SIG, DIP, POL, ZROT, NLIN)`| This +subroutine is called to return the arrays of molecular parameters as read from +the Transport database. +`SUBROUTINE MCPNT (LSAVE, LOUT, NPOINT, V, P, LI, LR, IERR)` | Reads from a binary file information about a Transport linkfile, pointers for the Transport Library, and returns lengths of work arrays. +`SUBROUTINE MCSAVE (LOUT, LSAVE, IMCWRK, RMCWRK)` | Writes to a binary file information about a Transport linkfile, pointers for the Transport library, and Transport work arrays. +`SUBROUTINE MCREWR (LINKMC, LOUT, IMCWRK, RMCWRK, IFLAG)` | This subroutine writes a new the Transport linkfile from the data stored in the integer and real work arrays, IMCWRK(*) and RMCWRK(*). +`SUBROUTINE MCLEN (LINKMC, LOUT, LI, LR, IFLAG)` | Returns the lengths required for work arrays. + + + +[ « 6.1. Mnemonics](pgfId-1062650.md) + + [6.3. Viscosity » ](pgfId-1062756.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:40-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1062756.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1062756.md new file mode 100644 index 0000000000..db7b421ec9 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1062756.md @@ -0,0 +1,26 @@ +# Viscosity + +Table 6.2: Viscosity Subroutines + +Subroutine| Description +---|--- +`SUBROUTINE MCSVIS (T, RMCWRK, VIS)`| This subroutine computes the array of +pure species viscosities given the temperature. +`SUBROUTINE MCAVIS (T, X, RMCWRK, VISMIX)`| This subroutine computes the +mixture viscosity given the temperature and the species mole fractions. It +uses modifications of the Wilke semi-empirical formulas. +`SUBROUTINE MCCVEX (K, KDIM, RCKWRK, COFVIS)` | Gets or puts values of the fitting coefficients for the polynomial fits to species viscosity. + + + +[ « 6.2. Initialization and Parameters](pgfId-1062725api.md) + + [6.4. Conductivity » ](pgfId-1062795.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:40-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1062795.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1062795.md new file mode 100644 index 0000000000..7f4c6a1c59 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1062795.md @@ -0,0 +1,29 @@ +# Conductivity + +Table 6.3: Conductivity Subroutines + +Subroutine| Description +---|--- +`SUBROUTINE MCSCON (T, RMCWRK, CON)`| This subroutine computes the array pure +species conductivities given the temperature. +`SUBROUTINE MCACON (T, X, RMCWRK, CONMIX)`| This subroutine computes the +mixture thermal conductivity given the temperature and the species mole +fractions. +`SUBROUTINE MCMCDT (P, T, X, IMCWRK, RMCWRK, ICKWRK, CKWRK, DT, COND)`| This +subroutine computes the thermal diffusion coefficients and mixture thermal +conductivities given the pressure, temperature, and mole fractions. +`SUBROUTINE MCCCEX (K, KDIM, RCKWRK, COFCON)` | Gets or puts values of the fitting coefficients for the polynomial fits to species conductivity. + + + +[ « 6.3. Viscosity](pgfId-1062756.md) + + [6.5. Diffusion Coefficients » ](pgfId-1062833.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:40-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1062833.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1062833.md new file mode 100644 index 0000000000..34611e8dba --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1062833.md @@ -0,0 +1,26 @@ +# Diffusion Coefficients + +Table 6.4: Diffusion Coefficients Subroutines + +Subroutine| Description +---|--- +`SUBROUTINE MCSDIF (P, T, KDIM, RMCWRK, DJK)` | This subroutine computes the binary diffusion coefficients given the pressure and temperature. +`SUBROUTINE MCADIF (P, T, X, RMCWRK, D)`| This subroutine computes the +mixture-averaged diffusion coefficients given the pressure, temperature, and +species mole fractions. +`SUBROUTINE MCMDIF (P, T, X, KDIM, IMCWRK, RMCWRK, D)` | This subroutine computes the ordinary multicomponent diffusion coefficients given the pressure, temperature, and mole fractions. +`SUBROUTINE MCCDEX (K, KDIM, RCKWRK, COFDIF)` | Gets or puts values of the fitting coefficients for the polynomial fits to species binary diffusion coefficients. + + + +[ « 6.4. Conductivity](pgfId-1062795.md) + + [6.6. Thermal Diffusion » ](pgfId-1021042.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:40-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1066782.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1066782.md new file mode 100644 index 0000000000..2f2442b4ee --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1066782.md @@ -0,0 +1,57 @@ +# Mnemonics + +There are some good rules of thumb that explain the subroutine naming +conventions. All subroutine names (with the exception of `PKINDX`) begin with +the letters `CK` so that Gas-phase Kinetics subroutines are easily recognized +and so that they are likely different from any user subroutine names. The four +remaining letters identify the purpose of the subroutine: The first one or two +usually refer to the variable that is being computed; the last letters refer +to either the input variables or the units. + +State variables are denoted by `P` (pressure), `T` (temperature), `Y` ( mass +fraction), `X` ( mole fraction), and `C` ( molar concentration). Thermodynamic +properties are referred to by `CP` and `CV` (Specific heats), `H` (enthalpy), +`S` (entropy), `U` (internal energy), `G` (Gibbs free energy), and `A` +(Helmholtz free energy). The thermodynamic property subroutines may be called +to return properties in mass units, denoted by `MS` or `S` as the last +letter(s), or in molar units, denoted by `ML` or `L` as the last letter(s). +The letter `B` (for the bar as in +![](graphics/eq73873444-8841-3181-0623-555850045825.svg)) in a thermodynamic +property subroutine name indicates that it returns mean mixture properties. + +Subroutines that return net chemical production rates have a `W` (for +![](graphics/eq77412692-1043-8389-0663-974839952253.svg)) following the `CK`, +and routines that return creation and destruction rates or creation rates and +destruction times have a `CD` or a `CT`, respectively, following the `CK`. +Rate-of-progress variables are denoted by `Q` and equilibrium constants by +`EQ`. + +The mnemonics for the input and output variable names in the subroutine calls +are roughly the same as for the subroutine names. + +In most cases the subroutines are backwards compatible with previous versions +of Chemkin. However, there are a few cases where either the functionality is +different or the call list has changed, but we have kept the same subroutine +name. These are annotated with an asterisk(s). + +* * * + +Note: All routines for which the call list or functionality may have changed +from the original version of Chemkin are identified by an asterisk. +Subroutines whose call lists have changed since later versions, known as +Chemkin II, are indicated by a double asterisk. + +* * * + +[ « Chapter 4: Quick Reference Guide to the Gas-phase Kinetics Subroutine +Library](i13005api_quickref_gaskinetics.md) + + [4.2. Initialization » ](pgfId-1066867.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:38-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1066867.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1066867.md new file mode 100644 index 0000000000..8cd18afef6 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1066867.md @@ -0,0 +1,29 @@ +# Initialization + +Table 4.1: Initialization Subroutines + +Subroutine | Description +---|--- +`SUBROUTINE CKINDX (ICKWRK, RCKWRK, MM, KK, II, NFIT)*` | Returns a group of indices defining the size of the particular reaction mechanism. +`SUBROUTINE CKINIT (LENICK, LENRCK, LENCCK, LINC, LOUT, ICKWRK, RCKWRK, CCKWRK, IFLAG)**` | Reads the linkfile and creates the internal work arrays ICKWRK, RCKWRK and CCKWRK. CKINIT must be called before any other Gas-phase Kinetics subroutine can be used, as the work arrays must be available as their input. +`SUBROUTINE CKKTFL (ICKWRK, KTFL)` | Allows the user to assign a location in the temperature array to use for each gas-phase species. +`SUBROUTINE CKLEN (LINC, LOUT, LENI, LENR, LENC, IFLAG)` | Returns the lengths required for work arrays. +`SUBROUTINE CKLEN2 (LINC, LOUT, LI, LR, LC, MM, KK, II, MAXSP, MAXTP, MAXTB, MAXORD, KKI, IFLAG)` | Returns the lengths required for work arrays, as well as mechanism size information for memory allocation. +`SUBROUTINE CKPNT (LSAVE, LOUT, NPOINT, VERS, PREC, LENI, LENR, LENC, KERR)` | Reads from a file information about a Gas-phase Kinetics linkfile, and pointers for work arrays. +`SUBROUTINE CKREWR (LINC, LOUT, ICKWRK, RCKWRK, CCKWRK, IFLAG)` | Rewrites a new linkfile from the data stored in ICKWRK, RCKWRK and CCKWRK. +`SUBROUTINE CKSAVE (LOUT, LSAVE, ICKWRK, RCKWRK, CCKWRK)` | Writes to a binary file information about a Gas-phase Kinetics linkfile, pointers for the Gas-phase Kinetics Subroutine Library, and Gas-phase Kinetics work arrays. +`SUBROUTINE PKINDX (ICKWRK, KELECT, KKION)` | Returns plasma indices for the particular reaction mechanism. + + + +[ « 4.1. Mnemonics](pgfId-1066782.md) + + [4.3. Information About Elements » ](pgfId-1066901.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:38-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1066901.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1066901.md new file mode 100644 index 0000000000..989329b1a4 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1066901.md @@ -0,0 +1,24 @@ +# Information About Elements + +Table 4.2: Information about Elements Subroutines + +Subroutine | Description +---|--- +`REAL FUNCTION CKATOM (ENAME)` | Returns atomic weight, given character-string element name. +`SUBROUTINE CKAWT (ICKWRK, RCKWRK, AWT)` | Returns the atomic weights of the elements. +`SUBROUTINE CKCOMP (IST, IRAY, II, I)*` | Returns the index of an element of a reference character string array which corresponds to a character string; leading and trailing blanks are ignored. +`SUBROUTINE CKSYME (CCKWRK, LOUT, ENAME, KERR)*` | Returns the character strings of element names. + + + +[ « 4.2. Initialization](pgfId-1066867.md) + + [4.4. Information About Species » ](pgfId-1066953.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:38-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1066953.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1066953.md new file mode 100644 index 0000000000..e6d39b6830 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1066953.md @@ -0,0 +1,27 @@ +# Information About Species + +Table 4.3: Information about Species Subroutines + +Subroutine | Description +---|--- +`SUBROUTINE CKCHRG (ICKWRK, RCKWRK, KCHARG)` | Returns the electronic charges of the species. +`SUBROUTINE CKCOMP (IST, IRAY, II, I)*` | Returns the index of an element of a reference character string array which corresponds to a character string; leading and trailing blanks are ignored. +`SUBROUTINE CKION (ICKWRK, KION)` | Returns the ion species indices. +`SUBROUTINE CKNCF (MDIM, ICKWRK, RCKWRK, NCF)` | Returns the elemental composition of the species. +`SUBROUTINE CKPHAZ (ICKWRK, RCKWRK, KPHASE)` | Returns a set of flags indicating phases of the species +`SUBROUTINE CKSYMS (CCKWRK, LOUT, KNAME, KERR)*` | Returns the character strings of species names. +`SUBROUTINE CKWT (ICKWRK, RCKWRK, WT)` | Returns the molecular weights of the species. + + + +[ « 4.3. Information About Elements](pgfId-1066901.md) + + [4.5. Information About Reactions » ](pgfId-1067107.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:38-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1067107.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1067107.md new file mode 100644 index 0000000000..62efd238f3 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1067107.md @@ -0,0 +1,45 @@ +# Information About Reactions + +Table 4.4: Information about Reactions Subroutines[a] + +Subroutine | Description +---|--- +`SUBROUTINE CKABE (ICKWRK, RCKWRK, RA, RB, RE)` | Returns the Arrhenius coefficients of the reactions; see [Equation 3-5](../chemkin_th/pgfId-1075229.md#i71194 "Equation 3–5") . +`SUBROUTINE CKFAL (NDIM, ICKWRK, RCKWRK, IFOP, IFLO, KFAL, FPAR)` | Returns a set of flags indicating whether a reaction has pressure- dependent behavior and an array of parameters. +`SUBROUTINE CKFALP (P, T, X, ICKWRK, RCKWRK, I, RKLOW, CTB, PR, FC, PCOR)` | Returns details concerning the reaction rate constant for pressure-dependent reactions. +`SUBROUTINE CKHRX (I, HML, ICKWRK, RCKWRK, HRXI)` | Returns the molar heat of reaction I. +`SUBROUTINE CKIEXC (ICKWRK, RCKWRK, IEXC, EEXC)` | Returns a set of flags indicating whether the reactions are excitation reactions and, if so, the energy loss per event in eV. +`SUBROUTINE CKIMOM (ICKWRK, IMOM)` | Returns a set of flags indicating whether the reactions are electron momentum-transfer collision frequencies and, if so, the index of the species with which the electron collides. +`SUBROUTINE CKINU (I, NDIM, ICKWRK, RCKWRK, NSPEC, KI, NU)` | Returns a count of species in a reaction, and their indices and stoichiometric coefficients; see [Equation 3-3](../chemkin_th/pgfId-1075229.md#i44415 "Equation 3–3") . +`SUBROUTINE CKIORD (IDIM, KDIM, ICKWRK, RCKWRK, NIORD, IORD, FORD, RORD)` | Returns the count and indices of reactions with modified species order and the order values for the species. +`SUBROUTINE CKIREV (IR, ICKWRK, RCKWRK, IREV, RAR, RBR, RER)` | Returns an integer flag to indicate whether reaction IR has an explicitly assigned reverse rate constant. It also returns the reverse Arrhenius expression values for reaction IR, if it was explicitly assigned in the Gas-phase Kinetics Pre-processor. If reverse Arrhenius values were not explicitly assigned, RAR, RBR and RER will be zero. +`SUBROUTINE CKIRNU (IDIM, NDIM, ICKWRK, RCKWRK, NIRNU, IRNU, NSPEC, KI, RNU)` | Returns the count and indices of reactions with real stoichiometric coefficients, counts of species in the reactions, and the species indices and coefficients; see [Equation 3-3](../chemkin_th/pgfId-1075229.md#i44415 "Equation 3–3") . +`SUBROUTINE CKITDE (ICKWRK, RCKWRK, ITDE)` | Returns a set of flags indicating whether the reactions are non-thermal, and if so, returns the index of the species on which the reaction depends. +`SUBROUTINE CKITR (ICKWRK, RCKWRK, ITHB, IREV)` | Returns a set of flags indicating whether the reactions are reversible or whether they contain arbitrary third bodies. +`SUBROUTINE CKIUQ (ICKWRK, RCKWRK, IQUSR)` | Returns a set of flags indicating whether the reactions are user-modify rate-of-progress reactions, and if so, the user-modify type. +`SUBROUTINE CKIXSM (ICKWRK, IXSM, IXSK)` | Returns a set of flags indicating whether the reactions are ion momentum-transfer cross sections. +`SUBROUTINE CKKUW (ICKWRK, KWUSR)` | Returns a set of flags indicating whether the species are user-modify rate-of-production species, and if so, the user-modify type. +`SUBROUTINE CKNU (KDIM, ICKWRK, RCKWRK, NUKI)` | Returns the stoichiometric coefficients of the reactions; see [Equation 3-3](../chemkin_th/pgfId-1075229.md#i44415 "Equation 3–3") . +`SUBROUTINE CKNUF (KDIM, ICKWRK, RCKWRK, NUFKI)` | Returns the forward stoichiometric coefficients for reactions; by definition, reactants' coefficients are negative; see [Equation 3-3](../chemkin_th/pgfId-1075229.md#i44415 "Equation 3–3") . Contrast this subroutine with subroutine CKNU, which returns the net stoichiometric coefficients for a reaction. +`SUBROUTINE CKRAEX (I, RCKWRK, RA)*` | Get/put the Pre-exponential coefficient of the i th reaction +`SUBROUTINE CKSYMR (I, LOUT, ICKWRK, RCKWRK, CCKWRK, LT, ISTR, KERR)*` | Returns a character string which describes the i th reaction, and the effective length of the character string. +`SUBROUTINE CKTHB (KDIM, ICKWRK, RCKWRK, AKI)` | Returns matrix of enhanced third body coefficients; see [Equation 3-19](../chemkin_th/pgfId-1062725.md#i73167 "Equation 3–19") . +`SUBROUTINE CKWL (ICKWRK, RCKWRK, WL)` | Returns a set of flags providing information on the wave length of photon radiation. + +[a] Where appropriate, the description refers to an equation number in +[Chemkin Theory Manual](../chemkin_th/chemkin_th.md "Chemkin Theory Manual") +. + + + +[ « 4.4. Information About Species](pgfId-1066953.md) + + [4.6. Gas Constants and Units » ](pgfId-1067123api.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:38-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1067123api.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1067123api.md new file mode 100644 index 0000000000..4662724c00 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1067123api.md @@ -0,0 +1,21 @@ +# Gas Constants and Units + +Table 4.5: Gas Constant and Units Subroutines + +Subroutine | Description +---|--- +`SUBROUTINE CKRP (ICKWRK, RCKWRK, RU, RUC, PA)` | Returns universal gas constants and the pressure of one standard atmosphere. + + + +[ « 4.5. Information About Reactions](pgfId-1067107.md) + + [4.7. Equations of State and Mole-Mass Conversions » ](pgfId-1067294.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:38-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1067294.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1067294.md new file mode 100644 index 0000000000..7a3bd69d31 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1067294.md @@ -0,0 +1,41 @@ +# Equations of State and Mole-Mass Conversions + +Table 4.6: Equations of State and Mole-Mass Conversions Subroutines[a] + +Subroutine | Description +---|--- +`SUBROUTINE CKMMWC (C, ICKWRK, RCKWRK, WTM)` | Returns the mean molecular weight of the gas mixture given molar concentrations; see [Equation 2-9](../chemkin_th/i92220.md#i29051 "Equation 2–9") . +`SUBROUTINE CKMMWX (X, ICKWRK, RCKWRK, WTM)` | Returns the mean molecular weight of the gas mixture given mole fractions; see [Equation 2-8](../chemkin_th/i92220.md#i28883 "Equation 2–8") . +`SUBROUTINE CKMMWY (Y, ICKWRK, RCKWRK, WTM)` | Returns the mean molecular weight of the gas mixture given mass fractions; see [Equation 2-7](../chemkin_th/i92220.md#i88404 "Equation 2–7") . +`SUBROUTINE CKPC (T, C, ICKWRK, RCKWRK, P)` | Returns the pressure of the gas mixture given temperature(s) and molar concentrations; see [Equation 2-5](../chemkin_th/i92220.md#i83323 "Equation 2–5") . +`SUBROUTINE CKPX (RHO, T, X, ICKWRK, RCKWRK, P)` | Returns the pressure of the gas mixture given mass density, temperature(s) and mole fractions; see [Equation 2-5](../chemkin_th/i92220.md#i83323 "Equation 2–5") . +`SUBROUTINE CKPY (RHO, T, Y, ICKWRK, RCKWRK, P)` | Returns the pressure of the gas mixture given mass density, temperature(s) and mass fractions; see [Equation 2-5](../chemkin_th/i92220.md#i83323 "Equation 2–5") . +`SUBROUTINE CKRHOC (P, T, C, ICKWRK, RCKWRK, RHO)` | Returns the mass density of the gas mixture given pressure, temperature(s) and molar concentrations; see [Equation 2-6](../chemkin_th/i92220.md#i39928 "Equation 2–6") . +`SUBROUTINE CKRHOX (P, T, X, ICKWRK, RCKWRK, RHO)` | Returns the mass density of the gas mixture given pressure, temperature(s) and mole fractions; see [Equation 2-6](../chemkin_th/i92220.md#i39928 "Equation 2–6") . +`SUBROUTINE CKRHOY (P, T, Y, ICKWRK, RCKWRK, RHO)` | Returns the mass density of the gas mixture given pressure, temperature(s) and mass fractions; see [Equation 2-6](../chemkin_th/i92220.md#i39928 "Equation 2–6") . +`SUBROUTINE CKCTX (C, ICKWRK, RCKWRK, X)` | Returns the mole fractions given molar concentrations; see [Equation 2-17](../chemkin_th/pgfId-1075332.md#i85573 "Equation 2–17") . +`SUBROUTINE CKCTY (C, ICKWRK, RCKWRK, Y)` | Returns the mass fractions given molar concentrations; see [Equation 2-16](../chemkin_th/pgfId-1075325.md#i95737 "Equation 2–16") . +`SUBROUTINE CKXTCP (P, T, X, ICKWRK, RCKWRK, C)` | Returns the molar concentrations given pressure, temperature(s) and mole fractions; see [Equation 2-14](../chemkin_th/pgfId-1075313.md#i34169 "Equation 2–14") . +`SUBROUTINE CKXTCR (RHO, T, X, ICKWRK, RCKWRK, C)` | Returns the molar concentrations given mass density, temperature(s), and mole fractions; see [Equation 2-15](../chemkin_th/pgfId-1075313.md#i95185 "Equation 2–15") . +`SUBROUTINE CKXTY (X, ICKWRK, RCKWRK, Y)` | Returns the mass fractions given mole fractions; see [Equation 2-13](../chemkin_th/pgfId-1075306.md#i49933 "Equation 2–13") . +`SUBROUTINE CKYTCP (P, T, Y, ICKWRK, RCKWRK, C)` | Returns the molar concentrations given pressure, temperature(s) and mass fractions; see [Equation 2-11](../chemkin_th/pgfId-1075294.md#i73590 "Equation 2–11") . +`SUBROUTINE CKYTCR (RHO,T, Y, ICKWRK, RCKWRK, C)` | Returns the molar concentrations given mass density, temperature(s) sand mass fractions; see [Equation 2-12](../chemkin_th/pgfId-1075294.md#i82753 "Equation 2–12") . +`SUBROUTINE CKYTX (Y, ICKWRK, RCKWRK, X)` | Returns the mole fractions given mass fractions; see [Equation 2-10](../chemkin_th/pgfId-1075287.md#i29580 "Equation 2–10") . + +[a] Where appropriate, the description refers to an equation number in +[Chemkin Theory Manual](../chemkin_th/chemkin_th.md "Chemkin Theory Manual") +. + + + +[ « 4.6. Gas Constants and Units](pgfId-1067123api.md) + + [4.8. Thermodynamic Properties (Nondimensional) » ](pgfId-1067361.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:38-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1067361.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1067361.md new file mode 100644 index 0000000000..f7157a84bd --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1067361.md @@ -0,0 +1,31 @@ +# Thermodynamic Properties (Nondimensional) + +Table 4.7: Thermodynamic Properties (Nondimensional) Subroutines[a] + +Subroutine | Description +---|--- +`SUBROUTINE CKATHM (NDIM1, NDIM2, ICKWRK, RCKWRK, MAXTP, NT, TMP, A)` | Returns the coefficients of the fits for thermodynamic properties of species; see [Equation 2-29](../chemkin_th/pgfId-1116264.md#i18868 "Equation 2–29") through [Equation 2-31](../chemkin_th/pgfId-1116264.md#i59672 "Equation 2–31") . +`SUBROUTINE CKCPOR (T, ICKWRK, RCKWRK, CPOR)` | Returns the nondimensional specific heats at constant pressure; see [Equation 2-29](../chemkin_th/pgfId-1116264.md#i18868 "Equation 2–29") . +`SUBROUTINE CKHORT (T, ICKWRK, RCKWRK, HORT)` | Returns the nondimensional enthalpies; see [Equation 2-30](../chemkin_th/pgfId-1116264.md#i57749 "Equation 2–30") . +`SUBROUTINE CKMXTP (ICKWRK, MAXTP)` | Returns the maximum number of temperatures used in fitting the thermodynamic properties of the species. +`SUBROUTINE CKRHEX (K, RCKWRK, A6)` | Returns an array of the sixth thermodynamic polynomial coefficients for a species, or changes their value, depending on the sign of K. +`SUBROUTINE CKSMH (T, ICKWRK, RCKWRK, SMH)*` | Returns the array of entropies minus enthalpies for species. It is normally not called directly by the user. +`SUBROUTINE CKSOR (T, ICKWRK, RCKWRK, SOR)` | Returns the nondimensional entropies; see [Equation 2-31](../chemkin_th/pgfId-1116264.md#i59672 "Equation 2–31") . + +[a] Where appropriate, the description refers to an equation number in +[Chemkin Theory Manual](../chemkin_th/chemkin_th.md "Chemkin Theory Manual") +. + + + +[ « 4.7. Equations of State and Mole-Mass Conversions](pgfId-1067294.md) + + [4.9. Thermodynamic Properties (Mass Units) » ](pgfId-1067446.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:39-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1067446.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1067446.md new file mode 100644 index 0000000000..26894f2e92 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1067446.md @@ -0,0 +1,31 @@ +# Thermodynamic Properties (Mass Units) + +Table 4.8: Thermodynamic Properties (Mass Units) Subroutines[a] + +Subroutine | Description +---|--- +`SUBROUTINE CKAMS (T, ICKWRK, RCKWRK, AMS)` | Returns the standard state Helmholtz free energies in mass units; see [Equation 2-42](../chemkin_th/pgfId-1116840.md#i55357 "Equation 2–42") . +`SUBROUTINE CKCPMS (T, ICKWRK, RCKWRK, CPMS)` | Returns the specific heats at constant pressure in mass units; see [Equation 2-36](../chemkin_th/pgfId-1116840.md#i56436 "Equation 2–36") . +`SUBROUTINE CKCVMS (T, ICKWRK, RCKWRK, CVMS)` | Returns the specific heats at constant volume in mass units; see [Equation 2-39](../chemkin_th/pgfId-1116840.md#i63774 "Equation 2–39") . +`SUBROUTINE CKGMS (T, ICKWRK, RCKWRK, GMS)` | Returns the standard state Gibbs free energies in mass units; see [Equation 2-36](../chemkin_th/pgfId-1116840.md#i56436 "Equation 2–36") . +`SUBROUTINE CKHMS (T, ICKWRK, RCKWRK, HMS)` | Returns the enthalpies in mass units; see [Equation 2-37](../chemkin_th/pgfId-1116840.md#i20354 "Equation 2–37") . +`SUBROUTINE CKSMS (T, ICKWRK, RCKWRK, SMS)` | Returns the standard state entropies in mass units; see [Equation 2-38](../chemkin_th/pgfId-1116840.md#i54754 "Equation 2–38") . +`SUBROUTINE CKUMS (T, ICKWRK, RCKWRK, UMS)` | Returns the internal energies in mass units; see [Equation 2-40](../chemkin_th/pgfId-1116840.md#i20871 "Equation 2–40") . + +[a] Where appropriate, the description refers to an equation number in +[Chemkin Theory Manual](../chemkin_th/chemkin_th.md "Chemkin Theory Manual") +. + + + +[ « 4.8. Thermodynamic Properties (Nondimensional)](pgfId-1067361.md) + + [4.10. Thermodynamic Properties (Molar Units) » ](pgfId-1067510.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:39-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1067510.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1067510.md new file mode 100644 index 0000000000..1fbc5af04c --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1067510.md @@ -0,0 +1,31 @@ +# Thermodynamic Properties (Molar Units) + +Table 4.9: Thermodynamic Properties (Molar Units) Subroutines[a] + +Subroutine | Description +---|--- +`SUBROUTINE CKAML (T, ICKWRK, RCKWRK, AML)` | Returns the standard state Helmholtz free energies in molar units; see [Equation 2-35](../chemkin_th/pgfId-1174322.md#i65292 "Equation 2–35") . +`SUBROUTINE CKCPML (T, ICKWRK, RCKWRK, CPML)` | Returns the specific heats at constant pressure in molar units. +`SUBROUTINE CKCVML (T, ICKWRK, RCKWRK, CVML)` | Returns the specific heats in constant volume in molar units; see [Equation 2-32](../chemkin_th/pgfId-1174322.md#i12950 "Equation 2–32") . +`SUBROUTINE CKGML (T, ICKWRK, RCKWRK, GML)` | Returns the standard state Gibbs free energies in molar units; see [Equation 2-34](../chemkin_th/pgfId-1174322.md#i81341 "Equation 2–34") . +`SUBROUTINE CKHML (T, ICKWRK, RCKWRK, HML)` | Returns the enthalpies in molar units. +`SUBROUTINE CKSML (T, ICKWRK, RCKWRK, SML)` | Returns the standard state entropies in molar units. +`SUBROUTINE CKUML (T, ICKWRK, RCKWRK, UML)` | Returns the internal energies in molar units; see [Equation 2-33](../chemkin_th/pgfId-1174322.md#i65952 "Equation 2–33") . + +[a] Where appropriate, the description refers to an equation number in +[Chemkin Theory Manual](../chemkin_th/chemkin_th.md "Chemkin Theory Manual") +. + + + +[ « 4.9. Thermodynamic Properties (Mass Units)](pgfId-1067446.md) + + [4.11. Mean Thermodynamic Properties (Mass Units) » ](pgfId-1067584.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:39-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1067584.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1067584.md new file mode 100644 index 0000000000..e286b45b52 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1067584.md @@ -0,0 +1,31 @@ +# Mean Thermodynamic Properties (Mass Units) + +Table 4.10: Mean Thermodynamic Properties (Mass Units) Subroutines[a] + +Subroutine | Description +---|--- +`SUBROUTINE CKABMS (P, T, Y, ICKWRK, RCKWRK, ABMS)*` | Returns the mean Helmholtz free energy of the mixture in mass units given pressure, temperature(s) and mass fractions; see [Equation 2-57](../chemkin_th/pgfId-1116238.md#i79378e "Equation 2–57") . +`SUBROUTINE CKCPBS (T, Y, ICKWRK, RCKWRK, CPBMS)` | Returns the mean specific heat at constant pressure; see [Equation 2-44](../chemkin_th/pgfId-1116238.md#i57588 "Equation 2–44") . +`SUBROUTINE CKCVBS (T, Y, ICKWRK, RCKWRK, CVBMS)` | Returns the mean specific heat at constant volume in mass units; see [Equation 2-46](../chemkin_th/pgfId-1116238.md#i59175 "Equation 2–46") . +`SUBROUTINE CKGBMS (P, T, Y, ICKWRK, RCKWRK, GBMS)*` | Returns the mean Gibbs free energy of the mixture in mass units given pressure, temperature(s), and mass fractions; see [Equation 2-55](../chemkin_th/pgfId-1116238.md#i91617 "Equation 2–55") . +`SUBROUTINE CKHBMS (T, Y, ICKWRK, RCKWRK, HBMS)` | Returns the mean enthalpy of the mixture in mass units; see [Equation 2-48](../chemkin_th/pgfId-1116238.md#i45291 "Equation 2–48") . +`SUBROUTINE CKSBMS (P, T, Y, ICKWRK, RCKWRK, SBMS)*` | Returns the mean entropy of the mixture in mass units given pressure, temperature(s) and mass fractions; see [Equation 2-53](../chemkin_th/pgfId-1116238.md#i67018 "Equation 2–53") . +`SUBROUTINE CKUBMS (T, Y, ICKWRK, RCKWRK, UBMS)` | Returns the mean internal energy of the mixture in mass units; see [Equation 2-50](../chemkin_th/pgfId-1116238.md#i65954 "Equation 2–50") . + +[a] Where appropriate, the description refers to an equation number in +[Chemkin Theory Manual](../chemkin_th/chemkin_th.md "Chemkin Theory Manual") +. + + + +[ « 4.10. Thermodynamic Properties (Molar Units)](pgfId-1067510.md) + + [4.12. Mean Thermodynamic Properties (Molar Units) » ](pgfId-1067658.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:39-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1067658.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1067658.md new file mode 100644 index 0000000000..f9e0a36c98 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1067658.md @@ -0,0 +1,31 @@ +# Mean Thermodynamic Properties (Molar Units) + +Table 4.11: Mean Thermodynamic Properties (Molar Units) Subroutines[a] + +Subroutine | Description +---|--- +`SUBROUTINE CKABML (P, T, X, ICKWRK, RCKWRK, ABML)*` | Returns the Helmholtz free energy of the mixture in molar units given pressure, temperature(s), and mole fractions; see [Equation 2-56](../chemkin_th/pgfId-1116238.md#i73934 "Equation 2–56") . +`SUBROUTINE CKCPBL (T, X, ICKWRK, RCKWRK, CPBML)` | Returns the mean specific heat at constant pressure in molar units; see [Equation 2-43](../chemkin_th/pgfId-1116238.md#i86374 "Equation 2–43") . +`SUBROUTINE CKCVBL (T, X, ICKWRK, RCKWRK, CVBML)` | Returns the mean specific heat at constant volume in molar units; see [Equation 2-45](../chemkin_th/pgfId-1116238.md#i46488 "Equation 2–45") . +`SUBROUTINE CKGBML (P, T, X, ICKWRK, RCKWRK, GBML)*` | Returns the mean Gibbs free energy of the mixture in molar units given pressure, temperature(s) and mole fractions; see [Equation 2-54](../chemkin_th/pgfId-1116238.md#i39137 "Equation 2–54") . +`SUBROUTINE CKHBML (T, X, ICKWRK, RCKWRK, HBML)` | Returns the mean enthalpy of the mixture in molar units; see [Equation 2-47](../chemkin_th/pgfId-1116238.md#i27761 "Equation 2–47") . +`SUBROUTINE CKSBML (P, T, X, ICKWRK, RCKWRK, SBML)*` | Returns the mean entropy of the mixture in molar units given pressure, temperature(s) and mole fractions; see [Equation 2-52](../chemkin_th/pgfId-1116238.md#i49244 "Equation 2–52") . +`SUBROUTINE CKUBML (T, X, ICKWRK, RCKWRK, UBML)` | Returns the mean internal energy of the mixture in molar units; see [Equation 2-49](../chemkin_th/pgfId-1116238.md#i40745 "Equation 2–49") . + +[a] Where appropriate, the description refers to an equation number in +[Chemkin Theory Manual](../chemkin_th/chemkin_th.md "Chemkin Theory Manual") +. + + + +[ « 4.11. Mean Thermodynamic Properties (Mass Units)](pgfId-1067584.md) + + [4.13. Chemical Production Rates » ](i78942.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:39-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1068000.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1068000.md new file mode 100644 index 0000000000..eca12944ab --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1068000.md @@ -0,0 +1,34 @@ +# Equilibrium Constants and Rate of Progress Variables + +Table 4.13: Equilibrium Constants and Rate of Progress Variables +Subroutines[a] + +Subroutine | Description +---|--- +`SUBROUTINE CKEQC (T, C, ICKWRK, RCKWRK, EQKC)` | Returns the equilibrium constants for reactions given temperature(s) and molar concentrations; see [Equation 3-7](../chemkin_th/pgfId-1075229.md#i49537 "Equation 3–7") . +`SUBROUTINE CKEQXP (P, T, X, ICKWRK, RCKWRK, EQKC)` | Returns the equilibrium constants for reactions given pressure, temperature(s) and mole fractions; see [Equation 3-7](../chemkin_th/pgfId-1075229.md#i49537 "Equation 3–7") . +`SUBROUTINE CKEQXR (RHO, T, X, ICKWRK, RCKWRK, EQKC)` | Returns the equilibrium constants of the reactions given mass density, temperature(s) and mole fractions; see [Equation 3-7](../chemkin_th/pgfId-1075229.md#i49537 "Equation 3–7") . +`SUBROUTINE CKEQYP (P, T, Y, ICKWRK, RCKWRK, EQKC)` | Returns the equilibrium constants for reactions given pressure temperature(s) and mass fractions; see [Equation 3-7](../chemkin_th/pgfId-1075229.md#i49537 "Equation 3–7") . +`SUBROUTINE CKEQYR (RHO, T, Y, ICKWRK, RCKWRK, EQKC)` | Returns the equilibrium constants of the reactions given mass density, temperature(s) and mass fractions; see [Equation 3-7](../chemkin_th/pgfId-1075229.md#i49537 "Equation 3–7") . +`SUBROUTINE CKQC (T, C, ICKWRK, RCKWRK, Q)` | Returns the rates of progress for reactions given temperature(s) and molar concentrations; see [Equation 3-4](../chemkin_th/pgfId-1075229.md#i91749 "Equation 3–4") and [Equation 3-19](../chemkin_th/pgfId-1062725.md#i73167 "Equation 3–19") . +`SUBROUTINE CKQXP (P, T, X, ICKWRK, RCKWRK, Q)` | Returns the rates of progress for reactions given pressure, temperature(s) and mole fractions; see [Equation 3-4](../chemkin_th/pgfId-1075229.md#i91749 "Equation 3–4") and [Equation 3-19](../chemkin_th/pgfId-1062725.md#i73167 "Equation 3–19") . +`SUBROUTINE CKQYP (P, T, Y, ICKWRK, RCKWRK, Q)` | Returns the rates of progress for reactions given pressure, temperature(s) and mass fractions; see [Equation 3-4](../chemkin_th/pgfId-1075229.md#i91749 "Equation 3–4") and [Equation 3-19](../chemkin_th/pgfId-1062725.md#i73167 "Equation 3–19") . +`SUBROUTINE CKQYR (RHO, T, Y, ICKWRK, RCKWRK, Q)` | Returns the rates of progress for reactions given mass density, temperature(s) and mass fractions; see [Equation 3-4](../chemkin_th/pgfId-1075229.md#i91749 "Equation 3–4") and [Equation 3-19](../chemkin_th/pgfId-1062725.md#i73167 "Equation 3–19") . + +[a] Where appropriate, the description refers to an equation number in +[Chemkin Theory Manual](../chemkin_th/chemkin_th.md "Chemkin Theory Manual") +. + + + +[ « 4.13. Chemical Production Rates](i78942.md) + + [4.15. Utilities » ](pgfId-1068172.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:40-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1068172.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1068172.md new file mode 100644 index 0000000000..294b88d771 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1068172.md @@ -0,0 +1,48 @@ +# Utilities + +Table 4.14: Utility Subroutines + +Subroutine | Description +---|--- +`SUBROUTINE CKAVG (NN, S1, S2, SAVG)` | For arrays of length nn, SAVG(n) is the average value of S1(n) and S2(n). +`REAL FUNCTION CKBSEC (NPTS, X, XX, TT)` | Interpolate f(X) using bisection, given X and other pairs of X and f(X). +`CHARACTER FUNCTION CKCHUP (ISTR, ILEN)` | Convert characters of a character string to upper case. +`CHARACTER FUNCTION CKCHLO (ISTR, ILEN)` | Convert ILEN characters in a character string to lower-case. +`SUBROUTINE CKCOMP (IST, IRAY, II, I)` | Returns the index of an element of a reference character string array which corresponds to a character string; leading and trailing blanks are ignored. +`SUBROUTINE CKCOPY (NN, X1, X2)` | Copy X1(*) array members into X2(*) array. +`SUBROUTINE CKCRAY (LINE, NN, KRAY, LOUT, NDIM, NRAY, NF, KERR)` | Searches a character string, LINE, and compares the space-delimited substrings in LINE, to an array of character strings, KRAY; if a substring in LINE is located in KRAY, the index of its location in KRAY is stored in the integer array NRAY. For example, the subroutine might be called to assign Gas-phase Kinetics species indices to a given list of species names. +`SUBROUTINE CKDLIM (STRING, DELIM, I1, I2)` | Returns pointers into a character string of the first and second occurrences of a particular character. +`SUBROUTINE CKDTAB (STRING)` | Replaces any tab character in a character string with one space. +`INTEGER FUNCTION CKFRCH (STR)` | Returns the index of the first non-blank, non-tab character in a string. +`INTEGER FUNCTION CKLSCH (STR)` | Returns the index of the final non-blank, non-tab character in a string. +`SUBROUTINE CKI2CH (NUM, STR, I, KERR)` | Returns a character string representation of an integer and the character count of the string. +`INTEGER FUNCTION CKLKUP (ITEM, LIST, NLIST)` | Looks up an item in an integer list. If an item is found, it returns the first position of the item in the list. If an item is not found, this routine returns the value 0. +`SUBROUTINE CKNCMP (STR, IRAY, II, I, NF)` | Returns the first index of the character string STR if it occurs in the character string IRAY, and returns the total number of times STR occurs in IRAY. +`SUBROUTINE CKNORM (ARRAY, NN)` | Utility to normalize the real members of an array. +`SUBROUTINE CKNPAR (LINE, NPAR, LOUT, IPAR, ISTART, KERR)` | Searches a character string LINE from last to first character, to create a substring IPAR containing NPAR blank-delimited numbers; ISTART is the column of LINE containing IPAR. This allows format- free input of combined alpha-numeric data. +`SUBROUTINE CKR2CH (RNUM, STR, I, KERR)` | Returns a character string representation of a real number and the effective length of the string. +`SUBROUTINE CKSCAL (ARRAY, NN, SCAL)` | Utility to scale the real members of an array. +`INTEGER FUNCTION CKSLEN (LINE)` | Returns the effective length of a character string, that is, the index of the last character before an exclamation mark (!) indicating a comment. +`SUBROUTINE CKSNUM (LINE, NEXP, LOUT, KRAY, NN, KNUM, NVAL, RVAL, KERR)` | Search a character string, LINE, for (1) a character substring which may also appear in an array of character substrings KRAY, and (2) some number of character substrings representing numbers. In the case of (1), if the character substring appears in KRAY, KNUM is its index position. In the case of (2), the character substrings are converted to NVAL real numbers and stored in RVAL, until NEXP are converted. This allows format-free input of combined alpha-numeric data. For example, the subroutine might be called to find a Gas-phase Kinetics species index and convert the other substrings to real values. +`SUBROUTINE CKSUBS (LINE, LOUT, NDIM, SUB, NFOUND, KERR)` | Returns an array of substrings in a character string with blanks or tabs as deli miters. +`REAL FUNCTION CKSUM (ARRAY, NN)` | Return the sum of entries in a real array. +`SUBROUTINE CKXMIN (X, NN, XMIN, IMIN)` | Returns the minimum value in an array and its location in the array. +`SUBROUTINE CKXMAX (X, NN, XMAX, IMAX)` | Returns the maximum value in an array and its location in the array. +`SUBROUTINE CKXNUM (LINE, NEXP, LOUT, NVAL, RVAL, KERR)` | Searches a character string, LINE, for NEXP space-delimited substrings representing numbers, until NVAL real values are converted and stored in the array, RVAL. This allows format-free input of numerical data. For example: +`SUBROUTINE CKXTND (NDIM, NPTS, XSTR, XEND, X, F, IFLAG)` | Ensure that XSTR ![](graphics/eq13794111-5613-0060-1806-796358613253.svg) X(N) ![](graphics/eq93886591-3571-1452-0627-613334995233.svg) XEND. NPTS may be increased to add XSTR < X(1) or XEND > X(NPTS). NPTS may be decreased to drop X(N) < XSTR or X(N) > XEND. If NDIM does not allow adding a new endpoint, CKXTND replaces the endpoint and sets IFLAG=1 if new XSTR, IFLAG=2 if new XEND. + + + +[ « 4.14. Equilibrium Constants and Rate of Progress +Variables](pgfId-1068000.md) + + [Chapter 5: Quick Reference Guide to the Surface Kinetics Subroutine Library +» ](i13005api_refsurfkineticslib.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:40-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070384.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070384.md new file mode 100644 index 0000000000..b7bbcee6d8 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070384.md @@ -0,0 +1,37 @@ +# MCACON + + +``` +MCACON MCACON MCACON MCACON MCACON MCACON CACON + ********************************************** + ************************** + ****** + +SUBROUTINE MCACON (T, X, RMCWRK, CONMIX) +Returns the mixture thermal conductivity given temperature and +species mole fractions. + +INPUT +T - Real scalar, temperature. + cgs units, K +X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. +RMCWRK(*) - Real workspace array; dimension at least LENRMC. + +OUTPUT +CONMIX - Real scalar, mixture thermal conductivity. + cgs units, erg/cm*K*s +``` + +[ « Chapter 9: Alphabetical Listing of the Transport Subroutine +Library](i13005api_list_transportlib.md) + + [9.2. MCADIF » ](pgfId-1070406api.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:42-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070406api.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070406api.md new file mode 100644 index 0000000000..1d6bba202f --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070406api.md @@ -0,0 +1,75 @@ +# MCADIF + + +# MCADIF + + +``` + MCADIF MCADIF MCADIF MCADIF MCADIF MCADIF MCADIF + ********************************************** + ************************** + ****** + + SUBROUTINE MCADIF (P, T, X, RMCWRK, D) + Returns mixture-averaged diffusion coefficients given pressure, + temperature, and species mole fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T - Real scalar, temperature. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + + OUTPUT + D(*) - Real array, mixture diffusion coefficients; + dimension at least KK, the total species count. + cgs units, cm**2/s +``` + +[ « 9.1. MCACON](pgfId-1070384.md) + + [9.3. MCATDR » ](pgfId-1070431.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:42-04:00 + MCADIF MCADIF MCADIF MCADIF MCADIF MCADIF MCADIF + ********************************************** + ************************** + ****** + + SUBROUTINE MCADIF (P, T, X, RMCWRK, D) + Returns mixture-averaged diffusion coefficients given pressure, + temperature, and species mole fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T - Real scalar, temperature. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + + OUTPUT + D(*) - Real array, mixture diffusion coefficients; + dimension at least KK, the total species count. + cgs units, cm**2/s + +[ « 9.1. MCACON](pgfId-1070384.md) + + [9.3. MCATDR » ](pgfId-1070431.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:42-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070431.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070431.md new file mode 100644 index 0000000000..f5ed8f24f4 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070431.md @@ -0,0 +1,38 @@ +# MCATDR + + + + MCATDR MCATDR MCATDR MCATDR MCATDR MCATDR MCATDR + ********************************************** + ************************** + ****** + + SUBROUTINE MCATDR (T, X, IMCWRK, RMCWRK, TDR) + This subroutine computes the thermal diffusion ratios for the light + species into the mixture. + + INPUT + T - Real scalar, temperature. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + IMCWRK(*) - Integer workspace array; dimension at least LENIMC. + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + + OUTPUT + TDR(*) - Real array, thermal diffusion ratios for the species; + dimension at least KK, the total species count. + TDR(K) = 0 for any species with molecular weight less + than 5. + +[ « 9.2. MCADIF](pgfId-1070406api.md) + + [9.4. MCAVIS » ](pgfId-1070456.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:42-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070456.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070456.md new file mode 100644 index 0000000000..2e6787ef92 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070456.md @@ -0,0 +1,36 @@ +# MCAVIS + + + + MCAVIS MCAVIS MCAVIS MCAVIS MCAVIS MCAVIS MCAVIS + ********************************************** + ************************** + ****** + + SUBROUTINE MCAVIS (T, X, RMCWRK, VISMIX) + Returns mixture viscosity, given temperature and species mole + fractions. It uses modification of the Wilke semi-empirical + formulas. + + INPUT + T - Real scalar, temperature. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + + OUTPUT + VISMIX - Real scalar, mixture viscosity. + cgs units, gm/cm*s + +[ « 9.3. MCATDR](pgfId-1070431.md) + + [9.5. MCCCEX » ](pgfId-1070479.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:42-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070479.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070479.md new file mode 100644 index 0000000000..a5b5644282 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070479.md @@ -0,0 +1,41 @@ +# MCCCEX + + + + MCCCEX MCCCEX MCCCEX MCCCEX MCCCEX MCCCEX MCCCEX + ********************************************** + ************************** + ****** + + SUBROUTINE MCCCEX (K, RMCWRK, COFCON) + Gets or puts values of the fitting coefficients for the + polynomial fits to species conductivity. + + INPUT + K - Integer scalar, species index. + K > 0 gets coefficients from RMCWRK + K < 0 puts coefficients into RMCWRK + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + + If K < 1: + COFCON - Real vector of polynomial coefficients for + the species' conductivity; dimension at least NO, + usually 4. + + OUTPUT + If K > 1: + COFCON - Real vector of polynomial coefficients for + the species' conductivity; dimension at least NO, + usually 4. + +[ « 9.4. MCAVIS](pgfId-1070456.md) + + [9.6. MCCDEX » ](pgfId-1070507.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:42-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070507.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070507.md new file mode 100644 index 0000000000..d5f7f1448d --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070507.md @@ -0,0 +1,48 @@ +# MCCDEX + + + + MCCDEX MCCDEX MCCDEX MCCDEX MCCDEX MCCDEX MCCDEX + ********************************************** + + ************************** + ****** + + SUBROUTINE MCCDEX (K, KDIM, RMCWRK, COFDIF) + Gets or puts values of the fitting coefficients for the + polynomial fits to species binary diffusion coefficients. + + INPUT + K - Integer scalar, species index. + K > 0 gets coefficients from RMCWRK + K < 0 puts coefficients into RMCWRK + KDIM - First dimension for COFDIF matrix; + KDIM should be at least KK, the total number of species + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + + If K < 1: + COFDIF - Real matrix of polynomial coefficients for + the species' binary diffusion coefficient with all + other species; the first dimension is KDIM, + which should be at least KK, the total number of species; + the second dimension should be at least NO, usually 4 + + OUTPUT + If K > 1: + COFDIF - Real matrix of polynomial coefficients for + the species' binary diffusion coefficient with all + other species; the first dimension is KDIM, + which should be at least KK, the total number of species; + the second dimension should be at least NO, usually 4 + +[ « 9.5. MCCCEX](pgfId-1070479.md) + + [9.7. MCCVEX » ](pgfId-1070541.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:42-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070541.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070541.md new file mode 100644 index 0000000000..59c4d987a5 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070541.md @@ -0,0 +1,39 @@ +# MCCVEX + + + + MCCVEX MCCVEX MCCVEX MCCVEX MCCVEX MCCVEX MCCVEX + ********************************************** + ************************** + ****** + + SUBROUTINE MCCVEX (K, RMCWRK, COFVIS) + Gets or puts values of the fitting coefficients for the + polynomial fits to species viscosity. + + INPUT + K - Integer scalar, species index. + K > 0 gets coefficients from RMCWRK + K < 0 puts coefficients into RMCWRK + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + + If K < 1: + COFVIS - Real vector of polynomial coefficients for + the species' viscosity; dimension at least NO, usually 4 + + OUTPUT + If K > 1: + COFVIS - Real vector of polynomial coefficients; dimension + at least NO, usually 4 + +[ « 9.6. MCCDEX](pgfId-1070507.md) + + [9.8. MCINIT » ](pgfId-1070567.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:42-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070567.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070567.md new file mode 100644 index 0000000000..c8741b0ba2 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070567.md @@ -0,0 +1,51 @@ +# MCINIT + + + + MCINIT MCINIT MCINIT MCINIT MCINIT MCINIT MCINIT + ********************************************** + ************************** + ****** + + SUBROUTINE MCINIT (LINKMC, LOUT, LENIMC, LENRMC, IMCWRK, RMCWRK, + IFLAG) + This subroutine reads the transport linkfile from the fitting code + and creates the internal storage and work arrays, IMCWRK(*) and + RMCWRK(*). MCINIT must be called before any other transport + subroutine is called. It must be called after the CHEMKIN package + is initialized. + + INPUT + LINKMC - Integer scalar, transport linkfile input unit number. + LOUT - Integer scalar, formatted output file unit number. + LENIMC - Integer scalar, minimum dimension of the integer + storage and workspace array IMCWRK(*); + LENIMC must be at least: + LENIMC = 4*KK + NLITE, + where KK is the total species count, and + NLITE is the number of species with molecular + weight less than 5. + LENRMC - Integer scalar, minimum dimension of the real storage + and workspace array RMCWRK(*); + LENRMC must be at least: + LENRMC = KK*(19 + 2*NO + NO*NLITE) + (NO+15)*KK**2, + where KK is the total species count, + NO is the order of the polynomial fits (NO=4), + NLITE is the number of species with molecular + weight less than 5. + + OUTPUT + IMCWRK(*) - Integer workspace array; dimension at least LENIMC. + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + +[ « 9.7. MCCVEX](pgfId-1070541.md) + + [9.9. MCLEN » ](pgfId-1070605.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:42-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070605.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070605.md new file mode 100644 index 0000000000..bbef4e83e4 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070605.md @@ -0,0 +1,35 @@ +# MCLEN + + + + MCLEN MCLEN MCLEN MCLEN MCLEN MCLEN MCLEN + ********************************************** + ************************** + ****** + + SUBROUTINE MCLEN (LINKMC, LOUT, LI, LR, IFLAG) + Returns the lengths required for work arrays. + + INPUT + LINKMC - Integer scalar, input file unit for the linkfile. + LOUT - Integer scalar, formatted output file unit. + + OUTPUT + LI - Integer scalar, minimum length required for the + integer work array. + LR - Integer scalar, minimum length required for the + real work array. + IFLAG - Integer scalar, indicates successful reading of + linkfile; IFLAG>0 indicates error type. + +[ « 9.8. MCINIT](pgfId-1070567.md) + + [9.10. MCMCDT » ](pgfId-1070627.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:42-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070627.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070627.md new file mode 100644 index 0000000000..1f541cf86b --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070627.md @@ -0,0 +1,51 @@ +# MCMCDT + + + + MCMCDT MCMCDT MCMCDT MCMCDT MCMCDT MCMCDT MCMCDT + ********************************************** + ************************** + ****** + + SUBROUTINE MCMCDT (P, T, X, IMCWRK, RMCWRK, ICKWRK, CKWRK, + DT, COND) + Returns thermal diffusion coefficients, and mixture thermal + conductivities, given pressure, temperature, and mole fraction. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T - Real scalar, temperature. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + + IMCWRK(*) - Integer TRANSPORT workspace array; + dimension at least LENIMC. + RMCWRK(*) - Real TRANSPORT workspace array; + dimension at least LENRMC. + ICKWRK(*) - Integer CHEMKIN workspace array; + dimension at least LENICK. + RCKWRK(*) - Real CHEMKIN workspace array; + dimension at least LENRCK. + + OUTPUT + DT(*) - Real array, thermal multicomponent diffusion + coefficients; + dimension at least KK, the total species count. + cgs units, gm/(cm*sec) + CGS UNITS - GM/(CM*SEC) + COND - Real scalar, mixture thermal conductivity. + cgs units, erg/(cm*K*s) + +[ « 9.9. MCLEN](pgfId-1070605.md) + + [9.11. MCMDIF » ](pgfId-1070665.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:42-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070665.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070665.md new file mode 100644 index 0000000000..c05c2e3e85 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070665.md @@ -0,0 +1,43 @@ +# MCMDIF + + + + MCMDIF MCMDIF MCMDIF MCMDIF MCMDIF MCMDIF MCMDIF + ********************************************** + ************************** + ****** + + SUBROUTINE MCMDIF (P, T, X, KDIM, IMCWRK, RMCWRK, D) + Returns the ordinary multicomponent diffusion coefficients, + given pressure, temperature, and mole fractions. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T - Real scalar, temperature. + cgs units, K + X(*) - Real array, mole fractions of the mixture; + dimension at least KK, the total species count. + KDIM - Integer scalar, actual first dimension of D(KDIM,KK); + KDIM must be at least KK, the total species count. + IMCWRK(*) - Integer workspace array; dimension at least LENIMC. + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + + OUTPUT + D(*,*) - Real matrix, ordinary multicomponent diffusion + coefficients; + dimension at least KK, the total species count, for + both the first and second dimensions. + cgs units, cm**2/s + +[ « 9.10. MCMCDT](pgfId-1070627.md) + + [9.12. MCPNT » ](pgfId-1070695.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:42-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070695.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070695.md new file mode 100644 index 0000000000..c7bb911b72 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070695.md @@ -0,0 +1,39 @@ +# MCPNT + + + + MCPNT MCPNT MCPNT MCPNT MCPNT MCPNT MCPNT + ********************************************** + ************************** + ****** + + SUBROUTINE MCPNT (LSAVE, LOUT, NPOINT, V, P, LI, LR, IERR) + Reads from a binary file information about a Transport linkfile, + pointers for the Transport Library, and returns lengths of work + arrays. + + INPUT + LSAVE - Integer scalar, input unit for binary data file. + LOUT - Integer scalar, formatted output file unit. + + OUTPUT + NPOINT - Integer scalar, total number of pointers. + V - Real scalar, version number of the Transport linkfile. + P - Character string, machine precision of the linkfile. + LI - Integer scalar, minimum dimension required for integer + workspace array. + LR - Integer scalar, minimumm dimension required for real + workspace array. + IERR - Logical, error flag. + +[ « 9.11. MCMDIF](pgfId-1070665.md) + + [9.13. MCPRAM » ](pgfId-1070721api.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:42-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070721api.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070721api.md new file mode 100644 index 0000000000..fd790b9ae6 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070721api.md @@ -0,0 +1,52 @@ +# MCPRAM + + + + MCPRAM MCPRAM MCPRAM MCPRAM MCPRAM MCPRAM MCPRAM + ********************************************** + ************************** + ****** + + SUBROUTINE MCPRAM (IMCWRK, RMCWRK, EPS, SIG, DIP, POL, ZROT, NLIN) + Returns the arrays of molecular parameters as read from the + transport database. + + INPUT + IMCWRK(*) - Integer workspace array; dimension at least LENIMC. + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + + OUTPUT + EPS(*) - Real array, Lennard-Jones Potential well depths for + the species; + dimension at least KK, the total species count. + cgs units, K + SIG(*) - Real array, Lennary-Jones collision diameters for + the species; + dimension at least KK, the total species count. + cgs units, Angstrom + DIP(*) - Real array, dipole moments for the species; + dimension at least KK, the total species count. + cgs units, Debye + POL(*) - Real array, polarizabilities for the species; + dimension at least KK, the total species count. + cgs units, Angstrom**3 + ZROT(*) - Real array, rotational collision numbers evaluated at + 298K for the species; + dimension at least KK, the total species count. + NLIN(*) - Integer array, flags for species linearity; + dimension at least KK, the total species count. + NLIN=0, single atom, + NLIN=1, linear molecule, + NLIN=2, linear molecule. + +[ « 9.12. MCPNT](pgfId-1070695.md) + + [9.14. MCREWR » ](pgfId-1070760.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:42-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070760.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070760.md new file mode 100644 index 0000000000..b150a1de92 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070760.md @@ -0,0 +1,33 @@ +# MCREWR + + + + MCREWR MCREWR MCREWR MCREWR MCREWR MCREWR MCREWR + ********************************************** + ************************** + ****** + + SUBROUTINE MCREWR (LINKMC, LOUT, IMCWRK, RMCWRK, IFLAG) + This subroutine writes a new the transport linkfile from + the data stored in the integer and real work arrays, + IMCWRK(*) and RMCWRK(*). + + INPUT + LINKMC - Integer scalar, transport linkfile output unit number. + LOUT - Integer scalar, formatted output file unit number. + + OUTPUT + IMCWRK(*) - Integer workspace array; dimension at least LENIMC. + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + +[ « 9.13. MCPRAM](pgfId-1070721api.md) + + [9.15. MCSAVE » ](pgfId-1070780.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:42-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070780.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070780.md new file mode 100644 index 0000000000..3402084e19 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070780.md @@ -0,0 +1,30 @@ +# MCSAVE + + + + MCSAVE MCSAVE MCSAVE MCSAVE MCSAVE MCSAVE MCSAVE + ********************************************** + ************************** + ****** + + SUBROUTINE MCSAVE (LOUT, LSAVE, IMCWRK, RMCWRK) + Writes to a binary file information about a Transport linkfile, + pointers for the Transport library, and Transport work arrays. + + INPUT + LOUT - Integer scalar, formatted output file unit number. + LSAVE - Integer scalar, unformatted output file unit number. + IMCWRK(*) - Integer workspace array; dimension at least LENIMC. + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + +[ « 9.14. MCREWR](pgfId-1070760.md) + + [9.16. MCSCON » ](pgfId-1070797.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:42-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070797.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070797.md new file mode 100644 index 0000000000..7bc4809a5b --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070797.md @@ -0,0 +1,33 @@ +# MCSCON + + + + MCSCON MCSCON MCSCON MCSCON MCSCON MCSCON MCSCON + ********************************************** + ************************** + ****** + + SUBROUTINE MCSCON (T, RMCWRK, CON) + Returns the array of pur species conductivities given temperature. + + INPUT + T - Real scalar, temperature. + cgs units, K + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + + OUTPUT + CON(*) - Real array, species thermal conductivities; + dimension at least KK, the total species count. + cgs units, erg/cm*K*s + +[ « 9.15. MCSAVE](pgfId-1070780.md) + + [9.17. MCSDIF » ](pgfId-1070817.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:42-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070817.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070817.md new file mode 100644 index 0000000000..cd376ce29d --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070817.md @@ -0,0 +1,40 @@ +# MCSDIF + + + + MCSDIF MCSDIF MCSDIF MCSDIF MCSDIF MCSDIF MCSDIF + ********************************************** + ************************** + ****** + + SUBROUTINE MCSDIF (P, T, KDIM, RMCWRK, DJK) + Returns the binary diffusion coefficients given pressure and + temperature. + + INPUT + P - Real scalar, pressure. + cgs units, dynes/cm**2 + T - Real scalar, temperature. + cgs units, K + KDIM - Integer scalar, actual first dimension of DJK(KDIM,KK). + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + + OUTPUT + DJK(*,*) - Real matrix, binary diffusion coefficients; + dimension at least KK, the total species count, for + both the first and second dimensions. + cgs units, cm**2/s + CJK(J,K) is the diffusion coefficient of species J + in species K. + +[ « 9.16. MCSCON](pgfId-1070797.md) + + [9.18. MCSVIS » ](pgfId-1070844.md) + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:42-04:00 + diff --git a/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070844.md b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070844.md new file mode 100644 index 0000000000..91ac02c808 --- /dev/null +++ b/2026R1/chemkin_26-r1/articles/transformed_pgfId-1070844.md @@ -0,0 +1,33 @@ +# MCSVIS + + + + MCSVIS MCSVIS MCSVIS MCSVIS MCSVIS MCSVIS MCSVIS + ********************************************** + ************************** + ****** + + SUBROUTINE MCSVIS (T, RMCWRK, VIS) + Returns the array of pure species viscosities, given temperature. + + INPUT + T - Real scalar, temperature. + cgs units, K + RMCWRK(*) - Real workspace array; dimension at least LENRMC. + + OUTPUT + VIS(*) - Real array, species viscosities; + dimension at least KK, the total species count. + cgs units, gm/cm*s + +[ « 9.17. MCSDIF](pgfId-1070817.md) + + + +Contains proprietary and confidential information of ANSYS, Inc. and its +subsidiaries and affiliates. + +Release 2026 R1 - (C) ANSYS, Inc. All rights reserved. + +Draft Published: 2024-07-05T13:14:42-04:00 + diff --git a/2026R1/chemkin_26-r1/docfx.json b/2026R1/chemkin_26-r1/docfx.json new file mode 100644 index 0000000000..c83f85a10c --- /dev/null +++ b/2026R1/chemkin_26-r1/docfx.json @@ -0,0 +1,67 @@ +{ + "metadata": [ + { + "src": [ + { + "files": [ + "src/**.csproj" + ] + } + ], + "dest": "api", + "disableGitFeatures": false, + "disableDefaultFilter": false + } + ], + "build": { + "content": [ + { + "files": [ + "api/**.yml", + "api/index.md" + ] + }, + { + "files": [ + "articles/**.md", + "articles/**/toc.yml", + "toc.yml", + "*.md" + ] + } + ], + "resource": [ + { + "files": [ + "**/*.png", + "**/*.jpg", + "**/*.gif", + "**/*.svg" + ] + } + ], + "overwrite": [ + { + "files": [ + "apidoc/**.md" + ], + "exclude": [ + "obj/**", + "_site/**" + ] + } + ], + "dest": "_site", + "globalMetadataFiles": [], + "fileMetadataFiles": [], + "template": [ + "default" + ], + "postProcessors": [], + "markdownEngineName": "markdig", + "noLangKeyword": false, + "keepFileLink": false, + "cleanupCacheHistory": false, + "disableGitFeatures": false + } +} \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/index.md b/2026R1/chemkin_26-r1/index.md new file mode 100644 index 0000000000..3ae2506361 --- /dev/null +++ b/2026R1/chemkin_26-r1/index.md @@ -0,0 +1,4 @@ +# This is the **HOMEPAGE**. +Refer to [Markdown](http://daringfireball.net/projects/markdown/) for how to write markdown files. +## Quick Start Notes: +1. Add images to the *images* folder if the file is referencing an image. diff --git a/2026R1/chemkin_26-r1/styles/Google/AMPM.yml b/2026R1/chemkin_26-r1/styles/Google/AMPM.yml new file mode 100644 index 0000000000..fbdc6e4f84 --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/AMPM.yml @@ -0,0 +1,9 @@ +extends: existence +message: "Use 'AM' or 'PM' (preceded by a space)." +link: 'https://developers.google.com/style/word-list' +level: error +nonword: true +tokens: + - '\d{1,2}[AP]M' + - '\d{1,2} ?[ap]m' + - '\d{1,2} ?[aApP]\.[mM]\.' diff --git a/2026R1/chemkin_26-r1/styles/Google/Acronyms.yml b/2026R1/chemkin_26-r1/styles/Google/Acronyms.yml new file mode 100644 index 0000000000..f41af0189b --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/Acronyms.yml @@ -0,0 +1,64 @@ +extends: conditional +message: "Spell out '%s', if it's unfamiliar to the audience." +link: 'https://developers.google.com/style/abbreviations' +level: suggestion +ignorecase: false +# Ensures that the existence of 'first' implies the existence of 'second'. +first: '\b([A-Z]{3,5})\b' +second: '(?:\b[A-Z][a-z]+ )+\(([A-Z]{3,5})\)' +# ... with the exception of these: +exceptions: + - API + - ASP + - CLI + - CPU + - CSS + - CSV + - DEBUG + - DOM + - DPI + - FAQ + - GCC + - GDB + - GET + - GPU + - GTK + - GUI + - HTML + - HTTP + - HTTPS + - IDE + - JAR + - JSON + - JSX + - LESS + - LLDB + - NET + - NOTE + - NVDA + - OSS + - PATH + - PDF + - PHP + - POST + - RAM + - REPL + - RSA + - SCM + - SCSS + - SDK + - SQL + - SSH + - SSL + - SVG + - TBD + - TCP + - TODO + - URI + - URL + - USB + - UTF + - XML + - XSS + - YAML + - ZIP diff --git a/2026R1/chemkin_26-r1/styles/Google/Colons.yml b/2026R1/chemkin_26-r1/styles/Google/Colons.yml new file mode 100644 index 0000000000..99363fbd46 --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/Colons.yml @@ -0,0 +1,8 @@ +extends: existence +message: "'%s' should be in lowercase." +link: 'https://developers.google.com/style/colons' +nonword: true +level: warning +scope: sentence +tokens: + - ':\s[A-Z]' diff --git a/2026R1/chemkin_26-r1/styles/Google/Contractions.yml b/2026R1/chemkin_26-r1/styles/Google/Contractions.yml new file mode 100644 index 0000000000..4f6fd5d489 --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/Contractions.yml @@ -0,0 +1,30 @@ +extends: substitution +message: "Use '%s' instead of '%s'." +link: 'https://developers.google.com/style/contractions' +level: suggestion +ignorecase: true +action: + name: replace +swap: + are not: aren't + cannot: can't + could not: couldn't + did not: didn't + do not: don't + does not: doesn't + has not: hasn't + have not: haven't + how is: how's + is not: isn't + it is: it's + should not: shouldn't + that is: that's + they are: they're + was not: wasn't + we are: we're + we have: we've + were not: weren't + what is: what's + when is: when's + where is: where's + will not: won't diff --git a/2026R1/chemkin_26-r1/styles/Google/DateFormat.yml b/2026R1/chemkin_26-r1/styles/Google/DateFormat.yml new file mode 100644 index 0000000000..e9d227fa13 --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/DateFormat.yml @@ -0,0 +1,9 @@ +extends: existence +message: "Use 'July 31, 2016' format, not '%s'." +link: 'https://developers.google.com/style/dates-times' +ignorecase: true +level: error +nonword: true +tokens: + - '\d{1,2}(?:\.|/)\d{1,2}(?:\.|/)\d{4}' + - '\d{1,2} (?:Jan(?:uary)?|Feb(?:ruary)?|Mar(?:ch)?|Apr(?:il)|May|Jun(?:e)|Jul(?:y)|Aug(?:ust)|Sep(?:tember)?|Oct(?:ober)|Nov(?:ember)?|Dec(?:ember)?) \d{4}' diff --git a/2026R1/chemkin_26-r1/styles/Google/Ellipses.yml b/2026R1/chemkin_26-r1/styles/Google/Ellipses.yml new file mode 100644 index 0000000000..1e070517bf --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/Ellipses.yml @@ -0,0 +1,9 @@ +extends: existence +message: "In general, don't use an ellipsis." +link: 'https://developers.google.com/style/ellipses' +nonword: true +level: warning +action: + name: remove +tokens: + - '\.\.\.' diff --git a/2026R1/chemkin_26-r1/styles/Google/EmDash.yml b/2026R1/chemkin_26-r1/styles/Google/EmDash.yml new file mode 100644 index 0000000000..5a81fb0942 --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/EmDash.yml @@ -0,0 +1,13 @@ +extends: existence +message: "Don't put a space before or after a dash." +link: "https://developers.google.com/style/dashes" +nonword: true +level: error +action: + name: edit + params: + - trim + - " " +tokens: + - '\s[—–]\s' + diff --git a/2026R1/chemkin_26-r1/styles/Google/Exclamation.yml b/2026R1/chemkin_26-r1/styles/Google/Exclamation.yml new file mode 100644 index 0000000000..b4e4a1f7e9 --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/Exclamation.yml @@ -0,0 +1,12 @@ +extends: existence +message: "Don't use exclamation points in text." +link: "https://developers.google.com/style/exclamation-points" +nonword: true +level: error +action: + name: edit + params: + - trim_right + - "!" +tokens: + - '\w+!(?:\s|$)' diff --git a/2026R1/chemkin_26-r1/styles/Google/FirstPerson.yml b/2026R1/chemkin_26-r1/styles/Google/FirstPerson.yml new file mode 100644 index 0000000000..0b7b8828ca --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/FirstPerson.yml @@ -0,0 +1,13 @@ +extends: existence +message: "Avoid first-person pronouns such as '%s'." +link: 'https://developers.google.com/style/pronouns#personal-pronouns' +ignorecase: true +level: warning +nonword: true +tokens: + - (?:^|\s)I\s + - (?:^|\s)I,\s + - \bI'm\b + - \bme\b + - \bmy\b + - \bmine\b diff --git a/2026R1/chemkin_26-r1/styles/Google/Gender.yml b/2026R1/chemkin_26-r1/styles/Google/Gender.yml new file mode 100644 index 0000000000..c8486181d6 --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/Gender.yml @@ -0,0 +1,9 @@ +extends: existence +message: "Don't use '%s' as a gender-neutral pronoun." +link: 'https://developers.google.com/style/pronouns#gender-neutral-pronouns' +level: error +ignorecase: true +tokens: + - he/she + - s/he + - \(s\)he diff --git a/2026R1/chemkin_26-r1/styles/Google/GenderBias.yml b/2026R1/chemkin_26-r1/styles/Google/GenderBias.yml new file mode 100644 index 0000000000..36f5a3f86e --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/GenderBias.yml @@ -0,0 +1,43 @@ +extends: substitution +message: "Consider using '%s' instead of '%s'." +ignorecase: true +link: "https://developers.google.com/style/inclusive-documentation" +level: error +action: + name: replace +swap: + (?:alumna|alumnus): graduate + (?:alumnae|alumni): graduates + air(?:m[ae]n|wom[ae]n): pilot(s) + anchor(?:m[ae]n|wom[ae]n): anchor(s) + authoress: author + camera(?:m[ae]n|wom[ae]n): camera operator(s) + door(?:m[ae]|wom[ae]n): concierge(s) + draft(?:m[ae]n|wom[ae]n): drafter(s) + fire(?:m[ae]n|wom[ae]n): firefighter(s) + fisher(?:m[ae]n|wom[ae]n): fisher(s) + fresh(?:m[ae]n|wom[ae]n): first-year student(s) + garbage(?:m[ae]n|wom[ae]n): waste collector(s) + lady lawyer: lawyer + ladylike: courteous + mail(?:m[ae]n|wom[ae]n): mail carriers + man and wife: husband and wife + man enough: strong enough + mankind: human kind|humanity + manmade: manufactured + manpower: personnel + middle(?:m[ae]n|wom[ae]n): intermediary + news(?:m[ae]n|wom[ae]n): journalist(s) + ombuds(?:man|woman): ombuds + oneupmanship: upstaging + poetess: poet + police(?:m[ae]n|wom[ae]n): police officer(s) + repair(?:m[ae]n|wom[ae]n): technician(s) + sales(?:m[ae]n|wom[ae]n): salesperson or sales people + service(?:m[ae]n|wom[ae]n): soldier(s) + steward(?:ess)?: flight attendant + tribes(?:m[ae]n|wom[ae]n): tribe member(s) + waitress: waiter + woman doctor: doctor + woman scientist[s]?: scientist(s) + work(?:m[ae]n|wom[ae]n): worker(s) diff --git a/2026R1/chemkin_26-r1/styles/Google/HeadingPunctuation.yml b/2026R1/chemkin_26-r1/styles/Google/HeadingPunctuation.yml new file mode 100644 index 0000000000..c1729868b6 --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/HeadingPunctuation.yml @@ -0,0 +1,13 @@ +extends: existence +message: "Don't put a period at the end of a heading." +link: "https://developers.google.com/style/capitalization#capitalization-in-titles-and-headings" +nonword: true +level: warning +scope: heading +action: + name: edit + params: + - trim_right + - "." +tokens: + - '[a-z0-9][.]\s*$' diff --git a/2026R1/chemkin_26-r1/styles/Google/Headings.yml b/2026R1/chemkin_26-r1/styles/Google/Headings.yml new file mode 100644 index 0000000000..c8d5be26e1 --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/Headings.yml @@ -0,0 +1,29 @@ +extends: capitalization +message: "'%s' should use sentence-style capitalization." +link: "https://developers.google.com/style/capitalization#capitalization-in-titles-and-headings" +level: warning +scope: heading +match: $sentence +indicators: + - ":" +exceptions: + - Azure + - CLI + - Cosmos + - Docker + - Emmet + - gRPC + - I + - Kubernetes + - Linux + - macOS + - Marketplace + - MongoDB + - REPL + - Studio + - TypeScript + - URLs + - Visual + - VS + - Windows + - JSON diff --git a/2026R1/chemkin_26-r1/styles/Google/Latin.yml b/2026R1/chemkin_26-r1/styles/Google/Latin.yml new file mode 100644 index 0000000000..ca03b9154b --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/Latin.yml @@ -0,0 +1,11 @@ +extends: substitution +message: "Use '%s' instead of '%s'." +link: 'https://developers.google.com/style/abbreviations' +ignorecase: true +level: error +nonword: true +action: + name: replace +swap: + '\b(?:eg|e\.g\.)(?=[\s,;])': for example + '\b(?:ie|i\.e\.)(?=[\s,;])': that is diff --git a/2026R1/chemkin_26-r1/styles/Google/LyHyphens.yml b/2026R1/chemkin_26-r1/styles/Google/LyHyphens.yml new file mode 100644 index 0000000000..50dacb40db --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/LyHyphens.yml @@ -0,0 +1,14 @@ +extends: existence +message: "'%s' doesn't need a hyphen." +link: "https://developers.google.com/style/hyphens" +level: error +ignorecase: false +nonword: true +action: + name: edit + params: + - regex + - "-" + - " " +tokens: + - '\b[^\s-]+ly-\w+\b' diff --git a/2026R1/chemkin_26-r1/styles/Google/OptionalPlurals.yml b/2026R1/chemkin_26-r1/styles/Google/OptionalPlurals.yml new file mode 100644 index 0000000000..4a8767d6f5 --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/OptionalPlurals.yml @@ -0,0 +1,12 @@ +extends: existence +message: "Don't use plurals in parentheses such as in '%s'." +link: "https://developers.google.com/style/plurals-parentheses" +level: error +nonword: true +action: + name: edit + params: + - trim_right + - "(s)" +tokens: + - '\b\w+\(s\)' diff --git a/2026R1/chemkin_26-r1/styles/Google/Ordinal.yml b/2026R1/chemkin_26-r1/styles/Google/Ordinal.yml new file mode 100644 index 0000000000..d1ac7d27e8 --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/Ordinal.yml @@ -0,0 +1,7 @@ +extends: existence +message: "Spell out all ordinal numbers ('%s') in text." +link: 'https://developers.google.com/style/numbers' +level: error +nonword: true +tokens: + - \d+(?:st|nd|rd|th) diff --git a/2026R1/chemkin_26-r1/styles/Google/OxfordComma.yml b/2026R1/chemkin_26-r1/styles/Google/OxfordComma.yml new file mode 100644 index 0000000000..b9ba21ebb2 --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/OxfordComma.yml @@ -0,0 +1,7 @@ +extends: existence +message: "Use the Oxford comma in '%s'." +link: 'https://developers.google.com/style/commas' +scope: sentence +level: warning +tokens: + - '(?:[^,]+,){1,}\s\w+\s(?:and|or)' diff --git a/2026R1/chemkin_26-r1/styles/Google/Parens.yml b/2026R1/chemkin_26-r1/styles/Google/Parens.yml new file mode 100644 index 0000000000..3b8711d0c8 --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/Parens.yml @@ -0,0 +1,7 @@ +extends: existence +message: "Use parentheses judiciously." +link: 'https://developers.google.com/style/parentheses' +nonword: true +level: suggestion +tokens: + - '\(.+\)' diff --git a/2026R1/chemkin_26-r1/styles/Google/Passive.yml b/2026R1/chemkin_26-r1/styles/Google/Passive.yml new file mode 100644 index 0000000000..3265890e52 --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/Passive.yml @@ -0,0 +1,184 @@ +extends: existence +link: 'https://developers.google.com/style/voice' +message: "In general, use active voice instead of passive voice ('%s')." +ignorecase: true +level: suggestion +raw: + - \b(am|are|were|being|is|been|was|be)\b\s* +tokens: + - '[\w]+ed' + - awoken + - beat + - become + - been + - begun + - bent + - beset + - bet + - bid + - bidden + - bitten + - bled + - blown + - born + - bought + - bound + - bred + - broadcast + - broken + - brought + - built + - burnt + - burst + - cast + - caught + - chosen + - clung + - come + - cost + - crept + - cut + - dealt + - dived + - done + - drawn + - dreamt + - driven + - drunk + - dug + - eaten + - fallen + - fed + - felt + - fit + - fled + - flown + - flung + - forbidden + - foregone + - forgiven + - forgotten + - forsaken + - fought + - found + - frozen + - given + - gone + - gotten + - ground + - grown + - heard + - held + - hidden + - hit + - hung + - hurt + - kept + - knelt + - knit + - known + - laid + - lain + - leapt + - learnt + - led + - left + - lent + - let + - lighted + - lost + - made + - meant + - met + - misspelt + - mistaken + - mown + - overcome + - overdone + - overtaken + - overthrown + - paid + - pled + - proven + - put + - quit + - read + - rid + - ridden + - risen + - run + - rung + - said + - sat + - sawn + - seen + - sent + - set + - sewn + - shaken + - shaven + - shed + - shod + - shone + - shorn + - shot + - shown + - shrunk + - shut + - slain + - slept + - slid + - slit + - slung + - smitten + - sold + - sought + - sown + - sped + - spent + - spilt + - spit + - split + - spoken + - spread + - sprung + - spun + - stolen + - stood + - stridden + - striven + - struck + - strung + - stuck + - stung + - stunk + - sung + - sunk + - swept + - swollen + - sworn + - swum + - swung + - taken + - taught + - thought + - thrived + - thrown + - thrust + - told + - torn + - trodden + - understood + - upheld + - upset + - wed + - wept + - withheld + - withstood + - woken + - won + - worn + - wound + - woven + - written + - wrung diff --git a/2026R1/chemkin_26-r1/styles/Google/Periods.yml b/2026R1/chemkin_26-r1/styles/Google/Periods.yml new file mode 100644 index 0000000000..d24a6a6c03 --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/Periods.yml @@ -0,0 +1,7 @@ +extends: existence +message: "Don't use periods with acronyms or initialisms such as '%s'." +link: 'https://developers.google.com/style/abbreviations' +level: error +nonword: true +tokens: + - '\b(?:[A-Z]\.){3,}' diff --git a/2026R1/chemkin_26-r1/styles/Google/Quotes.yml b/2026R1/chemkin_26-r1/styles/Google/Quotes.yml new file mode 100644 index 0000000000..3cb6f1abd1 --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/Quotes.yml @@ -0,0 +1,7 @@ +extends: existence +message: "Commas and periods go inside quotation marks." +link: 'https://developers.google.com/style/quotation-marks' +level: error +nonword: true +tokens: + - '"[^"]+"[.,?]' diff --git a/2026R1/chemkin_26-r1/styles/Google/Ranges.yml b/2026R1/chemkin_26-r1/styles/Google/Ranges.yml new file mode 100644 index 0000000000..3ec045e777 --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/Ranges.yml @@ -0,0 +1,7 @@ +extends: existence +message: "Don't add words such as 'from' or 'between' to describe a range of numbers." +link: 'https://developers.google.com/style/hyphens' +nonword: true +level: warning +tokens: + - '(?:from|between)\s\d+\s?-\s?\d+' diff --git a/2026R1/chemkin_26-r1/styles/Google/Semicolons.yml b/2026R1/chemkin_26-r1/styles/Google/Semicolons.yml new file mode 100644 index 0000000000..bb8b85b420 --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/Semicolons.yml @@ -0,0 +1,8 @@ +extends: existence +message: "Use semicolons judiciously." +link: 'https://developers.google.com/style/semicolons' +nonword: true +scope: sentence +level: suggestion +tokens: + - ';' diff --git a/2026R1/chemkin_26-r1/styles/Google/Slang.yml b/2026R1/chemkin_26-r1/styles/Google/Slang.yml new file mode 100644 index 0000000000..63f4c248a8 --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/Slang.yml @@ -0,0 +1,11 @@ +extends: existence +message: "Don't use internet slang abbreviations such as '%s'." +link: 'https://developers.google.com/style/abbreviations' +ignorecase: true +level: error +tokens: + - 'tl;dr' + - ymmv + - rtfm + - imo + - fwiw diff --git a/2026R1/chemkin_26-r1/styles/Google/Spacing.yml b/2026R1/chemkin_26-r1/styles/Google/Spacing.yml new file mode 100644 index 0000000000..66e45a6b72 --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/Spacing.yml @@ -0,0 +1,10 @@ +extends: existence +message: "'%s' should have one space." +link: 'https://developers.google.com/style/sentence-spacing' +level: error +nonword: true +action: + name: remove +tokens: + - '[a-z][.?!] {2,}[A-Z]' + - '[a-z][.?!][A-Z]' diff --git a/2026R1/chemkin_26-r1/styles/Google/Spelling.yml b/2026R1/chemkin_26-r1/styles/Google/Spelling.yml new file mode 100644 index 0000000000..527ac07d31 --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/Spelling.yml @@ -0,0 +1,10 @@ +extends: existence +message: "In general, use American spelling instead of '%s'." +link: 'https://developers.google.com/style/spelling' +ignorecase: true +level: warning +tokens: + - '(?:\w+)nised?' + - 'colour' + - 'labour' + - 'centre' diff --git a/2026R1/chemkin_26-r1/styles/Google/Units.yml b/2026R1/chemkin_26-r1/styles/Google/Units.yml new file mode 100644 index 0000000000..53522ab2de --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/Units.yml @@ -0,0 +1,8 @@ +extends: existence +message: "Put a nonbreaking space between the number and the unit in '%s'." +link: "https://developers.google.com/style/units-of-measure" +nonword: true +level: error +tokens: + - \b\d+(?:B|kB|MB|GB|TB) + - \b\d+(?:ns|ms|s|min|h|d) diff --git a/2026R1/chemkin_26-r1/styles/Google/We.yml b/2026R1/chemkin_26-r1/styles/Google/We.yml new file mode 100644 index 0000000000..c7ac7d3622 --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/We.yml @@ -0,0 +1,11 @@ +extends: existence +message: "Try to avoid using first-person plural like '%s'." +link: 'https://developers.google.com/style/pronouns#personal-pronouns' +level: warning +ignorecase: true +tokens: + - we + - we'(?:ve|re) + - ours? + - us + - let's diff --git a/2026R1/chemkin_26-r1/styles/Google/Will.yml b/2026R1/chemkin_26-r1/styles/Google/Will.yml new file mode 100644 index 0000000000..128a918362 --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/Will.yml @@ -0,0 +1,7 @@ +extends: existence +message: "Avoid using '%s'." +link: 'https://developers.google.com/style/tense' +ignorecase: true +level: warning +tokens: + - will diff --git a/2026R1/chemkin_26-r1/styles/Google/WordList.yml b/2026R1/chemkin_26-r1/styles/Google/WordList.yml new file mode 100644 index 0000000000..b3c6a403c0 --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/WordList.yml @@ -0,0 +1,80 @@ +extends: substitution +message: "Use '%s' instead of '%s'." +link: "https://developers.google.com/style/word-list" +level: warning +ignorecase: false +action: + name: replace +swap: + "(?:API Console|dev|developer) key": API key + "(?:cell ?phone|smart ?phone)": phone|mobile phone + "(?:dev|developer|APIs) console": API console + "(?:e-mail|Email|E-mail)": email + "(?:file ?path|path ?name)": path + "(?:kill|terminate|abort)": stop|exit|cancel|end + "(?:OAuth ?2|Oauth)": OAuth 2.0 + "(?:ok|Okay)": OK|okay + "(?:WiFi|wifi)": Wi-Fi + '[\.]+apk': APK + '3\-D': 3D + 'Google (?:I\-O|IO)': Google I/O + "tap (?:&|and) hold": touch & hold + "un(?:check|select)": clear + above: preceding + account name: username + action bar: app bar + admin: administrator + Ajax: AJAX + a\.k\.a|aka: or|also known as + Android device: Android-powered device + android: Android + API explorer: APIs Explorer + application: app + approx\.: approximately + authN: authentication + authZ: authorization + autoupdate: automatically update + cellular data: mobile data + cellular network: mobile network + chapter: documents|pages|sections + check box: checkbox + CLI: command-line tool + click on: click|click in + Cloud: Google Cloud Platform|GCP + Container Engine: Kubernetes Engine + content type: media type + curated roles: predefined roles + data are: data is + Developers Console: Google API Console|API Console + disabled?: turn off|off + ephemeral IP address: ephemeral external IP address + fewer data: less data + file name: filename + firewalls: firewall rules + functionality: capability|feature + Google account: Google Account + Google accounts: Google Accounts + Googling: search with Google + grayed-out: unavailable + HTTPs: HTTPS + in order to: to + ingest: import|load + k8s: Kubernetes + long press: touch & hold + network IP address: internal IP address + omnibox: address bar + open-source: open source + overview screen: recents screen + regex: regular expression + SHA1: SHA-1|HAS-SHA1 + sign into: sign in to + sign-?on: single sign-on + static IP address: static external IP address + stylesheet: style sheet + synch: sync + tablename: table name + tablet: device + touch: tap + url: URL + vs\.: versus + World Wide Web: web diff --git a/2026R1/chemkin_26-r1/styles/Google/meta.json b/2026R1/chemkin_26-r1/styles/Google/meta.json new file mode 100644 index 0000000000..a5da2a8480 --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/Google/meta.json @@ -0,0 +1,4 @@ +{ + "feed": "https://github.com/errata-ai/Google/releases.atom", + "vale_version": ">=1.0.0" +} diff --git a/2026R1/chemkin_26-r1/styles/Google/vocab.txt b/2026R1/chemkin_26-r1/styles/Google/vocab.txt new file mode 100644 index 0000000000..e69de29bb2 diff --git a/2026R1/chemkin_26-r1/styles/config/vocabularies/ansys/accept.txt b/2026R1/chemkin_26-r1/styles/config/vocabularies/ansys/accept.txt new file mode 100644 index 0000000000..b5358db6b6 --- /dev/null +++ b/2026R1/chemkin_26-r1/styles/config/vocabularies/ansys/accept.txt @@ -0,0 +1,6 @@ +Ansys +ANSYS +Chemkin +substring +substrings +th \ No newline at end of file diff --git a/2026R1/chemkin_26-r1/styles/config/vocabularies/ansys/reject.txt b/2026R1/chemkin_26-r1/styles/config/vocabularies/ansys/reject.txt new file mode 100644 index 0000000000..e69de29bb2 diff --git a/2026R1/chemkin_26-r1/toc.yml b/2026R1/chemkin_26-r1/toc.yml new file mode 100644 index 0000000000..59f8010471 --- /dev/null +++ b/2026R1/chemkin_26-r1/toc.yml @@ -0,0 +1,5 @@ +- name: Articles + href: articles/ +- name: Api Documentation + href: api/ + homepage: api/index.md