Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

0.2.2 #5

Merged
merged 63 commits into from
Dec 17, 2023
Merged
Changes from 1 commit
Commits
Show all changes
63 commits
Select commit Hold shift + click to select a range
4526971
BUG: Fix C code in pywrapper.
MilanSkocic Sep 8, 2023
136c20d
ENH: Start implementing r797 region 1.
MilanSkocic Sep 8, 2023
c9ce9a1
ENH: Continue implementation of r797 region 1.
MilanSkocic Sep 10, 2023
23e4fa7
TST: Implement first test for region 1 r797.
MilanSkocic Sep 11, 2023
d13f7e3
ENH: Starting the coefficients for region 1 R797.
MilanSkocic Sep 11, 2023
4bbe11c
BUG: Fix C code in pywrapper.
MilanSkocic Sep 12, 2023
399eea0
TST: Fix values for T and P.
MilanSkocic Sep 12, 2023
e79613f
ENH: Added more coefficients for IJn in region 1.
MilanSkocic Sep 12, 2023
1055e7f
DOC: Continue doc for R797.
MilanSkocic Sep 16, 2023
30d44d3
ENH: Implemented the R283 report for critical values of H2O and D2O.
MilanSkocic Sep 20, 2023
95eb7ac
BLD: Switch to pyproject.toml
MilanSkocic Sep 22, 2023
f510aa5
DOC: Add B23 equation in doc.
MilanSkocic Sep 22, 2023
35cd868
DOC: Refractoring and add documentation for private functions in G704.
MilanSkocic Sep 24, 2023
07a8d3f
ENH: Add coefficient for region forward.
MilanSkocic Sep 24, 2023
9140e5a
FIX: Remove unused variables.
MilanSkocic Sep 29, 2023
bf9266c
BLD: Add build package dependency.
MilanSkocic Oct 16, 2023
269bb6f
BLD: Improve Makefile.
MilanSkocic Oct 17, 2023
d7c8b52
DOC: Update conf.py.
MilanSkocic Oct 29, 2023
c53a283
BLD: Update to configure.sh
MilanSkocic Oct 29, 2023
4b24495
DOC: Fix module name in doc.
MilanSkocic Nov 4, 2023
79c0ce0
Update pyproject.toml
MilanSkocic Nov 8, 2023
beac5fc
BLD: Add workflows CI
MilanSkocic Nov 15, 2023
311c14f
DOC: Add build badge.
MilanSkocic Nov 15, 2023
885a044
DOC: add both branches for badges.
MilanSkocic Nov 15, 2023
3ed25d2
BLD: Add test in Makefile.
MilanSkocic Nov 20, 2023
d072d2b
Merge branch 'dev' of https://github.com/MilanSkocic/iapws into dev
MilanSkocic Nov 20, 2023
6bf99e7
BLD: Add automatic detection of arch and version.
MilanSkocic Nov 23, 2023
c7cc944
BLD: Fix rule for test.
MilanSkocic Nov 23, 2023
0b71f31
BLD: Fix read option.
MilanSkocic Nov 23, 2023
6bf9180
BUG: Fix bash issue.
MilanSkocic Nov 24, 2023
7a81180
REL: Prepare new version.
MilanSkocic Nov 24, 2023
a723c7b
DOC: Add changelog for new release.
MilanSkocic Nov 24, 2023
448083e
DOC: Update online doc.
MilanSkocic Nov 24, 2023
a3a5556
ENH: Add r283 in pywrapper and in library.
MilanSkocic Nov 25, 2023
0c0c93b
ENH: Add IMPORT macro for windows support in R283.
MilanSkocic Nov 25, 2023
f7debb9
DOC: Add dcostrings for r283 C API.
MilanSkocic Nov 26, 2023
429e50a
DOC: Add r283 in doc.
MilanSkocic Nov 26, 2023
0da0f97
TST: Remove temporary tests for R797.
MilanSkocic Nov 27, 2023
c403d0f
BUG: Fix names in pywrapper for r283.
MilanSkocic Nov 27, 2023
ccf4b3e
TST: Add tests for R283 and minor refractoring for G704.
MilanSkocic Nov 27, 2023
53ab85e
BLD: Fix list of python extensions in setup file.
MilanSkocic Nov 27, 2023
28c591e
DOC: Fix header 2 markers.
MilanSkocic Nov 27, 2023
d239ab7
BLD: Add support for MINGW32.
MilanSkocic Nov 27, 2023
201501d
BLD: Fix missing extern declaration for header r283.
MilanSkocic Nov 27, 2023
fffb4e4
ENH: Add examples for R283.
MilanSkocic Nov 27, 2023
1659e11
DOC: Add documentation for R283.
MilanSkocic Nov 27, 2023
718c6e0
DOC: Add explanation for memory view.
MilanSkocic Nov 27, 2023
16afa60
DOC: Fix wrong link for fpm documentation.
MilanSkocic Nov 27, 2023
8420831
Merge branch 'dev' of https://github.com/MilanSkocic/iapws into dev
MilanSkocic Nov 27, 2023
956d819
BUG: Fix names for deleting in build.sh.
MilanSkocic Nov 29, 2023
5f1df89
DOC: Fix new field in FORD v7.
MilanSkocic Nov 30, 2023
968694e
TST: Add R283 tests and modular functions for tests in Fortran and C.
MilanSkocic Nov 30, 2023
2085fdd
TST: Add build_debug and test_debug target.
MilanSkocic Dec 1, 2023
8b3ebeb
BLD: Add atuomatic version generation.
MilanSkocic Dec 4, 2023
20d27db
ENH: Add automatic version generation.
MilanSkocic Dec 4, 2023
6dc2bf4
ENH: Remove executable.
MilanSkocic Dec 4, 2023
fd6e320
BLD: Generic Makefiles in subdirectories.
MilanSkocic Dec 5, 2023
a377c78
BLD: Modular build for pywrapper.
MilanSkocic Dec 6, 2023
3ef1c6f
BLD: Fix minor issues after testing on windows.
MilanSkocic Dec 7, 2023
98c325f
Merge branch 'dev' of https://github.com/MilanSkocic/iapws into dev
MilanSkocic Dec 7, 2023
83a8437
BUG: Remove line after conflicts.
MilanSkocic Dec 7, 2023
e400413
MAINT: Clean up setup.py.
MilanSkocic Dec 15, 2023
9b29257
DOC: Delete online doc before PR.
MilanSkocic Dec 17, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
ENH: Continue implementation of r797 region 1.
  • Loading branch information
