Jump to content

Britton Ward

Members
  • Content Count

    56
  • Joined

  • Last visited

Posts posted by Britton Ward


  1. Stefan,

     

    Thanks for your help. I think I would have stumbled around for days without finding this!

     

    I tried to extend what you showed to add the control points and weights but am hitting another road block.

     

    I am reading a list of control points in the following format. Each point on a line.  X, Y, Z of vertex and then the weight.

     

    I was planning on reading the line into a Fdoubleseries as before and then putting the first 3 elements into the control point array and the last into the weights object list.. but again am missing something.... 

     

    Thanks for any guidance you might have!

     

    Britt

     

     

     

     

    X,Y,Z,WT

     

    -9.676823, 0.000000, -0.179737, 1.000000
    -9.676817, 0.119120, -0.179743, 1.000000
    -9.676816, 0.396021, -0.179943, 1.000000
    -9.676822, 0.765867, -0.217755, 1.000000
    -9.676806, 1.092176, -0.297093, 1.000000
    -9.676817, 1.366311, -0.423463, 1.000000
    -9.676838, 1.496214, -0.644759, 1.000000
    -9.676845, 1.620421, -0.856858, 1.000000
    -9.676815, 1.789719, -1.145828, 1.000000
    -9.676839, 1.892176, -1.321044, 1.000000

     

     

    //Read Nodes

    unsigned idu(0)

     

    loop(nU)

     

    unsigned idv(0)

     

    loop(nv)

    string line(file.readLine())

    objectList data(line.splitByRegExp("[, ]")) //.castTo(FString).todouble()

     

    fdoubleseries dpt()

     

    foreach(double k : data)

    dpt.push_back(k)

    endfor

    fVector3 vec()

     

    // echo(dpt.at(0).castto(FString))

     

    // vec.setVector([dpt.at(0),dpt.at(1),dpt.at(2)])

     

    // FSImport.SetPointArray.add()

     

    idV+=1

    endloop

     

     

    idU+=1

    endloop


  2. Hi,

     

    I've written a simple export routine for another Nurbs surface modeler and the export works well.

     

    I'm trying to write an import feature to read the same type of file and produce a Nurbs surface.  Portion of the code here.

     

    I read the knot vector without any trouble [from a single, comma separated line].  When I try to  .setUKnotvector() of my new surface and pass the uKnots list I get compilation errors. I have tried all sorts of casting options and other options but I cannot seem to get uKnots passed into FSImport.setUKnotvector(uKnots)

     

    Any advice would be appreciated.

     

    Thanks,

    Britt

     

     

    string line(file.readLine())

    ObjectList uKnots(line.splitByRegExp("[, ]")).castTo(FString).todouble()

    int nukts(uKnots.getCount())

     

     

    //FSimport.setUknotvector.addValues(data.castTo(FSeries))

    //Fseries uKnots.addvalues(data)

    //FSImport.setUKnotvector.addValues(uKnots.castTo(FSeries))

     

     

    string line(file.readLine())

    objectList vKnots(line.splitByRegExp("[, ]")).castTo(FString).todouble()

    int nvkts(vKnots.getCount())

     

     

    nurbssurface FSImport().setName(surfname)

    FSImport.setUdegree(uDeg)

    FSImport.setVdegree(vDeg)

    FSImport.setUknotvector(uKnots())

    FSImport.setVknotvector(vKnots)

     


  3. In many of our surface descriptions we model a chine by tripling a knot vector [for a 3 Degree Surface].  For example the V knot vector for a surface here:

     

    0.000000,0.000000,0.000000,0.000000,  0.166667,  0.333333,       0.5, 0.666667,  0.666667,  0.666667,  0.833333,         1,         1,         1,         1

     

    Importing this surface as an IGES works as expected.

     

    However, if you create an image of the surface the topology is lost and the surface appears to be refit using the number U and V resolutions you have specified.  The result is a loss of the hard corner at the chine, replaced by an approximation and unfairness.

     

    As a work around I realize I can subsurface the imported surface into two surfaces and make them a surface collection.

    I wonder if there would be a way in the future for these fitting transforms to detect a chine discontinuity in the knot vector and preserve this in the fitted or transformed surfaces.

     

    I'm sure there may be downstream issues but thought I would point it out.

     

    I can supply an example if that would make it more clear.

     

     

    Britt


  4. Thanks for the fast feedback.

     

    My feature can take either FBsplineSurface or FNurbsurface as input because it needs to operate on the knot vectors etc.  I tried to use the generic FSurface but that caused errors accordingly.

     

    I'll try to create the simple feature Mattia describes and give that a go.

     

    Thanks,

     

    Britt


  5. Hi,

     

    I have a feature that requires a BSpline or a NURBS surface as input.

     

    I want to use a metasurface as the input but my feature will not accept this.

     

    If I click on the metasurface and then create a NURBS surface this creates a NURBS representation that works with my feature but this is not persistent and does not update when I update the metasurface.

     

    Is there a simple way to create a FNurbsSurface from a Metasurface that updates as the Metasurface updates?

    Thanks,

    Britt


  6. Claus/Joerg,

    Thanks so much for these examples. It certainly helps clarify how to use the interfaces and some of the options available. That will be a big help in the future.  I have spent some time working with the solutions today and I'm thinking that Claus's suggestion of a meta surface generated from the difference between the iso parameters may be the best solution. I'm playing with the curve engine now to create this meta surface and will see how I get on..

     

    Thanks,

    Britt


  7. A project I have been working on for the past few weeks seems to have become corrupted.  When I try to load the project it hangs and ends up " Not Responding".  Is there anyway to recover the project or to determine where it is hanging up on the install?  The log files do not seem to have any details.

     

     


  8. Arne,
     
    Thank you for the response.
     
    The issue with the canceller classes for both hexpress and finemarine is that the programs are launched by scripts or batch files and such the process name is different to that entered into SSH resource manager.
     
    For instance:  hexpress is launched by the call /apps/numeca/hexpressmarine30_1  but the process is hexpressx86_64  
     
    For the Fine/Marine solver things are more confusing and I haven't managed to get running at all.
     
    Executing the fine/marine process is typically done using a batch file like the attached rather than “….executable.exe –batch ..” syntax that is used for the mesher etc.  It seems the SHHresource manager requires an executable path but this batch file will be written by the FW to the design directory so am confused about how to get SSHRM to launch the job correctly.  What syntax should go in the FineMarine application field on the SSHRM so that this batch file can be launched?

     

    This relates to the questions on the canceller as the process ID name isiscfdd is not the same as the app name used to launch the computations.  A typical linux batch file is as follows.

     

    Typically the solver is cancelled by editing the stop.now file  with echo -1 > stop.now and this sends the signal to the solver to shutdown correctly.  I guess this could be implemented in another canceller class.

     

    #!/bin/sh
    #############################################
    ##                 SETTINGS                  
    #############################################
    NI_VERSIONS_DIR=/apps/numeca/finemarine23_2
     
    export NI_VERSIONS_DIR
     
    LD_LIBRARY_PATH=$NI_VERSIONS_DIR/LINUX/_mpi/_ompi1.4/lib:${LD_LIBRARY_PATH}
    export LD_LIBRARY_PATH
     
    #############################################
    ##  WORKING DIRECTORY
    #############################################
    WDIR=/cfd_work/share/PCT38_M3_T00_v5/PCT38_M3_T00_v5_r5
    cd $WDIR
    #############################################
    ##  LAUNCH part
    #############################################
    $NI_VERSIONS_DIR/LINUX/isis/hexpress2isis_no_interactivex86_64 -p=/cfd_work/share/PCT38_M3_T00_v5/PCT38_M3_T00_v5_r5 > hexpress2isis.log
    $NI_VERSIONS_DIR/LINUX/isis/premetisx86_64 -npar=24 -sim=/cfd_work/share/PCT38_M3_T00_v5/PCT38_M3_T00_v5_r5/PCT38_M3_T00_v5_r5.sim -auto > premetis.log
    $NI_VERSIONS_DIR/LINUX/_mpi/_ompi1.4/bin/mpirun -np 24 -machinefile /cfd_work/share/PCT38_M3_T00_v5/PCT38_M3_T00_v5_r5/machines.txt $NI_VERSIONS_DIR/LINUX/isis/isiscfdmpi_openmpix86_64 > /cfd_work/share/PCT38_M3_T00_v5/PCT38_M3_T00_v5_r5/PCT38_M3_T00_v5_r5.std
    $NI_VERSIONS_DIR/LINUX/isis/isis2cfview_no_interactivex86_64 -p=/cfd_work/share/PCT38_M3_T00_v5/PCT38_M3_T00_v5_r5 > isis2cfview.log

     

     

    If you were doing a local execution then things like machinefile and nproc can be entered in the FW but for a resourcemanager launch I would think it best if the SSHFM could populate these fields? Is that possible?
     


  9. To add on... I have verified that the input files are successfully transmitted to the host.  The file _runRemoteProcess_.bat is written to the job directory but it does not appear to execute correctly.  If I SSH to that node and execute the batch file ./_runRemoteProcess_.bat  it launches hexpress and executes the script as designed.  Why would the command not be executing correctly when run from the resource manager?


  10. Hi,

     

    After a few days trying I have successfully set up the SSHresource manager with a Postgres DB back end.  CAESES can communicate with the server but when I attempt to execute a hexpress job it fails.  Does anyone have suggestions on a) what the application executable calls for Hexpress and FineMarine should look like in the SSHresourceManager and B) any suggestions on custom canceller classes for SSHresource manager for these tools?  I am running the solver/meshers on Linux Centos X64.

     

    Thanks for any advice,

     

    Britton Ward

×
×
  • Create New...