You can subscribe to this list here.
2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(2) |
Oct
(2) |
Nov
(27) |
Dec
(31) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
(6) |
Feb
(15) |
Mar
(33) |
Apr
(10) |
May
(46) |
Jun
(11) |
Jul
(21) |
Aug
(15) |
Sep
(13) |
Oct
(23) |
Nov
(1) |
Dec
(8) |
2005 |
Jan
(27) |
Feb
(57) |
Mar
(86) |
Apr
(23) |
May
(37) |
Jun
(34) |
Jul
(24) |
Aug
(17) |
Sep
(50) |
Oct
(24) |
Nov
(10) |
Dec
(60) |
2006 |
Jan
(47) |
Feb
(46) |
Mar
(127) |
Apr
(19) |
May
(26) |
Jun
(62) |
Jul
(47) |
Aug
(51) |
Sep
(61) |
Oct
(42) |
Nov
(50) |
Dec
(33) |
2007 |
Jan
(60) |
Feb
(55) |
Mar
(77) |
Apr
(102) |
May
(82) |
Jun
(102) |
Jul
(169) |
Aug
(117) |
Sep
(80) |
Oct
(37) |
Nov
(51) |
Dec
(43) |
2008 |
Jan
(71) |
Feb
(94) |
Mar
(98) |
Apr
(125) |
May
(54) |
Jun
(119) |
Jul
(60) |
Aug
(111) |
Sep
(118) |
Oct
(125) |
Nov
(119) |
Dec
(94) |
2009 |
Jan
(109) |
Feb
(38) |
Mar
(93) |
Apr
(88) |
May
(29) |
Jun
(57) |
Jul
(53) |
Aug
(48) |
Sep
(68) |
Oct
(151) |
Nov
(23) |
Dec
(35) |
2010 |
Jan
(84) |
Feb
(60) |
Mar
(184) |
Apr
(112) |
May
(60) |
Jun
(90) |
Jul
(23) |
Aug
(70) |
Sep
(119) |
Oct
(27) |
Nov
(47) |
Dec
(54) |
2011 |
Jan
(22) |
Feb
(19) |
Mar
(92) |
Apr
(93) |
May
(35) |
Jun
(91) |
Jul
(32) |
Aug
(61) |
Sep
(7) |
Oct
(69) |
Nov
(81) |
Dec
(23) |
2012 |
Jan
(64) |
Feb
(95) |
Mar
(35) |
Apr
(36) |
May
(63) |
Jun
(98) |
Jul
(70) |
Aug
(171) |
Sep
(149) |
Oct
(64) |
Nov
(67) |
Dec
(126) |
2013 |
Jan
(108) |
Feb
(104) |
Mar
(171) |
Apr
(133) |
May
(108) |
Jun
(100) |
Jul
(93) |
Aug
(126) |
Sep
(74) |
Oct
(59) |
Nov
(145) |
Dec
(93) |
2014 |
Jan
(38) |
Feb
(45) |
Mar
(26) |
Apr
(41) |
May
(125) |
Jun
(70) |
Jul
(61) |
Aug
(66) |
Sep
(60) |
Oct
(110) |
Nov
(27) |
Dec
(30) |
2015 |
Jan
(43) |
Feb
(67) |
Mar
(71) |
Apr
(92) |
May
(39) |
Jun
(15) |
Jul
(46) |
Aug
(63) |
Sep
(84) |
Oct
(82) |
Nov
(69) |
Dec
(45) |
2016 |
Jan
(92) |
Feb
(91) |
Mar
(148) |
Apr
(43) |
May
(58) |
Jun
(117) |
Jul
(92) |
Aug
(140) |
Sep
(49) |
Oct
(33) |
Nov
(85) |
Dec
(40) |
2017 |
Jan
(41) |
Feb
(36) |
Mar
(49) |
Apr
(41) |
May
(73) |
Jun
(51) |
Jul
(12) |
Aug
(69) |
Sep
(26) |
Oct
(43) |
Nov
(75) |
Dec
(23) |
2018 |
Jan
(86) |
Feb
(36) |
Mar
(50) |
Apr
(28) |
May
(53) |
Jun
(65) |
Jul
(26) |
Aug
(43) |
Sep
(32) |
Oct
(28) |
Nov
(52) |
Dec
(17) |
2019 |
Jan
(39) |
Feb
(26) |
Mar
(71) |
Apr
(30) |
May
(73) |
Jun
(18) |
Jul
(5) |
Aug
(10) |
Sep
(8) |
Oct
(24) |
Nov
(12) |
Dec
(34) |
2020 |
Jan
(17) |
Feb
(10) |
Mar
(6) |
Apr
(4) |
May
(15) |
Jun
(3) |
Jul
(8) |
Aug
(15) |
Sep
(6) |
Oct
(3) |
Nov
|
Dec
(4) |
2021 |
Jan
(4) |
Feb
(4) |
Mar
(21) |
Apr
(14) |
May
(13) |
Jun
(18) |
Jul
(1) |
Aug
(39) |
Sep
(1) |
Oct
|
Nov
(3) |
Dec
|
2022 |
Jan
|
Feb
|
Mar
(2) |
Apr
(8) |
May
|
Jun
|
Jul
|
Aug
(3) |
Sep
|
Oct
(3) |
Nov
|
Dec
|
2023 |
Jan
(2) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(7) |
Sep
(3) |
Oct
|
Nov
|
Dec
(1) |
From: Manav B. <bha...@gm...> - 2018-02-12 21:17:04
|
Hi, I was looking through some code in FE and noticed some comments about 1D/2D elements in 3D space. What is the extent of support for this? I have specialized code that handles this for 1D/2D elements in my application. But, if this is well supported in libMesh I can modify my code to leverage this capability. -Manav |
From: Victor E. <eij...@ta...> - 2018-02-12 19:43:50
|
I’m attaching a configure log file. I put a python library in the LIBS variable, and it is found and validated, but then not added to the optional libraries. This means that during linking I get an error from pytrilinos which can not find the python library. Victor. |
From: John P. <jwp...@gm...> - 2018-02-12 15:41:42
|
On Mon, Feb 12, 2018 at 8:17 AM, Rovinelli, Andrea <aro...@an...> wrote: > Hi there, > I’m new to libmesh so this may be a silly question but from the doxygen I > wasn’t able to get an answer. > Does libmesh support cohesive elements? > If not why (There is another way to implement a cohesive zone in libmesh)? > Also can somebody give me some hint on how to implement them? What do I > need to subclass and the major modification needed? > Andrea, libMesh does not currently support cohesive elements. I suggest you keep working with Ben Spencer and Wen Jiang on this topic to identify what changes will be required in libmesh to support them. -- John |
From: Rovinelli, A. <aro...@an...> - 2018-02-12 15:17:44
|
Hi there, I’m new to libmesh so this may be a silly question but from the doxygen I wasn’t able to get an answer. Does libmesh support cohesive elements? If not why (There is another way to implement a cohesive zone in libmesh)? Also can somebody give me some hint on how to implement them? What do I need to subclass and the major modification needed? Thanks Andrea Rovinelli ANL |
From: David K. <dav...@ak...> - 2018-02-12 13:28:19
|
Hello, You can run the reduced basis code in parallel. You do it just the same way that you run any other libMesh code in parallel, i.e. just run with "mpirun -np N" where N specifies the number of processors that you want to use. If you want more info on the parallelization approach that is used, please refer to this paper <https://www.sciencedirect.com/science/article/pii/S0045782510003828>. Best, David On Sun, Feb 11, 2018 at 9:30 PM, S. Kang <ss...@pu...> wrote: > > > > Hello everyone, > > > > I am solving RB problems, but it takes too long because of many basis > vectors. > So, similar to "make -j 10", I want to know how to use multi-core in > execution files, not parallel programming. > > > Best regards, > > S. Kang. > > > > ------------------------------------------------------------ > Shinseong Kang > Graduate Student > Pusan National University, South Korea > H.P.: 010-9770-6595 > E-mail: ss...@pu... > ------------------------------------------------------------ > ------------------------------------------------------------ > ------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > Libmesh-users mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/libmesh-users > |
From: S. K. <ss...@pu...> - 2018-02-12 02:57:26
|
Hello everyone, I am solving RB problems, but it takes too long because of many basis vectors. So, similar to "make -j 10", I want to know how to use multi-core in execution files, not parallel programming. Best regards, S. Kang. ------------------------------------------------------------ Shinseong Kang Graduate Student Pusan National University, South Korea H.P.: 010-9770-6595 E-mail: ss...@pu... ------------------------------------------------------------ |
From: David K. <dav...@ak...> - 2018-02-10 21:15:58
|
On Sat, Feb 10, 2018 at 10:03 AM, <cau...@gm...> wrote: > (Sorry for accidentally clicking "send" without the email being finished) > > Hi all, > > > > I am trying implementing the RB method on a model with 44092 DoFs. > However, I run into the error message below: > > > > [2]PETSC ERROR: --------------------- Error Message > -------------------------------------------------------------- > > [2]PETSC ERROR: Out of memory. This could be due to allocating > > [2]PETSC ERROR: too large an object or bleeding by not properly > > [2]PETSC ERROR: destroying unneeded objects. > > [2]PETSC ERROR: Memory allocated 0 Memory used by process 2545381376 > (2.37GB) > > [2]PETSC ERROR: Try running with -malloc_dump or -malloc_log for info. > > [2]PETSC ERROR: Memory requested 1193845248 (1.1GB) > > > > The code is run with 8 processors. The computer has in total 19GB memory > and 12 CPUs. I think that the error occurs when the SCM is performed since > it runs well when the lower bound is set to be 1. It seems that the > procedure is enormously memory-consuming and my computer cannot afford to > run it. I wonder if there is a way in which less memory is demanded. Your > suggestion would be appreciated. > > Are you using -eps_type lapack? That uses a huge amount of memory because it treats the matrix as dense, so I guess that's why you ran out of memory. Using lapack is very robust, i.e. it generally converges well, but it is only appropriate for very small problems. To do larger problems you'll need to use SLEPc's sparse eigensolvers. Unfortunately you may run into convergence problems with those for the SCM eigenvalue problems. Unfortunately there is no easy fix for those convergence issues for SCM as far as I know, you'd have to read the SLEPc manual and see if there are any options you can modify to get better convergence. David > > *发件人**:* David Knezevic [mailto:dav...@ak...] > *发送时间:* 2018年2月10日 22:25 > *收件人:* cau...@gm... > *抄送:* lib...@li... > *主题:* Re: [Libmesh-users] SCM causes out of memory > > > > Hi, > > > > Looks like you sent an empty email, but I guess from the subject line that > you're having issues with the SCM? I'm not sure I can offer much help since > I haven't used the SCM code for a while, but if you can provide some > details about your problem maybe I can help a bit. > > > David > > > > > > On Fri, Feb 9, 2018 at 8:55 PM, cau...@gm... < > cau...@gm...> wrote: > > > ------------------------------------------------------------ > ------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > Libmesh-users mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/libmesh-users > > > > > |
From: <cau...@gm...> - 2018-02-10 15:03:13
|
(Sorry for accidentally clicking "send" without the email being finished) Hi all, I am trying implementing the RB method on a model with <tel:44092> 44092 DoFs. However, I run into the error message below: [2]PETSC ERROR: --------------------- Error Message -------------------------------------------------------------- [2]PETSC ERROR: Out of memory. This could be due to allocating [2]PETSC ERROR: too large an object or bleeding by not properly [2]PETSC ERROR: destroying unneeded objects. [2]PETSC ERROR: Memory allocated 0 Memory used by process <tel:2545381376> 2545381376 (2.37GB) [2]PETSC ERROR: Try running with -malloc_dump or -malloc_log for info. [2]PETSC ERROR: Memory requested <tel:1193845248> 1193845248 (1.1GB) The code is run with 8 processors. The computer has in total 19GB memory and 12 CPUs. I think that the error occurs when the SCM is performed since it runs well when the lower bound is set to be 1. It seems that the procedure is enormously memory-consuming and my computer cannot afford to run it. I wonder if there is a way in which less memory is demanded. Your suggestion would be appreciated. Best regards, Gauvain 发件人: David Knezevic [mailto:dav...@ak...] 发送时间: 2018年2月10日 22:25 收件人: cau...@gm... 抄送: lib...@li... 主题: Re: [Libmesh-users] SCM causes out of memory Hi, Looks like you sent an empty email, but I guess from the subject line that you're having issues with the SCM? I'm not sure I can offer much help since I haven't used the SCM code for a while, but if you can provide some details about your problem maybe I can help a bit. David On Fri, Feb 9, 2018 at 8:55 PM, cau...@gm... <mailto:cau...@gm...> <cau...@gm... <mailto:cau...@gm...> > wrote: ------------------------------------------------------------------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ Libmesh-users mailing list Lib...@li... <mailto:Lib...@li...> https://lists.sourceforge.net/lists/listinfo/libmesh-users |
From: David K. <dav...@ak...> - 2018-02-10 14:24:55
|
Hi, Looks like you sent an empty email, but I guess from the subject line that you're having issues with the SCM? I'm not sure I can offer much help since I haven't used the SCM code for a while, but if you can provide some details about your problem maybe I can help a bit. David On Fri, Feb 9, 2018 at 8:55 PM, cau...@gm... < cau...@gm...> wrote: > > ------------------------------------------------------------ > ------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > Libmesh-users mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/libmesh-users > |
From: John P. <jwp...@gm...> - 2018-02-06 00:01:38
|
On Mon, Feb 5, 2018 at 1:26 PM, Xiao Ma <xi...@il...> wrote: > Hi All, > > > I am wondering if the build in function MeshTools::Generation contains > information about the node set, It contains sidesets, but no nodesets. > for example , 2D mesh, the top and bottom , > left and right edge node set ? and associated the element set ? > If so , how to get access to these arrays . > This information is stored in the BoundaryInfo object. mesh.get_boundary_info().build_side_list(...) fills three passed-in vectors with elem-id, side-id, and bc-id information. -- John |
From: Xiao Ma <xi...@il...> - 2018-02-05 20:26:58
|
Hi All, I am wondering if the build in function MeshTools::Generation contains information about the node set, for example , 2D mesh, the top and bottom , left and right edge node set ? and associated the element set ? If so , how to get access to these arrays . Thank you , Xiao -- ------------------------------------------------------------------------------------- *Xiao Ma* Graduate Research Assistant PhD student in Structural Engineering University of Illinois at Urbana-Champaign E-mail: *xi...@il... <xi...@il...>* -------------------------------------------------------------------------------------- |
From: Laura S. <sca...@ma...> - 2018-02-05 09:01:36
|
Hi Roy, Thank you for the answer. Yeah, I meant the second option, that is that ``the hanging nodes don't fit the pattern of "coarse element with isotropically refined neighbor"". I just wanted to get a clue on how difficult it would have been to implement this case with libmesh. Then, according to your answer, it would require quite some time. Thank you again, Laura. Il 2018-02-03 17:19 Roy Stogner ha scritto: > On Sat, 3 Feb 2018, Laura Scarabosio wrote: > >> I apologize for the simple question but I could not find satisfactory >> answers on the web. > > I'm not surprised; I think the most relevant discussion was just a > week ago: > > https://sourceforge.net/p/libmesh/mailman/message/36202144/ > > and even if we managed to hit whatever keywords you were searching > for, it probably doesn't get ranked highly by search engines yet. > >> Does libMesh support meshes with hanging nodes when these are used >> right away and do not come from a libMesh refinement of a mesh without >> hanging nodes? >> I mean, is calling dof_map.constrain_element_matrix_and_vector enough >> to handle this case, too? > > It depends what you mean by "used right away": > > If the hanging nodes come from a libMesh-*style* refinement (isotropic > refinement of a parent element), then libMesh will auto-generate > constraint equations for them, even if you're just loading the refined > mesh from a saved or handwritten file rather than using libMesh > refinement code. > > However, if the hanging nodes don't fit the pattern of "coarse > element with isotropically refined neighbor", libMesh will not > auto-generate constraint equations. You could still define systems on > such a mesh, but you'd have to add constraint equations manually to > get solves to work, you'd have to add ghosting functors to get > DistributedMesh to work, you'd have to add jump terms to error > estimators by hand, and in general it would be a huge pain in the > neck. > --- > Roy |
From: Roy S. <roy...@ic...> - 2018-02-03 16:19:35
|
On Sat, 3 Feb 2018, Laura Scarabosio wrote: > I apologize for the simple question but I could not find satisfactory answers > on the web. I'm not surprised; I think the most relevant discussion was just a week ago: https://sourceforge.net/p/libmesh/mailman/message/36202144/ and even if we managed to hit whatever keywords you were searching for, it probably doesn't get ranked highly by search engines yet. > Does libMesh support meshes with hanging nodes when these are used right away > and do not come from a libMesh refinement of a mesh without hanging nodes? > I mean, is calling dof_map.constrain_element_matrix_and_vector enough to > handle this case, too? It depends what you mean by "used right away": If the hanging nodes come from a libMesh-*style* refinement (isotropic refinement of a parent element), then libMesh will auto-generate constraint equations for them, even if you're just loading the refined mesh from a saved or handwritten file rather than using libMesh refinement code. However, if the hanging nodes don't fit the pattern of "coarse element with isotropically refined neighbor", libMesh will not auto-generate constraint equations. You could still define systems on such a mesh, but you'd have to add constraint equations manually to get solves to work, you'd have to add ghosting functors to get DistributedMesh to work, you'd have to add jump terms to error estimators by hand, and in general it would be a huge pain in the neck. --- Roy |
From: Laura S. <sca...@ma...> - 2018-02-03 13:22:31
|
Dear All, I apologize for the simple question but I could not find satisfactory answers on the web. Does libMesh support meshes with hanging nodes when these are used right away and do not come from a libMesh refinement of a mesh without hanging nodes? I mean, is calling dof_map.constrain_element_matrix_and_vector enough to handle this case, too? Cheers, Laura. |
From: David K. <dav...@ak...> - 2018-02-02 03:47:45
|
Hello, It has been a while since I looked at ex3... However, my first piece of advice is that I think you should first consult the reduced basis literature to understand the mathematics of what you're trying to implement. If I recall correctly, one way to do what you want is to train the model with an "impulse" force (i.e. 1 at t=0, 0 otherwise), and then use a convolution to obtain any time-varying forcing that you want. I don't remember the details of what is involved though, so better to check the literature first. In general I think libMesh's reduced basis framework should be flexible enough to handle what you need, though you may need to over-ride certain parts of the code (e.g. with subclasses and virtual functions) to achieve it. I don't have much concrete advice at this stage, though, other than that you should make sure you understand the details of what you want to implement, and then you'll need to study the reduced basis code in some detail to understand what modifications may be required. I can help more once you get to that point. David On Thu, Feb 1, 2018 at 10:29 PM, Xie_Jinyi <oph...@qq...> wrote: > These days I am trying to make an adjustment of the ex3 in reduced_basis > category, that is to replace the constant source term whose value is 1 with > a time-dependent term, e.g 2t. > > > (my idea is to simply modify the loop of unsteady mode which I think > already exists, because the program has successfully solved an unsteady > example like ex3, where the equation has the term du/dt.) > > > > However I haven't find out where to make my idea happen, as I don't know > which part of the program recalculate the du/dt term at every time step. > > > I wonder whether I can acheive my goal by simply adding the time-dependent > source term in the loop or not. > > > Thanks for all kinds of help. > ------------------------------------------------------------ > ------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > Libmesh-users mailing list > Lib...@li... > https://lists.sourceforge.net/lists/listinfo/libmesh-users > |
From: <oph...@qq...> - 2018-02-02 03:30:04
|
These days I am trying to make an adjustment of the ex3 in reduced_basis category, that is to replace the constant source term whose value is 1 with a time-dependent term, e.g 2t. (my idea is to simply modify the loop of unsteady mode which I think already exists, because the program has successfully solved an unsteady example like ex3, where the equation has the term du/dt.) However I haven't find out where to make my idea happen, as I don't know which part of the program recalculate the du/dt term at every time step. I wonder whether I can acheive my goal by simply adding the time-dependent source term in the loop or not. Thanks for all kinds of help. |
From: Manav B. <bha...@gm...> - 2018-01-29 21:47:55
|
I added an member to my class by the name “linear_solver” and initialize it in the init_data() method using this snippet: linear_solver.reset(new libMesh::PetscLinearSolver<Real>(this->comm())); if (libMesh::on_command_line("--solver_system_names")) { std::string nm = this->name() + "_"; linear_solver->init(nm.c_str()); } Seems to be working fine so far. -Manav > On Jan 29, 2018, at 3:12 PM, Roy Stogner <roy...@ic...> wrote: > > > On Mon, 29 Jan 2018, Manav Bhatia wrote: > >> I ended up creating a function similar to the one in LInearImplicitSystem to get around this issue. >> >> Working out fine now. > > Good to hear. > > Is your get_linear_solver() anything general enough to move upstream > to NonlinearImplicitSystem? The lack of a get_linear_solver() > overload there might be because I was going to add one and realized > some good reason why I couldn't, but a more likely scenario is just > that I wasn't using (or testing with, therefore) that class and didn't > want to implement something blind. > --- > Roy |
From: Roy S. <roy...@ic...> - 2018-01-29 21:12:16
|
On Mon, 29 Jan 2018, Manav Bhatia wrote: > I ended up creating a function similar to the one in LInearImplicitSystem to get around this issue. > > Working out fine now. Good to hear. Is your get_linear_solver() anything general enough to move upstream to NonlinearImplicitSystem? The lack of a get_linear_solver() overload there might be because I was going to add one and realized some good reason why I couldn't, but a more likely scenario is just that I wasn't using (or testing with, therefore) that class and didn't want to implement something blind. --- Roy |
From: Manav B. <bha...@gm...> - 2018-01-29 21:06:21
|
I ended up creating a function similar to the one in LInearImplicitSystem to get around this issue. Working out fine now. Thanks! Manav > On Jan 29, 2018, at 1:59 PM, John Peterson <jwp...@gm...> wrote: > > > > On Mon, Jan 29, 2018 at 11:42 AM, Manav Bhatia <bha...@gm... <mailto:bha...@gm...>> wrote: > Except for a sensitivity solve. > > Hmm... so you are referring to the get_linear_solver() calls in > > ImplicitSystem::adjoint_solve() > ImplicitSystem::sensitivity_solve() > ImplicitSystem::weighted_sensitivity_adjoint_solve() > ImplicitSystem::weighted_sensitivity_solve() > > ? > > If I understand correctly, those should all be calling the derived class LinearImplicitSystem::get_linear_solver() method in practice. > > In the class you are writing that is derived from NonlinearImplicitSystem, if you hang on to your own LinearSolver object, you could write a function similar to the one above to provide access to it. > > -- > John |
From: John P. <jwp...@gm...> - 2018-01-29 19:59:40
|
On Mon, Jan 29, 2018 at 11:42 AM, Manav Bhatia <bha...@gm...> wrote: > Except for a sensitivity solve. > Hmm... so you are referring to the get_linear_solver() calls in ImplicitSystem::adjoint_solve() ImplicitSystem::sensitivity_solve() ImplicitSystem::weighted_sensitivity_adjoint_solve() ImplicitSystem::weighted_sensitivity_solve() ? If I understand correctly, those should all be calling the derived class LinearImplicitSystem::get_linear_solver() method in practice. In the class you are writing that is derived from NonlinearImplicitSystem, if you hang on to your own LinearSolver object, you could write a function similar to the one above to provide access to it. -- John |
From: Manav B. <bha...@gm...> - 2018-01-29 18:42:25
|
Except for a sensitivity solve. > On Jan 29, 2018, at 12:41 PM, John Peterson <jwp...@gm...> wrote: > > > > On Mon, Jan 29, 2018 at 11:09 AM, Manav Bhatia <bha...@gm... <mailto:bha...@gm...>> wrote: > I see. > > So, I am defining a class that inherits from nonlinear_implicit_system, and calling get_linear_solver() on that. This gets to the implementation in implicit_system, since the nonlinear_implicit_system does not define an overriding function. > > Instead, there is one defined in linear_implicit_system, but that is a different code path. > > > Right, the NonlinearImplicitSystem has a public nonlinear_solver member, but it doesn't really make sense to call get_linear_solver() on a NonlinearImplicitSystem, since it doesn't really have one to hand back. > > -- > John |
From: John P. <jwp...@gm...> - 2018-01-29 18:41:34
|
On Mon, Jan 29, 2018 at 11:09 AM, Manav Bhatia <bha...@gm...> wrote: > I see. > > So, I am defining a class that inherits from nonlinear_implicit_system, > and calling get_linear_solver() on that. This gets to the implementation > in implicit_system, since the nonlinear_implicit_system does not define an > overriding function. > > Instead, there is one defined in linear_implicit_system, but that is a > different code path. > Right, the NonlinearImplicitSystem has a public nonlinear_solver member, but it doesn't really make sense to call get_linear_solver() on a NonlinearImplicitSystem, since it doesn't really have one to hand back. -- John |
From: Manav B. <bha...@gm...> - 2018-01-29 18:09:22
|
I see. So, I am defining a class that inherits from nonlinear_implicit_system, and calling get_linear_solver() on that. This gets to the implementation in implicit_system, since the nonlinear_implicit_system does not define an overriding function. Instead, there is one defined in linear_implicit_system, but that is a different code path. -Manav > On Jan 29, 2018, at 11:12 AM, John Peterson <jwp...@gm...> wrote: > > > > On Mon, Jan 29, 2018 at 9:59 AM, Manav Bhatia <bha...@gm... <mailto:bha...@gm...>> wrote: > Hi, > > The source code says that the following method is deprecated: > > ImplicitSystem::get_linear_solver() > > This is, however, extensively being used in implicit_system.C. > > Is there a different method that I should be looking to use? > > > Hmm... "deprecated" is a bit of a misnomer here, I think what will eventually happen is that the base class implementation will be changed into a libmesh_error() to prevent it from being accidentally called. > > The usage you are referring to in implicit_system.C therefore represents calls to derived class implementations, and should remain as-is. > > If you are currently seeing a deprecation message from calling this function, you are probably doing something wrong and need to fix your code, but I doubt that's the case? > > -- > John |
From: John P. <jwp...@gm...> - 2018-01-29 17:12:51
|
On Mon, Jan 29, 2018 at 9:59 AM, Manav Bhatia <bha...@gm...> wrote: > Hi, > > The source code says that the following method is deprecated: > > ImplicitSystem::get_linear_solver() > > This is, however, extensively being used in implicit_system.C. > > Is there a different method that I should be looking to use? > Hmm... "deprecated" is a bit of a misnomer here, I think what will eventually happen is that the base class implementation will be changed into a libmesh_error() to prevent it from being accidentally called. The usage you are referring to in implicit_system.C therefore represents calls to derived class implementations, and should remain as-is. If you are currently seeing a deprecation message from calling this function, you are probably doing something wrong and need to fix your code, but I doubt that's the case? -- John |
From: Manav B. <bha...@gm...> - 2018-01-29 17:05:39
|
Hi, The source code says that the following method is deprecated: ImplicitSystem::get_linear_solver() This is, however, extensively being used in implicit_system.C. Is there a different method that I should be looking to use? Thanks, Manav |