MilanSkocic committed Sep 10, 2023
commit c9ce9a1e5079930a44866959c68de21ac7133f1b
51 changes: 51 additions & 0 deletions src/iapws_r797.f90
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,11 @@ module iapws__r797
implicit none
private

public :: iapws_r797_v


!! Parameters from IAPWS R7-97
real(real64), parameter :: T_KELVIN = 273.15d0
!! critical temperature of water in K
real(real64), parameter :: Tc = 647.096d0
!! critical pressure of the water in MPa
Expand All @@ -15,6 +18,9 @@ module iapws__r797
real(real64), parameter :: rhoc = 322.0d0
!! Specific gas constant 0.461 526 kJ.kg-1.K-1
real(real64), parameter :: R = 0.461526d0

real(real64), parameter :: r1_ps = 16.53d0
real(real64), parameter :: r1_ts = 1386.0d0

!! IJn_r1f
real(real64) :: IJn_r1f(1, 3) = transpose(reshape(&
Expand All @@ -23,6 +29,51 @@ module iapws__r797

contains

pure elemental function gamma_(P, T)result(res)
implicit none

real(real64), intent(in) :: P
real(real64), intent(in) :: T

real(real64) :: pi
real(real64) :: tau
real(real64) :: res

pi = (T+T_KELVIN)/r1_ts
tau = P/r1_ps

res = sum(IJn_r1f(:,3) * (7.1d0-pi)**IJn_r1f(:,1) * (tau-1.222d0)**IJn_r1f(:, 2))

end function

pure elemental function gamma_pi(P, T)result(res)
implicit none

real(real64), intent(in) :: P
real(real64), intent(in) :: T

real(real64) :: pi
real(real64) :: tau
real(real64) :: res

pi = (T+T_KELVIN)/r1_ts
tau = P/r1_ps

res = sum(IJn_r1f(:,3) * IJn_r1f(:,1) * (7.1d0-pi)**(IJn_r1f(:,1)-1.0d0) * (tau-1.222d0)**IJn_r1f(:, 2))

end function

pure elemental function iapws_r797_v(P, T)result(res)
implicit none

real(real64), intent(in) :: P
real(real64), intent(in) :: T

real(real64) :: res

res = R*(T+T_KELVIN)/P * gamma_pi(P,T)

end function


end module