Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
a8e90b6
added module, check for privacy
aidanfitz Aug 7, 2024
175d022
fix?
aidanfitz Aug 7, 2024
bda7d24
secrect fix?
aidanfitz Aug 8, 2024
bbf9400
edit make file and private compilation
aidanfitz Aug 8, 2024
4cf05bb
testing?
aidanfitz Aug 14, 2024
2945b21
removed submodule
aidanfitz Aug 26, 2024
62ebdbd
reorganized
aidanfitz Aug 26, 2024
2991093
new run_script
aidanfitz Aug 27, 2024
3fbc70d
test updated
aidanfitz Aug 27, 2024
c2941e3
ignore override
aidanfitz Aug 27, 2024
518000b
ModuleTesting and SQA Update
aidanfitz Jan 6, 2025
ee8fbe5
update docs
aidanfitz Jan 6, 2025
e12057a
New Debug Call
aidanfitz Feb 14, 2025
4a98e00
deleted new debug
aidanfitz Feb 18, 2025
cf24e59
Merge branch 'master' into master
parikshitbajpai Feb 18, 2025
e9c6bd6
Missing Data
aidanfitz Mar 12, 2025
e404b68
New debug calls
aidanfitz May 5, 2025
debc812
Phase transition subroutine
aidanfitz May 6, 2025
71a8ec9
First transition test
aidanfitz May 6, 2025
90f3d4f
added recursion
aidanfitz May 9, 2025
5e9cb36
Delete src/postprocess/PhaseTransitionrecur.f90:Zone.Identifier
aidanfitz May 26, 2025
78abb0c
Delete src/postprocess/PhaseTransitionrecur.f90
aidanfitz May 26, 2025
4e5abe1
Transition Tests
aidanfitz May 27, 2025
398da61
Merge branch 'master' of https://github.com/aidanfitz/thermochimica
aidanfitz May 27, 2025
220fa52
Removed ignore
aidanfitz May 27, 2025
5545fcf
cleaned new test files
aidanfitz May 28, 2025
5e89dd7
change request
aidanfitz Jun 12, 2025
13614d2
Merge branch 'master' into master
aidanfitz Jun 12, 2025
cc9f63d
Failure return
aidanfitz Jun 24, 2025
35ee14b
Merge branch 'master' of https://github.com/aidanfitz/thermochimica
aidanfitz Jun 24, 2025
53d214e
runtest fix
aidanfitz Jul 14, 2025
90a51ff
Added Validation Parser
aidanfitz Jul 14, 2025
1a810f4
Debug calls and Parse verification
aidanfitz Jul 17, 2025
3b525aa
ParseValidation IO tests
aidanfitz Jul 21, 2025
8f279ae
new test folders
aidanfitz Jul 28, 2025
4f8713d
sorting tests
aidanfitz Jul 30, 2025
118bbb1
Transition and validation testing
aidanfitz Aug 15, 2025
0c6cd54
git ignore return
aidanfitz Aug 15, 2025
697f15d
Merge branch 'ORNL-CEES:master' into master
aidanfitz Aug 15, 2025
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
7 changes: 6 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,13 @@
bin/
obj/
lib/

# ignore doc subdirectories
doc/html/
doc/latex/
doc/test/
test/doc/

# ignore outputs
*.out
*.txt
Expand All @@ -30,13 +32,16 @@ test/doc/
*.lai
*.csv
*.pkl
Thermo-debugging.F90

# ignore vscode cache
.vscode/

# some of these will occasionally require manual override
data/
test/
python/
private_tests

# Ignore dynamic libraries
*.dylib
.libs
Empty file added .gitmodules
Empty file.
78 changes: 63 additions & 15 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,10 @@ AR = ar
FC = gfortran
CC = g++
FFPE_TRAPS ?= zero
FCFLAGS = -Wall -O2 -ffree-line-length-none -fno-automatic -fbounds-check -ffpe-trap=$(FFPE_TRAPS) -cpp -D"DATA_DIRECTORY='$(DATA_DIR)'"
FCFLAGS = -Wall -O2 -ffree-line-length-none -fno-automatic -fbounds-check \
-ffpe-trap=$(FFPE_TRAPS) -cpp \
-D"DATA_DIRECTORY='$(DATA_DIR)'" \
-D"CSV_DIRECTORY='$(CSVT_DIR)'"
CCFLAGS = -std=gnu++17

