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

Secondary solution (grad u) is not computed correctly #4

Open
VikingScientist opened this issue Mar 9, 2017 · 4 comments
Open

Secondary solution (grad u) is not computed correctly #4

VikingScientist opened this issue Mar 9, 2017 · 4 comments

Comments

@VikingScientist
Copy link
Contributor

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>                        
<simulation>                                                                   
  <!-- General - geometry definitions !-->                                     
  <geometry dim="3">                                                           
    <patchfile>PipeFlow3D.g2</patchfile>                                       
    <raiseorder patch="1" u="0" v="0" w="1"/>                                  
    <refine patch="1" u="3" v="3" w="7"/>                                      
    <topologysets>                                                             
      <set name="Inflow" type="face">                                          
        <item patch="1">5</item>                                               
      </set>                                                                   
      <set name="Outflow" type="face">                                         
        <item patch="1">6</item>                                               
      </set>                                                                   
    </topologysets>                                                            
  </geometry>                                                                  
                                                                               
  <!-- General - boundary conditions !-->                                      
  <boundaryconditions>                                                         
    <dirichlet set="Inflow"  comp="1" type="constant"> 3 </dirichlet>          
    <dirichlet set="Outflow" comp="1" type="constant"> 0 </dirichlet>          
  </boundaryconditions>                                                        
                                                                               
  <!-- Problem-specific block !-->                                             
  <darcy>                                                                      
    <permvalues>1|1|1</permvalues>                                             
    <bodyforce>0|0|0</bodyforce>                                               
    <source>0</source>                                                         
  </darcy>                                                                     
                                                                               
  <postprocessing>                                                             
    <vtfformat nviz="2">ascii</vtfformat>                                      
  </postprocessing>                                                            
                                                                               
</simulation>                                                                  

Where PipeFlow3D.g2 is a straight cylinder:

700 1 0 0                                                                      
3 1                                                                            
3 3                                                                            
0.000000 0.000000 0.000000 1.000000 1.000000 1.000000                          
3 3                                                                            
0.000000 0.000000 0.000000 1.000000 1.000000 1.000000                          
2 2                                                                            
0.000000 0.000000 1.000000 1.000000                                            
-0.000000 -1.414214 1.414214 1.000000                                          
0.000000 -2.000000 0.000000 0.707107                                           
0.000000 -1.414214 -1.414214 1.000000                                          
-0.000000 0.000000 2.000000 0.707107                                           
0.000000 0.000000 0.000000 1.000000                                            
0.000000 0.000000 -2.000000 0.707107                                           
-0.000000 1.414214 1.414214 1.000000                                           
0.000000 2.000000 0.000000 0.707107                                            
0.000000 1.414214 -1.414214 1.000000                                           
18.000000 -1.414214 1.414214 1.000000                                          
12.727922 -2.000000 0.000000 0.707107                                          
18.000000 -1.414214 -1.414214 1.000000                                         
12.727922 0.000000 2.000000 0.707107                                           
18.000000 0.000000 0.000000 1.000000                                           
12.727922 0.000000 -2.000000 0.707107                                          
18.000000 1.414214 1.414214 1.000000                                           
12.727922 2.000000 0.000000 0.707107                                           
18.000000 1.414214 -1.414214 1.000000                                          

The pressure should form a linear drop from left to right with a gradient that is constant [a,0,0] for some value a. Instead, this is what I get:

pipebug

@VikingScientist
Copy link
Contributor Author

Running this with the flag "-LR" gives the following output

Projecting secondary solution ...
	Greville point projection
 *** ASMu2D::evalSolution: LR B-splines require the same number of evaluation points in u-, v- and w-direction.
 *** SIMbase::project: Failure when projecting patch 1.

It looks like it tries to enter 2D projection methods for this 3D example. Is similar things the reason for the errors in tensor product?

@akva2
Copy link
Member

akva2 commented Mar 9, 2017

"somebody" was eager on the copy-paste when doing ASMu3D is all.

@VikingScientist
Copy link
Contributor Author

Hehe, would you look at that. It appears that you are right 😸 Then back to the drawing board. I have no idea what causes this.

@akva2
Copy link
Member

akva2 commented Mar 14, 2017

debugged a bit further. B-splines = all good. what happens is that gotools give us broken basis function derivatives whenever the evaluation point hit the node of a spline for rationals - which explain why the nastyness is near the boundary. haven't digged further yet, i hope to find a 2D case to ease debugging.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants