diff --git a/src/Mod/Fem/Gui/DlgSettingsFemZ88.ui b/src/Mod/Fem/Gui/DlgSettingsFemZ88.ui index 4f8daa5e83..a7fccc21d4 100644 --- a/src/Mod/Fem/Gui/DlgSettingsFemZ88.ui +++ b/src/Mod/Fem/Gui/DlgSettingsFemZ88.ui @@ -6,8 +6,8 @@ 0 0 - 452 - 154 + 466 + 173 @@ -34,6 +34,71 @@ + + + + Maximal places in stiffnes matrix. +You might need to increase this when using the +Cholesky solver and you get the error message +that "MAXGS" needs to be increased. + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + 6000000 + + + 2147483647 + + + 10000000 + + + 100000000 + + + MaxGS + + + Mod/Fem/Z88 + + + + + + + Maximal places in coincidence vector. +(number of knots per element times + number of finite elements) + +You might need to increase this when using an +iterative solver and you get the error message +that "MAXKOI" needs to be increased. + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + 50000 + + + 2147483647 + + + 100000 + + + 2800000 + + + MaxKOI + + + Mod/Fem/Z88 + + + @@ -90,6 +155,35 @@ + + + + Max places in coincidence vector + + + + + + + true + + + + 0 + 0 + + + + + 0 + 0 + + + + z88r binary path: + + + @@ -97,18 +191,12 @@ - - - - Qt::Horizontal + + + + Max places in stiffnes matrix - - - 40 - 20 - - - + @@ -144,66 +232,6 @@ - - - - true - - - - 0 - 0 - - - - - 0 - 0 - - - - z88r binary path: - - - - - - - Maximal places in stiffnes matrix. -You might need to increase this when using the -Colesky solver and you get the error message -that "MAXGS" needs to be increased. - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - - 6000000 - - - 2147483647 - - - 10000000 - - - 100000000 - - - MaxGS - - - Mod/Fem/Z88 - - - - - - - Max places in stiffnes matrix - - - diff --git a/src/Mod/Fem/Gui/DlgSettingsFemZ88Imp.cpp b/src/Mod/Fem/Gui/DlgSettingsFemZ88Imp.cpp index 49598505e6..beebeeea09 100644 --- a/src/Mod/Fem/Gui/DlgSettingsFemZ88Imp.cpp +++ b/src/Mod/Fem/Gui/DlgSettingsFemZ88Imp.cpp @@ -55,6 +55,8 @@ void DlgSettingsFemZ88Imp::saveSettings() ui->cmb_solver->onSave(); hGrp->SetInt("MaxGS", ui->sb_Z88_MaxGS->value()); ui->sb_Z88_MaxGS->onSave(); + hGrp->SetInt("MaxKOI", ui->sb_Z88_MaxKOI->value()); + ui->sb_Z88_MaxKOI->onSave(); } void DlgSettingsFemZ88Imp::loadSettings() @@ -72,6 +74,9 @@ void DlgSettingsFemZ88Imp::loadSettings() int places = hGrp->GetInt("MaxGS", 100000000); if (places > -1) ui->sb_Z88_MaxGS->setValue(places); + places = hGrp->GetInt("MaxKOI", 2800000); + if (places > -1) + ui->sb_Z88_MaxKOI->setValue(places); } /** diff --git a/src/Mod/Fem/femsolver/z88/writer.py b/src/Mod/Fem/femsolver/z88/writer.py index ef5a43e426..9b400f8851 100644 --- a/src/Mod/Fem/femsolver/z88/writer.py +++ b/src/Mod/Fem/femsolver/z88/writer.py @@ -289,13 +289,16 @@ class FemInputWriterZ88(writerbase.FemInputWriter): # ******************************************************************************************** def write_z88_memory_parameter(self): prefs = FreeCAD.ParamGet("User parameter:BaseApp/Preferences/Mod/Fem/Z88") - MaxGS = prefs.GetInt("MaxGS", 100000000) + MaxGS = prefs.GetInt("MaxGS", 100000000) + MaxKOI = prefs.GetInt("MaxKOI", 2800000) global z88_dyn_template templateArray = z88_dyn_template.splitlines() output = "" for line in templateArray: if line.find("MAXGS") > -1: line = " MAXGS " + str(MaxGS) + if line.find("MAXKOI") > -1: + line = " MAXKOI " + str(MaxKOI) output += line + "\n" solver_parameter_file_path = self.file_name + ".dyn" @@ -370,7 +373,7 @@ Common entries for all modules gemeinsame Daten fuer alle Module COMMON START MAXGS 100000000 - MAXKOI 1200000 + MAXKOI 2800000 MAXK 60000 MAXE 300000 MAXNFG 200000 diff --git a/src/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_hexa20/z88.dyn b/src/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_hexa20/z88.dyn index f383a865fc..100a82fd9b 100644 --- a/src/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_hexa20/z88.dyn +++ b/src/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_hexa20/z88.dyn @@ -24,7 +24,7 @@ Common entries for all modules gemeinsame Daten fuer alle Module COMMON START MAXGS 100000000 - MAXKOI 1200000 + MAXKOI 2800000 MAXK 60000 MAXE 300000 MAXNFG 200000 diff --git a/src/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_tria6/z88.dyn b/src/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_tria6/z88.dyn index f383a865fc..100a82fd9b 100644 --- a/src/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_tria6/z88.dyn +++ b/src/Mod/Fem/femtest/data/z88/ccx_cantilever_ele_tria6/z88.dyn @@ -24,7 +24,7 @@ Common entries for all modules gemeinsame Daten fuer alle Module COMMON START MAXGS 100000000 - MAXKOI 1200000 + MAXKOI 2800000 MAXK 60000 MAXE 300000 MAXNFG 200000 diff --git a/src/Mod/Fem/femtest/data/z88/ccx_cantilever_faceload/z88.dyn b/src/Mod/Fem/femtest/data/z88/ccx_cantilever_faceload/z88.dyn index f383a865fc..100a82fd9b 100644 --- a/src/Mod/Fem/femtest/data/z88/ccx_cantilever_faceload/z88.dyn +++ b/src/Mod/Fem/femtest/data/z88/ccx_cantilever_faceload/z88.dyn @@ -24,7 +24,7 @@ Common entries for all modules gemeinsame Daten fuer alle Module COMMON START MAXGS 100000000 - MAXKOI 1200000 + MAXKOI 2800000 MAXK 60000 MAXE 300000 MAXNFG 200000 diff --git a/src/Mod/Fem/femtest/data/z88/ccx_cantilever_nodeload/z88.dyn b/src/Mod/Fem/femtest/data/z88/ccx_cantilever_nodeload/z88.dyn index f383a865fc..100a82fd9b 100644 --- a/src/Mod/Fem/femtest/data/z88/ccx_cantilever_nodeload/z88.dyn +++ b/src/Mod/Fem/femtest/data/z88/ccx_cantilever_nodeload/z88.dyn @@ -24,7 +24,7 @@ Common entries for all modules gemeinsame Daten fuer alle Module COMMON START MAXGS 100000000 - MAXKOI 1200000 + MAXKOI 2800000 MAXK 60000 MAXE 300000 MAXNFG 200000