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

Global dlc driver #133

Merged
merged 198 commits into from
Jul 21, 2021
Merged
Show file tree
Hide file tree
Changes from 186 commits
Commits
Show all changes
198 commits
Select commit Hold shift + click to select a range
1e4dbf6
Merge pull request #108 from WISDEM/develop
gbarter May 18, 2021
a4ab165
Merge commit '07dd1e7e32a6f21aeb1866f3a85c8a53c3bb761d' into level1
gbarter May 21, 2021
07dd1e7
Squashed 'pyHAMS/' changes from fb1e9dc6a..6d2fea73f
gbarter May 21, 2021
b0fd8bd
Squashed 'MoorPy/' changes from 1d26a363c..0d7126f15
gbarter May 21, 2021
7200579
Merge commit 'b0fd8bd3387f6c3b964a1113473a669023821dfc' into level1
gbarter May 21, 2021
9fa4865
Merge commit '9341ba268e13bfe36c8ed4c620b106e3da4b79cf' into level1
gbarter May 21, 2021
9341ba2
Squashed 'RAFT/' changes from ff622d6f8..efddaa960
gbarter May 21, 2021
cc33040
Merge commit '0c273c82d4bc69d1cbc2f1f10cffbb67f6fefc88' into level1
gbarter Jun 2, 2021
0c273c8
Squashed 'WISDEM/' changes from 73d3f97bb..e07717b45
gbarter Jun 2, 2021
b9706b2
go back to using WISDEM files to avoid duplicates
gbarter Jun 2, 2021
d12f0e0
Squashed 'WISDEM/' changes from e07717b45..94e98400f
gbarter Jun 2, 2021
cad0760
Merge commit 'd12f0e03b57d57e499ca498c1c24d6988e33dddf' into level1
gbarter Jun 2, 2021
def4495
try new modeling options
ptrbortolotti Jun 4, 2021
5527df6
improve example a little
ptrbortolotti Jun 4, 2021
d1987aa
wave props
ptrbortolotti Jun 9, 2021
e3f2ebe
update schema
ptrbortolotti Jun 9, 2021
c8c9255
adding skeleton generator
gbarter Jun 12, 2021
f09a859
fix typo
ptrbortolotti Jun 14, 2021
3d6d153
update schema
ptrbortolotti Jun 14, 2021
f6d2a32
work toward fixing weis tests
ptrbortolotti Jun 14, 2021
ebb4237
got to openmdao_opefast
ptrbortolotti Jun 14, 2021
42b2604
cleanup aeroelasticse
ptrbortolotti Jun 14, 2021
e391ef3
OF options almost clean
ptrbortolotti Jun 14, 2021
191898a
n_cores added back
ptrbortolotti Jun 14, 2021
d091de6
weis initializes successfully
ptrbortolotti Jun 14, 2021
8c01883
some progress
ptrbortolotti Jun 15, 2021
a878abf
turbsim running for dlc11
ptrbortolotti Jun 15, 2021
32fedf4
got to of wrapper
ptrbortolotti Jun 15, 2021
8bc6ccf
OF runs again!
ptrbortolotti Jun 16, 2021
17958be
add initial conditions
ptrbortolotti Jun 16, 2021
c0e694d
script runs! (but no aep and no DELs)
ptrbortolotti Jun 16, 2021
9e6c956
update modeling options and schema
ptrbortolotti Jun 16, 2021
6972fa6
clean aeroelasticse
ptrbortolotti Jun 16, 2021
dceb1cc
Merge branch 'develop' into global_dlc_driver
ptrbortolotti Jun 16, 2021
e68b6c1
Merge 'origin/develop' into global_dlc_driver
ptrbortolotti Jun 16, 2021
793d958
one flag left behind
ptrbortolotti Jun 16, 2021
8789527
no opt test
ptrbortolotti Jun 16, 2021
fa8db19
add first test on dlc generator
ptrbortolotti Jun 17, 2021
4bde6d3
more wind cases supported
ptrbortolotti Jun 17, 2021
53a72c1
fix wind class
ptrbortolotti Jun 17, 2021
caa3f54
one test left behind
ptrbortolotti Jun 17, 2021
b5fd751
bring back aep and DELs
ptrbortolotti Jun 17, 2021
574a836
more dlcs among mod options
ptrbortolotti Jun 17, 2021
03e3998
DLC 1p4 supported
ptrbortolotti Jun 18, 2021
5469aa6
dlc 1.5 supported
ptrbortolotti Jun 18, 2021
397916a
mod options
ptrbortolotti Jun 18, 2021
ef13d6a
remove legacy files, add EOG and EDC
ptrbortolotti Jun 18, 2021
e3ef813
update test dlc generator
ptrbortolotti Jun 18, 2021
1faaaf5
Merge branch 'develop' into global_dlc_driver
gbarter Jun 21, 2021
896be32
some eff cleanup of dlc_generator and make 03_example options equal t…
gbarter Jun 23, 2021
842225b
newline
gbarter Jun 23, 2021
a4762af
use vars() to simplify the to_dict functions
gbarter Jun 23, 2021
a3a4f01
fix tests
gbarter Jun 23, 2021
b7f2294
Merge branch 'develop' into level1
gbarter Jun 23, 2021
1fa6d44
Merge commit '95bde32a30da0e8366bb51a81a3f529fc35df2cf' into level1
gbarter Jun 23, 2021
95bde32
Squashed 'RAFT/' changes from efddaa960..eb627eb25
gbarter Jun 23, 2021
6f08523
support rotor analysis in RAFT
gbarter Jun 23, 2021
4e3ec6e
connecting one more input
gbarter Jun 23, 2021
865efd9
Merge commit '86e306ca37228e817d9aa9b4df25a796236f080c' into level1
gbarter Jun 23, 2021
86e306c
Squashed 'RAFT/' changes from eb627eb25..b993720a7
gbarter Jun 23, 2021
73a8d01
Merge branch 'global_dlc_driver' into level1
gbarter Jun 23, 2021
9a32612
add some defaults
gbarter Jun 24, 2021
a51ed15
final connections for raft seem to be working
gbarter Jun 24, 2021
6887ed2
Squashed 'RAFT/' changes from b993720a7..d97490f47
gbarter Jun 24, 2021
7477b15
Merge commit '6887ed296fe96290d2c5377f311003ed998c5786' into level1
gbarter Jun 24, 2021
3462bab
assign keys together with dlc cases for RAFT
gbarter Jun 24, 2021
6f485b4
Merge commit '85a60c96e7ef4f7aa0cbb0fcbd56811c3e65b5e8' into level1
gbarter Jun 24, 2021
85a60c9
Squashed 'RAFT/' changes from d97490f47..049117494
gbarter Jun 24, 2021
67588c7
Merge pull request #119 from WISDEM/level1
gbarter Jun 24, 2021
e848ee9
removing deleted files and tests, but the 01-examples still need to b…
gbarter Jun 25, 2021
54b68c8
have user set min and max freqs and then enable HAMS use at all Levels
gbarter Jun 29, 2021
a63af59
Merge commit '0cf7e82dd8b69c1f340244d8c63eb7f146861084' into hams_for…
gbarter Jun 29, 2021
0cf7e82
Squashed 'RAFT/' changes from 049117494..96936f0f3
gbarter Jun 29, 2021
8073a0d
Merge commit '8f7a554f1e64a1a096285853bc77f51692fc5f8e' into hams_for…
gbarter Jun 29, 2021
8f7a554
Squashed 'pyHAMS/' changes from 6d2fea73f..bb4b556ff
gbarter Jun 29, 2021
e9a5da2
Merge commit '581df313973f05c221d35262649fea383f42d2d7' into hams_for…
gbarter Jun 30, 2021
581df31
Squashed 'pyHAMS/' changes from bb4b556ff..bae5caa25
gbarter Jun 30, 2021
d2d9d16
adding logic for hydrodyn use of potential / strip / user-provided drag
gbarter Jul 1, 2021
c60997d
Merge commit '53e731a3fdaafe8305a3d3a8038e12e41b4054da' into hams_for…
gbarter Jul 1, 2021
53e731a
Squashed 'RAFT/' changes from 96936f0f3..c32c2adca
gbarter Jul 1, 2021
bd53349
Merge commit 'bcc78397a1d976661429c5d482c3f0bbde6e0bb7' into hams_for…
gbarter Jul 1, 2021
bcc7839
Squashed 'pyHAMS/' changes from bae5caa25..fcab86acd
gbarter Jul 1, 2021
2988217
Merge commit 'f5ac9e0d7875dd673d6cfc538fb253e98b637fb1' into hams_for…
gbarter Jul 1, 2021
f5ac9e0
Squashed 'pyHAMS/' changes from fcab86acd..62f9c893b
gbarter Jul 1, 2021
d28d589
using roman numerals instead
gbarter Jul 2, 2021
64a35f1
fix logic error in potfile
gbarter Jul 2, 2021
e63969a
have weis generate wamit file instead
gbarter Jul 2, 2021
63543a9
Squashed 'WISDEM/' changes from 52306ecd8..68da1a071
gbarter Jul 2, 2021
e0bd4c0
Merge commit '63543a93b7f36006de3d2ced4fac3c2183943696' into hams_for…
gbarter Jul 2, 2021
861169a
Merge commit 'f41bb9aa62206f3706621f9b66425e6f7923e73f' into hams_for…
gbarter Jul 2, 2021
f41bb9a
Squashed 'pyHAMS/' changes from 62f9c893b..49be7901f
gbarter Jul 2, 2021
603166c
logic to force RAFT to run HAMS when needed by OF
gbarter Jul 2, 2021
e2cde31
Merge commit '4627dfd8e0dd4df414f0fe4135c6660e531c7a7f' into hams_for…
gbarter Jul 2, 2021
4627dfd
Squashed 'pyHAMS/' changes from 49be7901f..2ad2598ba
gbarter Jul 2, 2021
34ca220
Merge commit 'bb686e10f1a6fcb2ccf4f23ff7e30974f96b43b8' into hams_for…
gbarter Jul 2, 2021
bb686e1
Squashed 'RAFT/' changes from c32c2adca..45583bf54
gbarter Jul 2, 2021
6be8b39
Merge remote-tracking branch 'origin/develop' into global_dlc_driver
ptrbortolotti Jul 5, 2021
668fb70
add option to fix wind seeds
ptrbortolotti Jul 7, 2021
a68ab61
waveHs and waveTp
ptrbortolotti Jul 7, 2021
2c97b98
fix bug in the indexing
ptrbortolotti Jul 7, 2021
994c2bd
improve counters Hs Tp
ptrbortolotti Jul 7, 2021
38b5923
remove IECturbc from mod_opts and fix TS grid size
ptrbortolotti Jul 7, 2021
8e1a37e
remove duplicated yaml nrel5mw_spar_oc3
ptrbortolotti Jul 7, 2021
3f3acbf
raise exception instead of exit
ptrbortolotti Jul 7, 2021
98980fe
flag in DAC script was wrong
ptrbortolotti Jul 7, 2021
c44760a
mpi 4 turbsim not working
ptrbortolotti Jul 7, 2021
100f6c6
Merge pull request #123 from WISDEM/hams_for_all
gbarter Jul 7, 2021
d72196f
Merge branch 'develop' into global_dlc_driver
gbarter Jul 7, 2021
62f35ce
use hams and shorter vel list
gbarter Jul 7, 2021
e363f28
Merge branch 'develop' into global_dlc_driver
gbarter Jul 7, 2021
b6af972
add partial safety factors
ptrbortolotti Jul 8, 2021
078008d
Merge branch 'global_dlc_driver' of https://github.com/WISDEM/WEIS in…
ptrbortolotti Jul 8, 2021
3440c4a
add DLC1p6
ptrbortolotti Jul 8, 2021
c5024a6
fix bug in raft wrapper
ptrbortolotti Jul 8, 2021
42a7282
Merge branch 'update_OF' into global_dlc_driver
gbarter Jul 8, 2021
2f2f264
turbsim parallelized
ptrbortolotti Jul 8, 2021
6efeb03
Merge branch 'parallel_wind', remote-tracking branch 'origin' into gl…
ptrbortolotti Jul 8, 2021
58f0a0b
skip turbsim call if files are already there
ptrbortolotti Jul 8, 2021
6f3c0a1
Merge branch 'global_dlc_driver' of github.com:WISDEM/WEIS into globa…
gbarter Jul 8, 2021
2a09e67
merging branches, fixing easy conflicts
gbarter Jul 8, 2021
8d4a483
fix conflicts
ptrbortolotti Jul 9, 2021
302aa0d
wave and wind heading, wave gamma, and probability
ptrbortolotti Jul 9, 2021
325ece0
time for each DLC set correctly
ptrbortolotti Jul 9, 2021
50d4918
Merge branch 'global_dlc_driver' into merge_fix
gbarter Jul 9, 2021
b017497
Merge pull request #128 from WISDEM/merge_fix
gbarter Jul 10, 2021
01d7f19
Merge branch 'fix_tests' into global_dlc_driver
gbarter Jul 10, 2021
0882af9
fixing tests
gbarter Jul 10, 2021
e58e9a1
don't suppress stdout
gbarter Jul 10, 2021
481d252
fix and cleanup tests
gbarter Jul 10, 2021
6c335e3
fix directories
gbarter Jul 10, 2021
d187617
fix omdao call
gbarter Jul 10, 2021
2e8ef74
tweaking test feedback
gbarter Jul 10, 2021
c44306c
Merge branch 'global_dlc_driver' of github.com:WISDEM/WEIS into globa…
gbarter Jul 10, 2021
3501254
tweaking test feedback
gbarter Jul 10, 2021
ce20f89
suppress plots so they don't delay tests
gbarter Jul 10, 2021
adb9af2
fixing tests and rosco logic
gbarter Jul 10, 2021
6524032
Merge commit '5d014d43d61505c5bef7fdf41657d54158e49a2b' into global_d…
gbarter Jul 10, 2021
5d014d4
Squashed 'RAFT/' changes from 45583bf54..4d15cc046
gbarter Jul 10, 2021
c59877c
do not run outdated scripts
gbarter Jul 12, 2021
81f655c
fixing linearization tests and shortening all runtimes
gbarter Jul 12, 2021
5a84beb
fix dlc generator tests
gbarter Jul 12, 2021
8c916af
Squashed 'pyHAMS/' changes from 2ad2598ba..681d0c812
gbarter Jul 12, 2021
60fea17
Merge commit '8c916af8fc2d47171c392374139d1e34cf4dd4cb' into global_d…
gbarter Jul 12, 2021
adb8011
Merge commit '9d62b7c2147b477eefc5e4adc3347ac19194f30d' into global_d…
gbarter Jul 12, 2021
9d62b7c
Squashed 'RAFT/' changes from 4d15cc046..7e390422f
gbarter Jul 12, 2021
b20960c
Merge branch 'develop' into global_dlc_driver
gbarter Jul 12, 2021
7613c82
Add openfast library call to unit testing, not working
dzalkind Jul 12, 2021
fd477ce
reactivating some 01 tests
gbarter Jul 13, 2021
ae17e80
Fix example 12:
dzalkind Jul 13, 2021
c29926c
Merge remote-tracking branch 'upstream/global_dlc_driver' into global…
dzalkind Jul 13, 2021
67b40e5
make sure to use strip theory if potmod=0
gbarter Jul 13, 2021
f84f74c
Merge branch 'global_dlc_driver' of github.com:WISDEM/WEIS into globa…
gbarter Jul 13, 2021
a52b7d1
Merge branch 'develop' into global_dlc_driver
gbarter Jul 13, 2021
67efa71
removing older parametric sweeps
gbarter Jul 13, 2021
6c13b51
Set the OpenFAST Library path in test script
rafmudaf Jul 13, 2021
0daf84e
Merge pull request #135 from rafmudaf/global_dlc_driver
gbarter Jul 13, 2021
8525456
Use all of ROSCO schema, update w/ required inputs in all examples
dzalkind Jul 13, 2021
2348b37
Merge remote-tracking branch 'upstream/global_dlc_driver' into global…
dzalkind Jul 13, 2021
d32c596
cleaning up test and skipping broken one
gbarter Jul 13, 2021
ccbba6c
only comment out offending line
gbarter Jul 13, 2021
48bdc5c
Remove new ROSCO defaults from modeling inputs
dzalkind Jul 14, 2021
a837dec
Merge commit '5ca0caa8e47e9e8bcac4248a450dae1755a36e5e' into global_d…
dzalkind Jul 14, 2021
5ca0caa
Squashed 'ROSCO/' changes from 81b34264..7eff3541
dzalkind Jul 14, 2021
6c866c8
Merge remote-tracking branch 'upstream/global_dlc_driver' into global…
dzalkind Jul 14, 2021
05184d7
Squashed 'ROSCO/' changes from 7eff3541..bf36d7c1
dzalkind Jul 14, 2021
3aaf5f8
Merge commit '05184d70e84bd5664ce09b7e9cb99607694fd146' into global_d…
dzalkind Jul 14, 2021
676920b
allow RAFT to remove ghost/overlap sections and cleanup controller co…
gbarter Jul 14, 2021
2b5800d
Merge commit 'e77beb4257af174cefbd1d7bc14ce25ce1aa15bf' into global_d…
gbarter Jul 14, 2021
e77beb4
Squashed 'RAFT/' changes from 7e390422f..8ed2321a3
gbarter Jul 14, 2021
bcb6da1
Squashed 'WISDEM/' changes from bf7c1a728..0cdb6bd6e
gbarter Jul 14, 2021
8c8895d
Merge commit 'bcb6da17e01643286b1c0fc13106841c1368eb00' into global_d…
gbarter Jul 14, 2021
79dcd77
temporary removal of hack
gbarter Jul 14, 2021
ed4d0a6
can now do mixed BEM/strip theory for HydroDyn members
gbarter Jul 15, 2021
69044df
Squashed 'RAFT/' changes from 8ed2321a3..3f804e78e
gbarter Jul 15, 2021
d79cb0c
Merge commit '69044dfd4ebccf2969050495d3e20c76a2030021' into global_d…
gbarter Jul 15, 2021
e7e5fe0
suppress quadratic drag terms
gbarter Jul 15, 2021
92b3cd7
reverting change because it causes too many problems
gbarter Jul 15, 2021
f32e55c
consolidate simple turbsim manipulators
gbarter Jul 15, 2021
83a98c1
use coarsest discretization possible in hydrodyn to avoid joints near…
gbarter Jul 15, 2021
5020515
Merge commit '4735c1d066917c258cdba1492d9dba4e6694f11e' into global_d…
gbarter Jul 16, 2021
4735c1d
Squashed 'WISDEM/' changes from 0cdb6bd6e..7729f490d
gbarter Jul 16, 2021
6ca1aac
forgot a file
gbarter Jul 16, 2021
2ec1bb2
reducing simulation time
gbarter Jul 16, 2021
1c35023
Squashed 'WISDEM/' changes from 7729f490d..bc9260dfb
gbarter Jul 16, 2021
49c1ae7
Merge commit '1c35023e840c1c522e1e0a7cc2238caf593a922c' into global_d…
gbarter Jul 16, 2021
4ebf355
trying to speed up testing runtimes
gbarter Jul 16, 2021
87aebc2
still trying to shorten runtimes
gbarter Jul 16, 2021
55a6f04
progress, but trying mpi for all tests
gbarter Jul 17, 2021
fe73c93
reverting changes
gbarter Jul 17, 2021
dd1783e
Merge branch 'develop' into global_dlc_driver
johnjasa Jul 19, 2021
471208f
Squashed 'WISDEM/' changes from ea7c124c1..44e7505f8
gbarter Jul 19, 2021
62d8755
Merge commit '471208f4e96132021b11c319c2e84c9910df6e11' into global_d…
gbarter Jul 19, 2021
064c4cb
wind seeds are different across wind speeds
ptrbortolotti Jul 20, 2021
dfd501c
add flag to fix seed of integer generator
ptrbortolotti Jul 20, 2021
dbf3281
handle more than one seed
ptrbortolotti Jul 20, 2021
f01623f
stats for dlc11 are per wind speed in pcrunch
ptrbortolotti Jul 20, 2021
1e25535
fix test dlc generator
ptrbortolotti Jul 20, 2021
51d5a91
Merge pull request #137 from WISDEM/unique_seeds
gbarter Jul 21, 2021
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
2 changes: 1 addition & 1 deletion MoorPy/moorpy/Catenary.py
Original file line number Diff line number Diff line change
Expand Up @@ -299,7 +299,7 @@ def catenary(XF, ZF, L, EA, W, CB=0, HF0=0, VF0=0, Tol=0.000001, nNodes=20, MaxI

# check for errors ( WOULD SOME NOT ALREADY HAVE BEEN CAUGHT AND RAISED ALREADY?)
if info['error']==True:
breakpoint()
#breakpoint()
# >>>> what about errors for which we can first plot the line profile?? <<<<
raise CatenaryError("Error in catenary computations: "+info['message'])

Expand Down
8 changes: 6 additions & 2 deletions MoorPy/moorpy/body.py
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,8 @@ def __init__(self, mooringSys, num, type, r6, m=0, v=0, rCG=np.zeros(3), AWP=0,

self.sharedLineTheta = []
self.fairR = 0.

self.R = np.eye(3) # body orientation rotation matrix

#print("Created Body "+str(self.number))

Expand Down Expand Up @@ -118,9 +120,11 @@ def setPosition(self, r6):
else:
raise ValueError(f"Body setPosition method requires an argument of size 6, but size {len(r6):d} was provided")

self.R = rotationMatrix(self.r6[3], self.r6[4], self.r6[5]) # update body rotation matrix

# update the position of any attached Points
for PointID,rPointRel in zip(self.attachedP,self.rPointRel):
rPoint = transformPosition(rPointRel, r6)
rPoint = np.matmul(self.R, rPointRel) + self.r6[:3] # rPoint = transformPosition(rPointRel, r6)
self.sys.pointList[PointID-1].setPosition(rPoint)

if self.sys.display > 3:
Expand Down Expand Up @@ -349,5 +353,5 @@ def redraw(self):



#

6 changes: 6 additions & 0 deletions MoorPy/moorpy/helpers.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,12 @@ def __init__(self, message):
self.message = message


# Generic MoorPy error
class MoorPyError(Error):
'''Derived error class for MoorPy. Contains an error message'''
def __init__(self, message):
self.message = str(message)




Expand Down
38 changes: 21 additions & 17 deletions MoorPy/moorpy/system.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
from moorpy.lineType import LineType

#import moorpy.MoorSolve as msolve
from moorpy.helpers import rotationMatrix, rotatePosition, getH, printVec, set_axes_equal, dsolve2, SolveError
from moorpy.helpers import rotationMatrix, rotatePosition, getH, printVec, set_axes_equal, dsolve2, SolveError, MoorPyError



Expand Down Expand Up @@ -1305,7 +1305,10 @@ def step_func_equil(X, args, Y, oths, Ytarget, err, tol_, iter, maxIter):

# Call dsolve function
#X, Y, info = msolve.dsolve(eval_func_equil, X0, step_func=step_func_equil, tol=tol, maxIter=maxIter)
X, Y, info = dsolve2(eval_func_equil, X0, step_func=step_func_equil, tol=tols, maxIter=maxIter, display=display)
try:
X, Y, info = dsolve2(eval_func_equil, X0, step_func=step_func_equil, tol=tols, maxIter=maxIter, display=display)
except Exception as e:
raise MoorPyError(e)
# Don't need to call Ytarget in dsolve because it's already set to be zeros


Expand All @@ -1332,21 +1335,22 @@ def step_func_equil(X, args, Y, oths, Ytarget, err, tol_, iter, maxIter):
print(f"current system stiffness: {K}")
print(f"\n Current force {F}")

# plot the convergence failure
if n < 8:
fig, ax = plt.subplots(2*n, 1, sharex=True)
for i in range(n):
ax[ i].plot(info['Xs'][:info['iter']+1,i])
ax[n+i].plot(info['Es'][:info['iter']+1,i])
ax[-1].set_xlabel("iteration")
else:
fig, ax = plt.subplots(n, 2, sharex=True)
for i in range(n):
ax[i,0].plot(info['Xs'][:info['iter']+1,i])
ax[i,1].plot(info['Es'][:info['iter']+1,i])
ax[-1,0].set_xlabel("iteration, X")
ax[-1,1].set_xlabel("iteration, Error")
plt.show()
# plot the convergence failure
if n < 8:
fig, ax = plt.subplots(2*n, 1, sharex=True)
for i in range(n):
ax[ i].plot(info['Xs'][:info['iter']+1,i])
ax[n+i].plot(info['Es'][:info['iter']+1,i])
ax[-1].set_xlabel("iteration")
else:
fig, ax = plt.subplots(n, 2, sharex=True)
for i in range(n):
ax[i,0].plot(info['Xs'][:info['iter']+1,i])
ax[i,1].plot(info['Es'][:info['iter']+1,i])
ax[-1,0].set_xlabel("iteration, X")
ax[-1,1].set_xlabel("iteration, Error")
plt.show()

raise SolveError(f"solveEquilibrium3 failed to find equilibrium after {iter} iterations, with residual forces of {F}")


Expand Down
Loading