On Thu, Mar 6, 2014 at 9:53 PM, David Knezevic
<dkneze...@seas.harvard.edu>wrote:
>
> On 03/06/2014 11:40 PM, John Peterson wrote:
>
>
>
>
> On Thu, Mar 6, 2014 at 9:35 PM, David Knezevic <dkneze...@seas.harvard.edu
> > wrote:
>
>>
>> On 03/06/2014 11:30 PM, John Peterson wrote:
>>
>>
>>
>>
>> On Thu, Mar 6, 2014 at 9:12 PM, David Knezevic <
>> dkneze...@seas.harvard.edu> wrote:
>>
>>> I'd like to write out element-based data to an exodus file (again
>>> related to discontinuous visualization). There is a function
>>> ExodusII_IO::write_element_data in ExodusII_IO, but it's not clear to me
>>> how to use it?
>>>
>>> I'd like to use it in the same way as ExodusII_IO::write_nodal_data, but
>>> it doesn't seem to work that way. ExodusII_IO::write_element_data
>>> doesn't even take a filename, so I'm confused about what it's role is
>>> supposed to be.
>>>
>>
>> You can use it to write out constant monomial variables, right?
>>
>> Did you need to write out some higher-order elemental data?
>>
>>
>> Yeah, I just want to write out monomial variables. I can use
>> write_discontinuous_exodusII for that too, but that generates a "broken
>> mesh", since it duplicates all the nodes to allow a discontinuous solution.
>> I want a discontinuous plot of monomial variables on a non-broken mesh, so
>> I figured ExodusII_IO::write_element_data might the right function for that
>> job?
>>
>> Do you have a code snippet for using it to plot monomials? If I try to
>> call it directly, I just get an error due to the
>> !exio_helper->opened_for_writing assertion...
>>
>
> I'm not sure if we've ever used it to plot *only* monomials, we always
> had some nodal data as well.
>
> Can you call ExodusII_IO::write_timestep() followed by
> ExodusII_IO::write_element_data()?
>
>
> I put this at the end of the main function in systems_of_equations_ex6:
>
> ExodusII_IO exo_io(mesh);
> exo_io.write_timestep("test.exo", equation_systems, 0, 0.);
> exo_io.write_element_data(equation_systems);
>
> and I got this error:
>
> Error writing nodal values.
> Stack frames: 9
> 0: libMesh::print_trace(std::ostream&)
> 1: libMesh::MacroFunctions::report_error(char const*, int, char const*,
> char const*)
> 2: libMesh::ExodusII_IO_Helper::write_nodal_values(int,
> std::vector<double, std::allocator<double> > const&, int)
> 3: libMesh::ExodusII_IO::write_nodal_data(std::string const&,
> std::vector<double, std::allocator<double> > const&,
> std::vector<std::string, std::allocator<std::string> > const&)
> 4:
> libMesh::MeshOutput<libMesh::MeshBase>::write_equation_systems(std::string
> const&, libMesh::EquationSystems const&, std::set<std::string,
> std::less<std::string>, std::allocator<std::string> > const*)
> 5: libMesh::ExodusII_IO::write_timestep(std::string const&,
> libMesh::EquationSystems const&, int, double)
> 6: ./example-opt() [0x40cfa8]
> 7: __libc_start_main
> 8: ./example-opt() [0x40d32d]
> [0] /home/dknez/software/libmesh-src/src/mesh/exodusII_io_helper.C, line
> 1699, compiled Mar 6 2014 at 17:30:11
> application called MPI_Abort(MPI_COMM_WORLD, 1) - process 0
>
Damn, yeah I don't know off the top of my head, would have to run it
through debugger. You might also hit an assert in debug mode that would
help...
--
John
------------------------------------------------------------------------------
Subversion Kills Productivity. Get off Subversion & Make the Move to Perforce.
With Perforce, you get hassle-free workflows. Merge that actually works.
Faster operations. Version large binaries. Built-in WAN optimization and the
freedom to use Git, Perforce or both. Make the move to Perforce.
http://pubads.g.doubleclick.net/gampad/clk?id=122218951&iu=/4140/ostg.clktrk
_______________________________________________
Libmesh-devel mailing list
Libmesh-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libmesh-devel