UNAME_S := $(shell uname -s)
Expand Down Expand Up @@ -58,24 +61,24 @@ EXE_DIR = $(SRC_DIR)/exec
TST_DIR = test
LIB_DIR = lib
DTST_DIR = $(TST_DIR)/daily
DTSTT_DIR = $(TST_DIR)/regression
DTSVAL_DIR = $(TST_DIR)/validation
SHARED_DIR = $(SRC_DIR)
SHARED_DIR += $(addprefix $(SRC_DIR)/,$(SRC_SDR))
CURR_DIR = $(shell pwd)
DATA_DIR = $(CURR_DIR)/data/
CSVT_DIR = $(CURR_DIR)/$(TST_DIR)/csv/
VPATH = $(SHARED_DIR)

# Separate modules and non-modules
modfiles := $(shell find src -name "Module*.f90")
srcfiles := $(shell find src -iname "*.f90" -and -not -name "Module*")

##
OBJ_FILES = $(addprefix $(OBJ_DIR)/,$(patsubst %.f90, %.o, $(patsubst %.F90, %.o, $(notdir $(srcfiles)))))
srcfiles := $(shell find src -name "[^(Module)]*.f90")

## ========
## MODULES:
## ========
MODS_OBJ = $(patsubst %.f90, %.o, $(notdir $(modfiles)))
MODS_LNK = $(addprefix $(OBJ_DIR)/,$(MODS_OBJ))
MODS_SRC = $(patsubst %.f90, %.o, $(notdir $(modfiles)))
MODS_LNK = $(addprefix $(OBJ_DIR)/,$(MODS_SRC))

## =================
## LIBRARIES:
Expand All @@ -95,7 +98,7 @@ C_SRC = Thermochimica-c.C Thermochimica-cxx.C
C_OBJ = $(C_SRC:.C=.o)
C_LNK = $(addprefix $(OBJ_DIR)/,$(C_OBJ))
TC-C_LIB = libthermoc.a
C_LIB = $(OBJ_DIR)/$(TC-C_LIB)
C_LIB = $(OBJ_DIR)/$(TC-C_LIB)

## ============
## OLD EXECUTABLES:
Expand All @@ -116,6 +119,22 @@ DTEST_LNK = $(addprefix $(OBJ_DIR)/,$(DTEST_OBJ))
DTST_OBJ = $(basename $(DTEST_SRC))
DTST_BIN = $(addprefix $(BIN_DIR)/,$(DTST_OBJ))

