mirror of https://gitlab.com/pamhyr/pamhyr2
Compare commits
No commits in common. "d66e75c1833fe78d9c58816ae490a42a4ddf3a29" and "d4ef06c7c1bb507cbfc5d342dd7486a19be9590b" have entirely different histories.
d66e75c183
...
d4ef06c7c1
|
|
@ -119,10 +119,10 @@ dl-rubar-linux:
|
||||||
rules:
|
rules:
|
||||||
- if: $CI_COMMIT_BRANCH == 'ci-test' || $CI_COMMIT_BRANCH == 'master' || $CI_COMMIT_TAG
|
- if: $CI_COMMIT_BRANCH == 'ci-test' || $CI_COMMIT_BRANCH == 'master' || $CI_COMMIT_TAG
|
||||||
script:
|
script:
|
||||||
|
- curl -L -o rubar.tgz https://forge.inrae.fr/river-hydraulics/rubarbe/-/releases/$RUBAR_VERSION/downloads/packages/rubar_linux.tgz
|
||||||
- mkdir -p rubar-linux
|
- mkdir -p rubar-linux
|
||||||
- cd rubar-linux
|
- cd rubar-linux
|
||||||
- curl -L -o rubar.tgz https://forge.inrae.fr/river-hydraulics/rubarbe/-/releases/$RUBAR_VERSION/downloads/packages/rubar_linux.tgz
|
- tar xf ../rubar.tgz
|
||||||
- tar xf rubar.tgz
|
|
||||||
artifacts:
|
artifacts:
|
||||||
paths:
|
paths:
|
||||||
- rubar-linux/rubarbe
|
- rubar-linux/rubarbe
|
||||||
|
|
@ -134,10 +134,10 @@ dl-rubar-windows:
|
||||||
rules:
|
rules:
|
||||||
- if: $CI_COMMIT_BRANCH == 'ci-test' || $CI_COMMIT_BRANCH == 'master' || $CI_COMMIT_TAG
|
- if: $CI_COMMIT_BRANCH == 'ci-test' || $CI_COMMIT_BRANCH == 'master' || $CI_COMMIT_TAG
|
||||||
script:
|
script:
|
||||||
|
- curl -L -o rubar.tgz https://forge.inrae.fr/river-hydraulics/rubarbe/-/releases/$RUBAR_VERSION/downloads/packages/rubar_windows.tgz
|
||||||
- mkdir -p rubar-windows
|
- mkdir -p rubar-windows
|
||||||
- cd rubar-windows
|
- cd rubar-windows
|
||||||
- curl -L -o rubar.tgz https://forge.inrae.fr/river-hydraulics/rubarbe/-/releases/$RUBAR_VERSION/downloads/packages/rubar_windows.tgz
|
- tar xf ../rubar.tgz
|
||||||
- tar xf rubar.tgz
|
|
||||||
artifacts:
|
artifacts:
|
||||||
paths:
|
paths:
|
||||||
- rubar-windows/rubarbe.exe
|
- rubar-windows/rubarbe.exe
|
||||||
|
|
|
||||||
|
|
@ -63,29 +63,38 @@ class InternalMeshing(AMeshingTool):
|
||||||
|
|
||||||
def st_to_m(self, profiles, guide_list):
|
def st_to_m(self, profiles, guide_list):
|
||||||
|
|
||||||
guide_list = ["un"] + guide_list + ["np"]
|
gl1 = [""] + guide_list
|
||||||
max_values = [0] * (len(guide_list) - 1)
|
gl2 = guide_list + [""]
|
||||||
max_values_index = [0] * (len(guide_list) - 1)
|
max_values = [0] * (len(guide_list) + 1)
|
||||||
|
max_values_index = [0] * (len(guide_list) + 1)
|
||||||
# we work between each couple of guidelines
|
# we work between each couple of guidelines
|
||||||
for j, p in enumerate(profiles):
|
for j, p in enumerate(profiles):
|
||||||
|
index1 = 0
|
||||||
|
index2 = p.named_point_index(guide_list[0])
|
||||||
|
if index2 - index1 > max_values[0]:
|
||||||
|
max_values[0] = index2 - index1
|
||||||
|
max_values_index[0] = j
|
||||||
for i in range(len(guide_list) - 1):
|
for i in range(len(guide_list) - 1):
|
||||||
index1 = p.named_point_index(guide_list[i])
|
index1 = p.named_point_index(guide_list[i])
|
||||||
index2 = p.named_point_index(guide_list[i+1])
|
index2 = p.named_point_index(guide_list[i+1])
|
||||||
if index2 - index1 > max_values[i]:
|
if index2 - index1 > max_values[i+1]:
|
||||||
max_values[i] = index2 - index1
|
max_values[i+1] = index2 - index1
|
||||||
max_values_index[i] = j
|
max_values_index[i+1] = j
|
||||||
|
index1 = p.named_point_index(guide_list[-1])
|
||||||
|
index2 = len(p) - 1
|
||||||
|
if index2 - index1 > max_values[-1]:
|
||||||
|
max_values[-1] = index2 - index1
|
||||||
|
max_values_index[-1] = j
|
||||||
|
|
||||||
for i in range(len(max_values)):
|
for i in range(len(max_values)):
|
||||||
for isect in range(max_values_index[i], len(profiles)-1):
|
for isect in range(max_values_index[i], len(profiles)-1):
|
||||||
self.compl_sect(profiles[isect],
|
self.compl_sect(profiles[isect],
|
||||||
profiles[isect+1],
|
profiles[isect+1],
|
||||||
guide_list[i],
|
gl1[i], gl2[i])
|
||||||
guide_list[i+1])
|
|
||||||
for isect in reversed(range(0, max_values_index[i])):
|
for isect in reversed(range(0, max_values_index[i])):
|
||||||
self.compl_sect(profiles[isect+1],
|
self.compl_sect(profiles[isect+1],
|
||||||
profiles[isect],
|
profiles[isect],
|
||||||
guide_list[i],
|
gl1[i], gl2[i])
|
||||||
guide_list[i+1])
|
|
||||||
return profiles
|
return profiles
|
||||||
|
|
||||||
def interpolate_transversal_step(self,
|
def interpolate_transversal_step(self,
|
||||||
|
|
@ -285,8 +294,6 @@ class InternalMeshing(AMeshingTool):
|
||||||
sgn = -1.0
|
sgn = -1.0
|
||||||
else:
|
else:
|
||||||
sgn = old_orientation
|
sgn = old_orientation
|
||||||
if abs(sgn) < 0.5:
|
|
||||||
sgn = 1.0
|
|
||||||
|
|
||||||
new_rk = [0.0]*nprof
|
new_rk = [0.0]*nprof
|
||||||
new_rk[origin] = origin_value
|
new_rk[origin] = origin_value
|
||||||
|
|
|
||||||
|
|
@ -76,22 +76,11 @@ class Profile(object):
|
||||||
return self.points[index]
|
return self.points[index]
|
||||||
|
|
||||||
def named_point(self, name):
|
def named_point(self, name):
|
||||||
if name == "un":
|
|
||||||
return self.points[0]
|
|
||||||
elif name == "np":
|
|
||||||
return self.points[-1]
|
|
||||||
else:
|
|
||||||
return next((p for p in self.points if p.name == name), None)
|
return next((p for p in self.points if p.name == name), None)
|
||||||
|
|
||||||
def named_point_index(self, name):
|
def named_point_index(self, name):
|
||||||
if name == "un":
|
|
||||||
return 0
|
|
||||||
elif name == "np":
|
|
||||||
return len(self.points) - 1
|
|
||||||
else:
|
|
||||||
return next(
|
return next(
|
||||||
(p for p in enumerate(self.points) if p[1].name == name),
|
(p for p in enumerate(self.points) if p[1].name == name), None
|
||||||
None
|
|
||||||
)[0]
|
)[0]
|
||||||
|
|
||||||
@property
|
@property
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue