Hmm, how about trying replacing those two lines with: ParallelImageDataWriter1 = CreateCPWriter( XMLPImageDataWriter, "fullgrid_%t.pvti", 1, cp_writers )
Let me know how that goes. If not, I think we'll need to put some print statements in there. Andy On Thu, Mar 21, 2013 at 3:31 PM, Pettey . Lucas <lpet...@drc.com> wrote: > Yes I did. I have attached the latest script. > > Thank you for your valiant efforts in trying to solve this problem. > > Lucas > > ________________________________ > From: Andy Bauer [andy.ba...@kitware.com] > Sent: Thursday, March 21, 2013 2:22 PM > To: Pettey . Lucas > Cc: paraview [paraview@paraview.org] > Subject: Re: [Paraview] CoProcessing with Fortran and ParaView 3.98 > > Did you also include the w.UpdatePipeline() part after the writer was > created? It won't create the file unless that's in there. > > Andy > > On Thu, Mar 21, 2013 at 3:17 PM, Pettey . Lucas <lpet...@drc.com<mailto: > lpet...@drc.com>> wrote: > Hi Andy, > > Changing to Scalars=['POINTS','psi01'] did not change anything. I still > get the same error and blank image. > > I tried adding the XMLPImageDataWriter command, but no file > 'fullgrid.pvti' was produced so I can't tell what is being populated into > the grid. > > I hardwired the C++ adaptor to 'psi01' rather than the character array > name in case their was a problem with the way the string was passed. I had > checked that name contained the correct characters, but I figured > hardwiring would be safer at this stage. > > Anything else that you think I should try? > > Thanks, > Lucas > > ________________________________ > From: paraview-boun...@paraview.org<mailto:paraview-boun...@paraview.org> > [paraview-boun...@paraview.org<mailto:paraview-boun...@paraview.org>] on > behalf of Andy Bauer [andy.ba...@kitware.com<mailto:andy.ba...@kitware.com > >] > Sent: Thursday, March 21, 2013 12:49 PM > To: Pettey . Lucas > Cc: paraview [paraview@paraview.org<mailto:paraview@paraview.org>] > Subject: Re: [Paraview] CoProcessing with Fortran and ParaView 3.98 > > I think the problem is that: > Clip1 = Clip( guiName="Clip1", InsideOut=0, Scalars=['POINTS', ''], > Value=95.0, UseValueAsOffset=0, Crinkleclip=0, ClipType="Scalar" ) > > Should probably have the name of the point data field set in it. Do this > with (assuming psi01 is the name of the field you want to clip with respect > to: > Scalars=['POINTS', 'psi01'] > > > My guess is that the scalar field isn't getting set properly. Try adding > in: > w = XMLPImageDataWriter(Input=psi01_, FileName = 'fullgrid.pvti') > w.UpdatePipeline() > > right after the CreateProducer() method to see what's in your grid. > > By the way, does adding in the "//char(0)" work for converting Fortran > strings to C/C++ strings (e.g. in "call addfield(psi,"psi01"//char(0))") ? > If it does, will it also work for Fortran77? That's a neat little trick! > > Andy > > > On Wed, Mar 20, 2013 at 5:29 PM, Pettey . Lucas <lpet...@drc.com<mailto: > lpet...@drc.com><mailto:lpet...@drc.com<mailto:lpet...@drc.com>>> wrote: > I have solved the C++ to Fortran array issues, but I am still not getting > a meaningful visualization. I have attached the latest files, including a > screenshot of the exported state and the resulting image that is produced > by the coprocessor. > > The coprocessor is generating an error: > > ERROR: In > /Users/lucaspettey/ParaView-git/ParaView/VTK/Filters/General/vtkTableBasedClipDataSet.cxx, > line 1956 > vtkPVClipDataSet (0x7feaa4998550): no input scalars. > > This error is not appearing at the time=0 co-process, but it is appearing > each time step the co-processor is being asked to write an image. All of > the images are the same blank axes as in the attached image0.png. > > I'm not sure what to try next so any help is appreciated. > > Thanks, > Lucas > > ________________________________________ > From: paraview-boun...@paraview.org<mailto:paraview-boun...@paraview.org > ><mailto:paraview-boun...@paraview.org<mailto: > paraview-boun...@paraview.org>> [paraview-boun...@paraview.org<mailto: > paraview-boun...@paraview.org><mailto:paraview-boun...@paraview.org > <mailto:paraview-boun...@paraview.org>>] on behalf of Pettey . Lucas [ > lpet...@drc.com<mailto:lpet...@drc.com><mailto:lpet...@drc.com<mailto: > lpet...@drc.com>>] > Sent: Wednesday, March 20, 2013 11:45 AM > To: Andy Bauer > Cc: paraview [paraview@paraview.org<mailto:paraview@paraview.org><mailto: > paraview@paraview.org<mailto:paraview@paraview.org>>] > Subject: Re: [Paraview] CoProcessing with Fortran and ParaView 3.98 > > So after some troubleshooting it seems that C++ doesn't like the complex > data type the way Fortran is sending it. > > The code runs when I just send a real value. Images appear, but of course > they are meaningless since it isn't the correct data. I may try passing the > real and imaginary separate. I may also look into row/column order issues > although this grid is 100x100x100 so it shouldn't affect anything. > > Lucas > ________________________________________ > From: paraview-boun...@paraview.org<mailto:paraview-boun...@paraview.org > ><mailto:paraview-boun...@paraview.org<mailto: > paraview-boun...@paraview.org>> [paraview-boun...@paraview.org<mailto: > paraview-boun...@paraview.org><mailto:paraview-boun...@paraview.org > <mailto:paraview-boun...@paraview.org>>] on behalf of Pettey . Lucas [ > lpet...@drc.com<mailto:lpet...@drc.com><mailto:lpet...@drc.com<mailto: > lpet...@drc.com>>] > Sent: Wednesday, March 20, 2013 11:12 AM > To: Andy Bauer > Cc: paraview [paraview@paraview.org<mailto:paraview@paraview.org><mailto: > paraview@paraview.org<mailto:paraview@paraview.org>>] > Subject: Re: [Paraview] CoProcessing with Fortran and ParaView 3.98 > > Hi Andy and Berk, > > Here is the error that I am receiving. > > I know that it is initializing ok and failing at the first call to the > co-processor. I have attached my python script output as well as my test > code and adaptors. > > CoProcessingExample(19247,0x7fff77470180) malloc: *** > mmap(size=3739605888335872) failed (error code=12) > *** error: can't allocate region > *** set a breakpoint in malloc_error_break to debug > Operating system error: Cannot allocate memory > Memory allocation failed > > Thanks for the help, > Lucas > > From: Andy Bauer [andy.ba...@kitware.com<mailto:andy.ba...@kitware.com > ><mailto:andy.ba...@kitware.com<mailto:andy.ba...@kitware.com>>] > Sent: Wednesday, March 20, 2013 9:08 AM > To: Pettey . Lucas > Cc: Berk Geveci; paraview [paraview@paraview.org<mailto: > paraview@paraview.org><mailto:paraview@paraview.org<mailto: > paraview@paraview.org>>] > Subject: Re: [Paraview] CoProcessing with Fortran and ParaView 3.98 > > Hi Lucas, > > Can you share your co-processing script and any run output? There may be > warnings in the output or info in the script that will help figure that out. > > Thanks, > Andy > > On Wed, Mar 20, 2013 at 10:04 AM, Pettey . Lucas <lpet...@drc.com<mailto: > lpet...@drc.com><mailto:lpet...@drc.com<mailto:lpet...@drc.com>><mailto: > lpet...@drc.com<mailto:lpet...@drc.com><mailto:lpet...@drc.com<mailto: > lpet...@drc.com>>>> wrote: > Hi Berk, > > Thanks for the help. > > I found that this example is written based on an earlier version of VTK so > some of the function calls have changed. Based on your advice and some of > the examples contained in the ParaView wiki, I have gotten it to compile > and run. > > Now I just have to figure out why it isn't generating any VTK objects.... > > Probably something wrong with my python co-processing script. > > Thanks > Lucas > ________________________________ > From: Berk Geveci [berk.gev...@kitware.com<mailto:berk.gev...@kitware.com > ><mailto:berk.gev...@kitware.com<mailto:berk.gev...@kitware.com>><mailto: > berk.gev...@kitware.com<mailto:berk.gev...@kitware.com><mailto: > berk.gev...@kitware.com<mailto:berk.gev...@kitware.com>>>] > Sent: Tuesday, March 19, 2013 6:48 PM > To: Pettey . Lucas > Cc: paraview [paraview@paraview.org<mailto:paraview@paraview.org><mailto: > paraview@paraview.org<mailto:paraview@paraview.org>><mailto: > paraview@paraview.org<mailto:paraview@paraview.org><mailto: > paraview@paraview.org<mailto:paraview@paraview.org>>>] > Subject: Re: [Paraview] CoProcessing with Fortran and ParaView 3.98 > > You can simply delete this line: > > Grid->SetNumberOfScalarComponents(2); > > It is redundant given the following later: > > field->SetNumberOfComponents(2); > > You also need to #include <vtkSmartPointer.h>. > > Best, > -berk > > > > On Tue, Mar 19, 2013 at 2:31 PM, Pettey . Lucas <lpet...@drc.com<mailto: > lpet...@drc.com><mailto:lpet...@drc.com<mailto:lpet...@drc.com>><mailto: > lpet...@drc.com<mailto:lpet...@drc.com><mailto:lpet...@drc.com<mailto: > lpet...@drc.com>>><mailto:lpet...@drc.com<mailto:lpet...@drc.com><mailto: > lpet...@drc.com<mailto:lpet...@drc.com>><mailto:lpet...@drc.com<mailto: > lpet...@drc.com><mailto:lpet...@drc.com<mailto:lpet...@drc.com>>>>> wrote: > Hello everyone, > > I am trying to run a simple Fortran coprocessing example with a complex > data type. I am following the example here: > > > http://en.wikibooks.org/wiki/Parallel_Spectral_Numerical_Methods/Visualization_with_ParaView_CoProcessing#ParaView_CoProcessing_Resources > > I have written a basic Fortran code that outputs the data in binary, > opened that in ParaView, output the coprocessing script and then written > the adaptor following the example in the above link. My adaptor looks like: > > extern "C" void createcpimagedata_(int* nx, int* ny, int* nz) > { > if (!ParaViewCoProcessing::GetCoProcessorData()) { > vtkGenericWarningMacro("Unable to access CoProcessorData."); > return; > } > > // The simulation grid is a 2-dimensional topologically and geometrically > // regular grid. In VTK/ParaView, this is considered an image data set. > vtkImageData* Grid = vtkImageData::New(); > > // assuming dimZ == 1 for now > Grid->SetDimensions(*nx, *ny, *nz); > Grid->SetNumberOfScalarComponents(2); > > // Setting the Origin and Spacing are also options. > > // Name should be consistent between here, Fortran and Python client > script. > > ParaViewCoProcessing::GetCoProcessorData()->GetInputDescriptionByName("input")->SetGrid(Grid); > } > > // Add field(s) to the data container. > // Separate from above because this will be dynamic, grid is static. > // Might be an issue, VTK probably assumes row major, but > // omeg probably passed column major... > // by hand name mangling for fortran > extern "C" void addfield_(double* scalars, char* name) > { > vtkCPInputDataDescription *idd = > ParaViewCoProcessing::GetCoProcessorData()->GetInputDescriptionByName("input"); > > vtkImageData* Image = vtkImageData::SafeDownCast(idd->GetGrid()); > > if (!Image) { > vtkGenericWarningMacro("No adaptor grid to attach field data to."); > return; > } > > > // field name must match that in the fortran code. > if (idd->IsFieldNeeded(name)) { > vtkSmartPointer<vtkDoubleArray> field = > vtkSmartPointer<vtkDoubleArray>::New(); > field->SetNumberOfComponents(2); > field->SetName(name); > field->SetArray(scalars, 2* Image->GetNumberOfPoints(), 1); > Image->GetPointData()->AddArray(field); > > } > } > > I am getting some errors from the Makefile generated by Cmake: > > /Users/lucaspettey/codes/BEC/coprocVTK.cxx:40:38: error: too few arguments > to function call, expected 2, have 1 > Grid->SetNumberOfScalarComponents(2); > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ > /Users/lucaspettey/ParaView-git/ParaView/VTK/Common/DataModel/vtkImageData.h:298:3: > note: 'SetNumberOfScalarComponents' declared here > static void SetNumberOfScalarComponents( int n, vtkInformation* > meta_data); > ^ > /Users/lucaspettey/codes/BEC/coprocVTK.cxx:67:5: error: unknown type name > 'vtkSmartPointer'; did you mean 'vtkSmartPointerBase'? > vtkSmartPointer<vtkDoubleArray> field = > vtkSmartPointer<vtkDoubleArray>::New(); > ^~~~~~~~~~~~~~~ > vtkSmartPointerBase > /Users/lucaspettey/ParaView-git/ParaView/VTK/Common/Core/vtkOStreamWrapper.h:36:7: > note: 'vtkSmartPointerBase' declared here > class vtkSmartPointerBase; > ^ > /Users/lucaspettey/codes/BEC/coprocVTK.cxx:67:20: error: expected > unqualified-id > vtkSmartPointer<vtkDoubleArray> field = > vtkSmartPointer<vtkDoubleArray>::New(); > ^ > /Users/lucaspettey/codes/BEC/coprocVTK.cxx:68:5: error: use of undeclared > identifier 'field' > field->SetNumberOfComponents(2); > ^ > /Users/lucaspettey/codes/BEC/coprocVTK.cxx:69:5: error: use of undeclared > identifier 'field' > field->SetName(name); > ^ > /Users/lucaspettey/codes/BEC/coprocVTK.cxx:70:5: error: use of undeclared > identifier 'field' > field->SetArray(scalars, 2* Image->GetNumberOfPoints(), 1); > ^ > /Users/lucaspettey/codes/BEC/coprocVTK.cxx:71:37: error: use of undeclared > identifier 'field' > Image->GetPointData()->AddArray(field); > ^ > > Any help is appreciated. > > Thanks, > Lucas > > ________________________________ > This electronic message transmission and any attachments that accompany it > contain information from DRCĀ® (Dynamics Research Corporation) or its > subsidiaries, or the intended recipient, which is privileged, proprietary, > business confidential, or otherwise protected from disclosure and is the > exclusive property of DRC and/or the intended recipient. The information in > this email is solely intended for the use of the individual or entity that > is the intended recipient. If you are not the intended recipient, any use, > dissemination, distribution, retention, or copying of this communication, > attachments, or substance is prohibited. If you have received this > electronic transmission in error, please immediately reply to the author > via email that you received the message by mistake and also promptly and > permanently delete this message and all copies of this email and any > attachments. We thank you for your assistance and apologize for any > inconvenience. > _______________________________________________ > Powered by www.kitware.com<http://www.kitware.com><http://www.kitware.com > ><http://www.kitware.com><http://www.kitware.com> > > Visit other Kitware open-source projects at > http://www.kitware.com/opensource/opensource.html > > Please keep messages on-topic and check the ParaView Wiki at: > http://paraview.org/Wiki/ParaView > > Follow this link to subscribe/unsubscribe: > http://www.paraview.org/mailman/listinfo/paraview > > _______________________________________________ > Powered by www.kitware.com<http://www.kitware.com><http://www.kitware.com > ><http://www.kitware.com> > > Visit other Kitware open-source projects at > http://www.kitware.com/opensource/opensource.html > > Please keep messages on-topic and check the ParaView Wiki at: > http://paraview.org/Wiki/ParaView > > Follow this link to subscribe/unsubscribe: > http://www.paraview.org/mailman/listinfo/paraview > > _______________________________________________ > Powered by www.kitware.com<http://www.kitware.com><http://www.kitware.com> > > Visit other Kitware open-source projects at > http://www.kitware.com/opensource/opensource.html > > Please keep messages on-topic and check the ParaView Wiki at: > http://paraview.org/Wiki/ParaView > > Follow this link to subscribe/unsubscribe: > http://www.paraview.org/mailman/listinfo/paraview > > >
_______________________________________________ Powered by www.kitware.com Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Please keep messages on-topic and check the ParaView Wiki at: http://paraview.org/Wiki/ParaView Follow this link to subscribe/unsubscribe: http://www.paraview.org/mailman/listinfo/paraview