DiscussionsIssue archiveOCCT:Modeling Algorithms

Archived issue #0029910

Porting to Debian80-64 : Regressions in Modeling Algorithms

Open CASCADEOCCT:Modeling Algorithmsassigned35 public notes

Search issues

Description

Source: http://jenkins-test-12.nnov.opencascade.com/view/JT-12/
Test cases:
bugs modalg_7 bug28119_1
bugs modalg_7 bug28131

Station : debian8-03

Public activity

35 archived notes

Participants are labeled by their role within this record.

01Commenter 1
Dear Nikolay, this bug shows instability related to different compiler. Could you trace the difference to understand the root of the problem?
02Commenter 1
Branch [archived branch] has been created by Participant.

[revision removed]


Detailed log of new commits:

Author: nbv
Date: Mon Jul 16 15:32:23 2018 +0300

    0029910: Porting to Debian80-64 : Regressions in Modeling Algorithms
    
    The algorithm of choice of isoline (while surface-surface intersecting) has become more platform independent.
03Author
bugs modalg_7 bug28119_1 regression is disappears
http://occt-tests/JT-12-WEEK29-OCCT/Debian80-64/summary.html
04Commenter 1
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
05Commenter 1
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
06Commenter 1
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
07Commenter 1
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
08Commenter 1
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
09Commenter 1
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
10Commenter 1
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
11Commenter 1
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
12Commenter 1
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
13Commenter 1
Branch [archived branch] has been updated by Participant.

[revision removed]


Detailed log of new commits:

Author: nbv
Date: Wed Jul 25 13:49:57 2018 +0300

    Temporary commit

14Commenter 1
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
15Commenter 1
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
16Commenter 1
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
17Commenter 1
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
18Commenter 1
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
19Commenter 1
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
20Commenter 20
DC,

Test "bugs modalg_7 bug28131" is stable on all platforms.

Making the test "bugs modalg_7 bug28119_1" stable requires serious development. The main problem is in intersection algorithm. Namely in the function IntImp_ComputeTangence(...) (see src/IntImp/Attachment 1 (CXX) file). This function is responsible for choosing isoline, along which the WLine will go. And this algorithm is really unstable in cases when two surfaces are almost tangent. It means that by the reason of numerical instability WLine can go in significantly different direction (see the message ~77421).

All attempts to make choice of direction more platform independent (by entering some tolerance, what were made in many fixes) led to additional regressions. I.e. in the places where WLIne shall curve, after the fix it continuous its direction.

I have attached the new version of the file Attachment 1 (CXX). There, the algorithm of iso-line choosing has been rewritten and (in my opinion) is more logical. However, currently it cannot be implemented because it requires rewriting IntWalk_PWalking algorithm completely. Namely, redefinition of minimal and maximal step of WLine, maximal deflection, angle of WLine rotation and many other criteria; revision of all statuses (enumerated in IntWalk_StatusDeflection.hxx file). Maybe, returning to this question will be possible after the fix #23914.

Conclusion!

Currently it is better to mark the test "bugs modalg_7 bug28119_1" as really unstable. Maybe in the future this instability will be fixed by some changes in fillet algorithm but here I repeat that the main reason of the current instability is in intersection algorithm and its fixing requires serious development.
21Commenter 1
Branch [archived branch] has been created by Participant.

[revision removed]


Detailed log of new commits:

Author: nbv
Date: Mon Jul 16 15:32:23 2018 +0300

    0029910: Porting to Debian80-64 : Regressions in Modeling Algorithms
    
    Adjusting test cases.
    Creation of new test cases.
22Commenter 1
Branch [archived branch] has been updated by Participant.

[revision removed]


Detailed log of new commits:

Author: nbv
Date: Fri Aug 3 13:32:32 2018 +0300

    Adjusting test cases.

23Commenter 1
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
24Commenter 1
Branch [archived branch] has been updated by Participant.

[revision removed]


Detailed log of new commits:

Author: nbv
Date: Fri Aug 3 14:58:26 2018 +0300

    # Adjusting test cases.

25Commenter 1
Branch [archived branch] has been updated by Participant.

[revision removed]


Detailed log of new commits:

Author: nbv
Date: Fri Aug 3 15:29:46 2018 +0300

    # Adjusting test cases.

26Commenter 1
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
27Commenter 1
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
28Commenter 1
Branch [archived branch] has been created by Participant.

[revision removed]


Detailed log of new commits:

Author: nbv
Date: Mon Jul 16 15:32:23 2018 +0300

    0029910: Porting to Debian80-64 : Regressions in Modeling Algorithms
    
    Adjusting test cases.
    Creation of new test cases.
29Commenter 1
Branch [archived branch] has been updated by Participant.

[revision removed]


Detailed log of new commits:

Author: nbv
Date: Tue Aug 7 17:39:52 2018 +0300

    # Correction in test case.

30Commenter 1
Branch [archived branch] has been updated forcibly by Participant.

[revision removed]
31Commenter 31
Some addition to the message #0029910.

Currently there are no good fix to eliminate unstable behavior. In the attached file "Attachment 1 (CXX)" the function IntImp_ComputeTangence(...) has been rewritten. But the behavior in the point of branching is unpredictable as before. Nevertheless I believe that the new algorithm can be stabilized easier by entering some tolerance (as I tried to do it with the current algorithm). This conclusion is based on the fact that the new behavior is (in my opinion) more logical and the intersection line has more chances to be continued even from the points with some "specialties". Maybe some another (3rd) criterion of iso-line choice will be more effective. But implementation of new algorithm requires revision all IntWalk_PWalking class and after implementation the behavior of intersection line in region near to the tangent zones will be significantly changed.
32Commenter 32
Dear Author,

Please keep this bug as open even after integration the branch with test cases into MASTER.
33Commenter 1
Branch [archived branch] has been deleted by Participant.

[revision removed]
34Commenter 1
Branch [archived branch] has been deleted by Participant.

[revision removed]
35Commenter 1
Branch [archived branch] has been deleted by Participant.

[revision removed]

Related records