On Wed, Feb 6, 2013 at 11:38 PM, Roy Stogner <[email protected]>wrote:

>
> On Wed, 6 Feb 2013, Kyunghoon Lee wrote:
>
>  I checked transient_ex1.C and found it handles inhomogeneous Dirichlet BCs
>> by the penalty method.  Instead of the penalty method, I wonder if I can
>> specify them directly with DirichletBoundary class as shown below:
>>
>>    system.attach_assemble_**function(assemble_Laplace);
>>
>>    std::set<boundary_id_type> boundary_ids0;
>>    boundary_ids0.insert(0); // bottom
>>    std::vector<unsigned int> u0(1); u0[0] = u_var;
>>    ConstFunction<Number> u0_value0(0.0);
>>    DirichletBoundary dirichlet_bc0(boundary_ids0,**u0,&u0_value0);
>>    system.get_dof_map().add_**dirichlet_boundary(dirichlet_**bc0);
>>
>>    equation_systems.init();
>>
>> I tried but it seemed not working properly.
>>
>
> Using DirichletBoundary constraints is trickier than the penalty
> method: in the system assembly process, you need to make sure that
> constraints are applied in a heterogenous way or homogenous way
> depending on whether the system's solution vector should meet the
> heterogenous constraint values (like a nonlinear solution u would be)
> or should be zero at those values (like a Newton descent step or a
> transient delta_u would be).  The constrain_ call in transient_ex1.C
> only does the latter, but at first glance it looks like that's a
> linear problem solving directly for the solution in which case the
> former heterogenously_constrain_ call would be appropriate instead.
> ---
> Roy
>

Thank you for the comment.  I guess I need to stick with the penalty method
for transient problems as shown in transient_ex1.
------------------------------------------------------------------------------
Free Next-Gen Firewall Hardware Offer
Buy your Sophos next-gen firewall before the end March 2013 
and get the hardware for free! Learn more.
http://p.sf.net/sfu/sophos-d2d-feb
_______________________________________________
Libmesh-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/libmesh-users

Reply via email to