## ===============
## REGRESSION TESTS
## ===============
RTST_SRC = $(notdir $(wildcard $(DTSTT_DIR)/*.F90))
RTST_OBJ = $(RTST_SRC:.F90=.o)
RTST_LNK = $(addprefix $(OBJ_DIR)/,$(RTST_OBJ))
RTST_BIN = $(addprefix $(BIN_DIR)/,$(basename $(RTST_SRC)))

## ===============
## VALIDATION TESTS
## ===============
VTST_SRC = $(notdir $(wildcard $(DTSVAL_DIR)/*.F90))
VTST_OBJ = $(VTST_SRC:.F90=.o)
VTST_LNK = $(addprefix $(OBJ_DIR)/,$(VTST_OBJ))
VTST_BIN = $(addprefix $(BIN_DIR)/,$(basename $(VTST_SRC)))

## =======
## COMPILE
## =======
Expand All @@ -130,19 +149,25 @@ ${BIN_DIR}:
${MKDIR_P} ${BIN_DIR}

# Enforce module dependency rules
$(OBJ_FILES): $(srcfiles) $(MODS_LNK)
$(EXEC_LNK) $(DTST_LNK): $(MODS_LNK)

$(OBJ_DIR)/%.o: %.f90 $(OBJ_DIR)
$(srcfiles): $(MODS_LNK)

$(OBJ_DIR)/ModuleTesting.o: $(OBJ_DIR)/ModuleThermo.o
$(OBJ_DIR)/ModuleTesting.o: $(OBJ_DIR)/ModuleThermoIO.o

%.o: %.f90
$(FC) -I$(OBJ_DIR) -J$(OBJ_DIR) $(FCFLAGS) -c $< -o $@

$(OBJ_DIR)/%.o: %.f90
$(FC) -I$(OBJ_DIR) -J$(OBJ_DIR) $(FCFLAGS) -c $< -o $@

$(OBJ_DIR)/%.o: %.F90 $(OBJ_DIR)
$(OBJ_DIR)/%.o: %.F90
$(FC) -I$(OBJ_DIR) -J$(OBJ_DIR) $(FCFLAGS) -c $< -o $@

$(OBJ_DIR)/%.o: $(TST_DIR)/%.F90 $(OBJ_DIR)
$(OBJ_DIR)/%.o: $(TST_DIR)/%.F90
$(FC) -I$(OBJ_DIR) -J$(OBJ_DIR) $(FCFLAGS) -c $< -o $@

$(OBJ_DIR)/%.o: $(EXE_DIR)/%.F90 $(OBJ_DIR)
$(OBJ_DIR)/%.o: $(EXE_DIR)/%.F90
$(FC) -I$(OBJ_DIR) -J$(OBJ_DIR) $(FCFLAGS) -c $< -o $@

$(SHARED_LIB): $(SHARED_LNK)
Expand Down Expand Up @@ -219,6 +244,7 @@ doctest:
cleandoc:
rm -r -f $(DOC_DIR)/html; rm -r -f $(TEX_DIR); rm -r -f $(TST_DIR)/$(DOC_DIR)/html; rm -r -f $(TST_DIR)/$(TEX_DIR); rm -r -f $(DOC_DIR)/$(TST_DIR)


## ===========
## DAILY TESTS
## ===========
Expand All @@ -227,10 +253,32 @@ dailytest: $(DTEST_LNK) $(SHARED_LNK) $(MODS_LNK) $(DTST_BIN)
$(OBJ_DIR)/%.o: $(DTST_DIR)/%.F90
$(FC) -I$(OBJ_DIR) -J$(OBJ_DIR) $(FCFLAGS) -c $< -o $@

## ===========
## REGRESSION
## ===========
regressiontest: $(RTST_LNK) $(SHARED_LNK) $(MODS_LNK) $(RTST_BIN)

$(RTST_LNK): $(OBJ_DIR)/%.o: $(DTSTT_DIR)/%.F90
$(FC) -I$(OBJ_DIR) -J$(OBJ_DIR) $(FCFLAGS) -c $< -o $@

$(RTST_BIN): $(BIN_DIR)/%: $(OBJ_DIR)/%.o $(SHARED_LNK)
$(FC) -I$(OBJ_DIR) -J$(OBJ_DIR) $(FCFLAGS) $(LDFLAGS) -o $@ $< $(SHARED_LNK) $(LDLOC)

## ===========
## VALIDATION
## ===========
validationtest: $(VTST_LNK) $(SHARED_LNK) $(MODS_LNK) $(VTST_BIN)

$(VTST_LNK): $(OBJ_DIR)/%.o: $(DTSVAL_DIR)/%.F90
$(FC) -I$(OBJ_DIR) -J$(OBJ_DIR) $(FCFLAGS) -c $< -o $@

$(VTST_BIN): $(BIN_DIR)/%: $(OBJ_DIR)/%.o $(SHARED_LNK)
$(FC) -I$(OBJ_DIR) -J$(OBJ_DIR) $(FCFLAGS) $(LDFLAGS) -o $@ $< $(SHARED_LNK) $(LDLOC)

## ===========
## ALL TESTS:
## ===========
test: all dailytest
test: all dailytest regressiontest validationtest

## ===========
## DEBUG:
Expand Down
2 changes: 1 addition & 1 deletion data/CaMnS.dat
Original file line number Diff line number Diff line change
Expand Up @@ -444,4 +444,4 @@ Va:S
1 0.00000000 0.00
2000.0000 -265760.95 497.94364 -83.883678 -0.21790250E-01 0.28051160E-05 79820.000
1 0.16568470E+31 -9.00
###################################################
###################################################
Loading