On Sun, 29 Mar 2015, grandrabbit wrote:
> boundary_id_type id;
> std::vector<unsigned int> var_only(1,0);
> FunctionBase<Number> *f=nullptr;
> ...
> id=1; //inlet
> bid.clear();
> bid.insert(id);
> var_only[0]=0;//u
> bcfunctype=string("expr");
> bcfuncstring=string("y*(1-y)");
> f=new_function_base(bcfunctype,bcfuncstring);
> dofmap.add_dirichlet_boundary(DirichletBoundary(bid, var_only, f));
>
> The problem is, after I make it and run the executable, there 's always one
> assertation failure from parsed_function.h when equation_systems.init () is
> called:
>
> Assertion `i < parsers.size()' failed.
> i = 1
> parsers.size() = 1
This assertion failure seems to imply that you've attached a function
which only evaluates component 0, and are trying to use it to set the
component *1* in a multiphysics problem... but the code above clearly
doesn't have that problem; var_only is {0}.
Could you boil the problem down to an example small enough to send us
so I can try to replicate it?
Thanks,
---
Roy
------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
Libmesh-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libmesh-users