Skip to content

Commit

Permalink
Update for CalculiX v2.20 (#109)
Browse files Browse the repository at this point in the history
  • Loading branch information
KyleDavisSA authored Nov 16, 2022
1 parent 81b3e00 commit 6eeaf17
Show file tree
Hide file tree
Showing 13 changed files with 599 additions and 483 deletions.
14 changes: 7 additions & 7 deletions .github/workflows/ubuntu_build.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: Calculix 2.19 with preCICE adapter test build
name: Calculix 2.20 with preCICE adapter test build

on: [push, pull_request]

Expand All @@ -18,7 +18,7 @@ jobs:
runs-on: ${{matrix.os}}
continue-on-error: true
env: # Versioning is "calculix-preciceX_2.YY-Z[...]" with X the major preCICE version, YY the minor CCX version and Z the package version
PACKAGE_NAME: "calculix-precice2_2.19.0-1_amd64"
PACKAGE_NAME: "calculix-precice2_2.20.0-1_amd64"

steps:
- name: Update system
Expand All @@ -32,19 +32,19 @@ jobs:
- name: install dependencies
run: sudo apt install libarpack2-dev libspooles-dev libyaml-cpp-dev -y
- name: Download CalculiX
run: wget http://www.dhondt.de/ccx_2.19.src.tar.bz2
run: wget http://www.dhondt.de/ccx_2.20.src.tar.bz2
- name: Unpack Calculix
run: tar -xjf ccx_2.19.src.tar.bz2
run: tar -xjf ccx_2.20.src.tar.bz2
- name: make
run: make -j 4 CCX="./CalculiX/ccx_2.19/src" ADDITIONAL_FFLAGS="${{matrix.flags}}"
run: make -j 4 CCX="./CalculiX/ccx_2.20/src" ADDITIONAL_FFLAGS="${{matrix.flags}}"
- name: Test run
run: ./bin/ccx_preCICE -h
- name: Download tools for packaging
run: sudo apt install lintian pandoc -y
- name: Create Debian Package
run: |
mkdir -p "packaging/calculix-precice2_2.19.0-1_amd64/usr/bin" &&
cp ./bin/ccx_preCICE ./packaging/calculix-precice2_2.19.0-1_amd64/usr/bin/ccx_preCICE &&
mkdir -p "packaging/calculix-precice2_2.20.0-1_amd64/usr/bin" &&
cp ./bin/ccx_preCICE ./packaging/calculix-precice2_2.20.0-1_amd64/usr/bin/ccx_preCICE &&
cd packaging && pwd && bash ./make_deb.sh ${{matrix.name}}
- name: Store Debian package artifact
uses: actions/upload-artifact@v2
Expand Down
299 changes: 183 additions & 116 deletions CalculiX.h

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# https://precice.org/adapter-calculix-get-calculix.html
# Set the following variables before building:
# Path to original CalculiX source (e.g. $(HOME)/ccx_2.xx/src )
CCX_VERSION = 2.19
CCX_VERSION = 2.20
CCX = $(HOME)/CalculiX/ccx_$(CCX_VERSION)/src

### Change these if you built SPOOLES, ARPACK, or yaml-cpp from source ###
Expand Down
14 changes: 7 additions & 7 deletions Makefile_i8_PaStiX
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
# See our wiki for getting the CalculiX dependencies:
# https://precice.org/adapter-calculix-get-calculix.html
# Set the following variables before building:
# Path to original CalculiX source (e.g. $(HOME)/ccx_2.19/src )
CCX = $(HOME)/CalculiX/ccx_2.19/src
# Path to original CalculiX source (e.g. $(HOME)/ccx_2.20/src )
CCX = $(HOME)/CalculiX/ccx_2.20/src

### Change these if you built SPOOLES, ARPACK, or yaml-cpp from source ###
# SPOOLES include flags (e.g. -I$(HOME)/SPOOLES.2.2 )
Expand Down Expand Up @@ -86,7 +86,7 @@ FC = mpifort

# Include a list of all the source files
include $(CCX)/Makefile.inc
SCCXMAIN = ccx_2.19.c
SCCXMAIN = ccx_2.20.c

# Append additional sources
SCCXC += nonlingeo_precice.c CCXHelpers.c PreciceInterface.c
Expand Down Expand Up @@ -119,14 +119,14 @@ OCCXC += $(OBJDIR)/ConfigReader.o



$(OBJDIR)/ccx_preCICE: $(OBJDIR) $(OCCXMAIN) $(OBJDIR)/ccx_2.19.a
$(FC) -fopenmp -Wall -O3 -o $@ $(OCCXMAIN) $(OBJDIR)/ccx_2.19.a $(LIBS)
$(OBJDIR)/ccx_preCICE: $(OBJDIR) $(OCCXMAIN) $(OBJDIR)/ccx_2.20.a
$(FC) -fopenmp -Wall -O3 -o $@ $(OCCXMAIN) $(OBJDIR)/ccx_2.20.a $(LIBS)

$(OBJDIR)/ccx_2.19.a: $(OCCXF) $(OCCXC)
$(OBJDIR)/ccx_2.20.a: $(OCCXF) $(OCCXC)
ar vr $@ $?

$(OBJDIR):
mkdir -p $(OBJDIR)

clean:
rm -f $(OBJDIR)/*.o $(OBJDIR)/ccx_2.19.a $(OBJDIR)/ccx_preCICE
rm -f $(OBJDIR)/*.o $(OBJDIR)/ccx_2.20.a $(OBJDIR)/ccx_preCICE
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

The adapter was initially developed for conjugate heat transfer (CHT) simulations via preCICE by Lucia Cheung in the scope of her master’s thesis [[1]](https://www5.in.tum.de/pub/Cheung2016_Thesis.pdf) in cooperation with [SimScale](https://www.simscale.com/). For running the adapter for CHT simulations refer to this thesis. The adapter was extended to fluid-structure interaction by Alexander Rusch [[2]](https://www.gacm2017.uni-stuttgart.de/registration/Upload/ExtendedAbstracts/ExtendedAbstract_0138.pdf).

The latest version of the adapter is based on **CalculiX version 2.19.**
The latest version of the adapter is based on **CalculiX version 2.20.**
Legacy versions of the adapter for older versions of CalculiX are supported on various branches. Branches for CalculiX version older than 2.15 require **preCICE v1.x**, whereas newer versions rely on **preCICE v2.x**.

## Start here
Expand Down
244 changes: 114 additions & 130 deletions ccx_2.19.c → ccx_2.20.c

Large diffs are not rendered by default.

Loading

0 comments on commit 6eeaf17

Please sign in to comment.