Skip to content

Releases: andrsd/godzilla

v0.15.0

05 Apr 16:44
15466af

Choose a tag to compare

What's Changed

New Features

  • Adding mass_surface for TET4 by @andrsd in #1031
  • Adding math::exp by @andrsd in #1036
  • Refactoring exception system by @andrsd in #1037
  • Adding Borrowed{Global|Local}Vector by @andrsd in #1039
  • Adding Vector::set_values{_local} that accepts Span by @andrsd in #1040
  • Adding Matrix::set_values that takes Span and DynDenseMatrix by @andrsd in #1041
  • Adding Matrix::get_size() which returns std::tuple by @andrsd in #1042
  • Adding Matrix::get_local_size() which returns std::tuple by @andrsd in #1044
  • Adding LinearProblem::get_ksp() that returns writable reference by @andrsd in #1045
  • Enable building against PETSc 3.24 by @andrsd in #1046
  • Can only set declared parameters by @andrsd in #1047
  • Parameters::add_param reports error on the line add_param was called by @andrsd in #1048
  • Parameters::get reports the error on the line where get happened by @andrsd in #1049
  • Parameters::make_param_required reports where error happened by @andrsd in #1050
  • Adding String:operator[] by @andrsd in #1051
  • Provide parameter name suggestions when set/get operation fails by @andrsd in #1052
  • Adding SNESolver::converged_reason_view_set by @andrsd in #1053
  • Adding KrylovSolver::get_iteration_number() by @andrsd in #1054
  • Adding SNESolver::get_iteration_number by @andrsd in #1055
  • Adding KrylovSolver::converged_reason_view_set by @andrsd in #1056
  • Hook-up converged reason view to NonlinearProblem by @andrsd in #1057
  • Hook-up converged reason view to LinearProblem by @andrsd in #1058
  • Adding KrylovSolver::get_total_iterations by @andrsd in #1059
  • Adding SNESolver::get_linear_solve_iterations by @andrsd in #1060

Fixed Problems

  • "name" parameter in Postprocessors is required by @andrsd in #1028
  • Prevent adding post-processors with duplicate names by @andrsd in #1029
  • Fixing crash when getting a parameter with default value but mismatching type by @andrsd in #1030
  • NaturalBoundaryInfo can handle null facet IndexSet by @andrsd in #1034
  • EssentialBoundaryInfo can handle null vertex IndexSet by @andrsd in #1035

API Changes

  • IndexSet::is_empty is added to replace IndexSet::empty by @andrsd in #1027
  • expect_true now takes std::string and std::source_location by @andrsd in #1038

Full Changelog: v0.14.0...v0.15.0

v0.14.0

24 Feb 12:17
0f74ff0

Choose a tag to compare

What's Changed

New features

API Changes

Other Changes

  • App::run_problem creates the problem before it runs it by @andrsd in #1008

Full Changelog: v0.13.0...v0.14.0

v0.13.1

09 Feb 14:06
b654acd

Choose a tag to compare

What's Changed

Fixed Problems

Full Changelog: v0.13.0...v0.13.1

v0.13.0

29 Jan 15:05
a6df70f

Choose a tag to compare

What's Changed

Fixed Problems

API Changes

Other Changes

Full Changelog: v0.12.0...v0.13.0

v0.12.1

29 Jan 15:04
0984249

Choose a tag to compare

What's Changed

API Changes

  • Deprecating operator() on Array1D by @andrsd in #961
  • Adding more error reporting functions by @andrsd in #968
  • Removing Factory by @andrsd in #969
  • Stripping away the old logging capability by @andrsd in #972
  • Repurposing LoggingInterface for logging into a file by @andrsd in #977
  • Reworking interactions with command line argument parsing by @andrsd in #978
  • Using Expected int XYZProblemInterface APIs by @andrsd in #981
  • Refactoring AuxiliaryField::get_field_id() by @andrsd in #982

Other Changes

  • Adding String::replace by @andrsd in #957
  • Adding functions to check element (TRI3, TET4) orientation by @andrsd in #960
  • Adding Expected by @andrsd in #963
  • Adding BoundingBox and API to get bounding box from a mesh by @andrsd in #966
  • Parameter remembers where it was set by @andrsd in #970
  • Fail to compile when trying to generate Qtr dtor with an incomplete type by @andrsd in #998

Full Changelog: v0.11.0...v0.12.1

v0.12.0

16 Jan 16:08
8587899

Choose a tag to compare

What's Changed

Fixed Problems

  • Error out when redefining a parameter by @andrsd in #959
  • ExodusIIOutput works for Problems with no primary fields by @andrsd in #974
  • Fixing block restricted output of elemental variables in ExodusIIOutput by @andrsd in #975
  • Correcting types in CommandLineInterface for files by @andrsd in #979

API Changes

  • Deprecating operator() on Array1D by @andrsd in #961
  • Adding more error reporting functions by @andrsd in #968
  • Removing Factory by @andrsd in #969
  • Stripping away the old logging capability by @andrsd in #972
  • Repurposing LoggingInterface for logging into a file by @andrsd in #977
  • Reworking interactions with command line argument parsing by @andrsd in #978
  • Using Expected int XYZProblemInterface APIs by @andrsd in #981
  • Refactoring AuxiliaryField::get_field_id() by @andrsd in #982

Other Changes

  • Adding String::replace by @andrsd in #957
  • Adding functions to check element (TRI3, TET4) orientation by @andrsd in #960
  • Adding Expected by @andrsd in #963
  • Adding BoundingBox and API to get bounding box from a mesh by @andrsd in #966
  • Parameter remembers where it was set by @andrsd in #970

Full Changelog: v0.11.0...v0.12.0

v0.11.0

27 Dec 22:49
7ffff36

Choose a tag to compare

What's Changed

API Changes

Other Changes

Full Changelog: v0.10.0...v0.11.0

v0.10.0

04 Dec 14:55
ade7288

Choose a tag to compare

What's Changed

Fixed Problems

API Changes

  • Removing Parameters from Object by @andrsd in #873
  • Adding MeshFactory by @andrsd in #876
  • Removing muPraser by @andrsd in #879
  • Removing the adaptor subsystem by @andrsd in #890
  • Changing DiscreteProblemInterface::add_auxiliary_field to accept Parameters by @andrsd in #891
  • Changing Problem::add_output to accept Parameters by @andrsd in #892
  • Changing Problem::add_postprocessor to accept Parameters by @andrsd in #893
  • Redoing execute on flags by @andrsd in #901
  • Dropping input file and related classes by @andrsd in #904
  • common_cells_by_vertex in no longer member function by @andrsd in #915
  • Allow implicit construction of DenseVector from an initializer list by @andrsd in #916
  • Modifying access rights in CommandLineInterface by @andrsd in #919

Other Changes

  • Parameters are value only by @andrsd in #869
  • cmake: install FindPETSc.cmake during install by @andrsd in #870
  • Redesigning DiscreteProblemInterface::add_boundary_condition by @andrsd in #886
  • Redesigning DiscreteProblemInterface::add_initial_condition by @andrsd in #887
  • Correct types used internally in Mesh objects by @andrsd in #894
  • Adding get_block_id_from_region by @andrsd in #896
  • Adding API to make parameter required by @andrsd in #897
  • Adding Parameters::add_private_param with no default by @andrsd in #898
  • Adding TransientProblemInterface::function_domain_error by @andrsd in #900
  • Split CLI functionality from the App class by @andrsd in #903
  • Logger reports directly when error/warning occurs by @andrsd in #906
  • Object: "name" parameter is now public by @andrsd in #907
  • Object: "_app" parameter is now required and public by @andrsd in #908
  • Adding sin, cos, tan into math namespace by @andrsd in #910
  • PiecewiseConstant can be transferred via Parameters by @andrsd in #913
  • Adding utils::unreachable by @andrsd in #918
  • Adding PetscObjectWrapper::get_comm by @andrsd in #923
  • Adding Vector::get_ownership_range by @andrsd in #922
  • Parallel restart by @andrsd in #924
  • CallStack changes by @andrsd in #926
  • Adding expect_true by @andrsd in #927
  • Parameter::type returns demangled type by @andrsd in #928

Full Changelog: v0.9...v0.10.0

v0.9

13 Oct 13:29
db3a407

Choose a tag to compare

What's Changed

Fixed Problems

  • Report correct order in DGProblemInterface::get_field_order() by @andrsd in #632
  • Fixing DynDenseMatrix::transposed by @andrsd in #703
  • Free allocated WeakForm Object by @andrsd in #704
  • Don't create the partitioner twice by @andrsd in #705
  • Destroy SNESolver if we built it by @andrsd in #706
  • Fixing IndexSet::to_std_vector by @andrsd in #771
  • Fixing storage of input file inside App by @andrsd in #783
  • Fixing printing of human_time by @andrsd in #827
  • Fixing orientation of TET4 elements by @andrsd in #836
  • Fixing Logger::print of number of warnings/errors by @andrsd in #838

API Changes

  • DGProblemInterface: Components are stored next to each other per node by @andrsd in #639
  • Removing polymoprhism from Problem::get_dimension by @andrsd in #682
  • Removing Problem::get_mesh by @andrsd in #683
  • The solve method on (Non)LinearProblem is no longer virtual by @andrsd in #684
  • Adding {pre|post}_solve methods to NonlinearProblem by @andrsd in #685
  • FileOutput::get_file_ext is private virtual by @andrsd in #687
  • create_preconditioner does not return anything by @andrsd in #692
  • Adding API to get underlying PETSc objects from TimeStepAdapt by @andrsd in #694
  • Removing lprintf by @andrsd in #696
  • Rename lprint to lprintln by @andrsd in #697
  • Applications can set output monitor by @andrsd in #698
  • Unifying solver API by @andrsd in #721
  • pre_solve and post_solve are virtual by @andrsd in #724
  • Adding conversion module by @andrsd in #728
  • Adding colored version of lprintln by @andrsd in #730
  • Adding API into LinearProblem so child classes can get access to the … by @andrsd in #731
  • Monitors are no longer virtual methods by @andrsd in #732
  • Changing API on IndexSet by @andrsd in #733
  • App::registerObjects -> App::register_objects by @andrsd in #734
  • Applications can inject their own MeshObject via an input file by @andrsd in #736
  • Renaming BoundaryInfoAbstract to AbstractBoundaryInfo by @andrsd in #740
  • Refactoring Array1D by @andrsd in #742
  • Refactoring Vector API by @andrsd in #743
  • StarForest improvements by @andrsd in #751
  • Adding API to support parallel communication by @andrsd in #758
  • Refactoring PrintingInterface by @andrsd in #759
  • Terminal refactoring by @andrsd in #761
  • Refactoring TecplotOutput by @andrsd in #763
  • Introducing Order type by @andrsd in #789
  • Adding FieldID type by @andrsd in #790
  • Redoing setters on Parameters by @andrsd in #793
  • Rewriting the restart capability by @andrsd in #807
  • Adding ConveredReason into TransientProblemInterface by @andrsd in #810
  • create_preconditioner API returns Preconditiner object by @andrsd in #811
  • Removing deprecated API by @andrsd in #814
  • calc_nodal_radius takes const & to coordinates by @andrsd in #819
  • MeshObject uses Qtr by @andrsd in #820
  • Adding App::get_input_file() by @andrsd in #824
  • Refactoring error API by @andrsd in #833
  • Refactoring App::check_integrity by @andrsd in #834
  • Allow more flexibility in FileOutputs by @andrsd in #837
  • Moving compute_boundary_local by @andrsd in #842
  • Correcting NonlinearProblem API by @andrsd in #851
  • Adding missing noexcept on move constructor and move assigment operator by @andrsd in #858

Other Changes

  • Adding UnstructuredMesh::get_cone_size by @andrsd in #616
  • Adding KrylovSolver::get_tolerances by @andrsd in #617
  • Adding Matrix::create_shell by @andrsd in #619
  • Adding Matrix::set_type by @andrsd in #618
  • Adding UnstructuredMesh::get_cell_numbering by @andrsd in #620
  • Adding UnstructuredMesh::is_distributed by @andrsd in #621
  • Adding UnstructuredMesh::create_closure_index by @andrsd in #622
  • Adding UnstructuredMesh::get_point_depth by @andrsd in #623
  • Adding more API to access (remote) leaves of the StarForrest::Graph by @andrsd in #624
  • Adding Label::get_stratum_bounds by @andrsd in #625
  • UnstructuredMesh can create 'my_cells' label by @andrsd in #626
  • Adding Problem::create_section_subis by @andrsd in #628
  • Adding wrapper API to IndexSet by @andrsd in #629
  • Adding Matrix::transpose by @andrsd in #631
  • Compute local solution vector only once before outputing the variables by @andrsd in #633
  • Adding more wrapper API into IndexSet by @andrsd in #634
  • Adding enumerate for enumerating containers by @andrsd in #635
  • Adding operator to pre-multiply a matrix with a scalar by @andrsd in #636
  • templ in by @andrsd in #638
  • Adding assignment operator for DynDenseMatrix by @andrsd in #637
  • Adding Matrix::set_values for DynDense{Matrix|Vector} by @andrsd in #640
  • Adding KrylovSolver::get_rhs by @andrsd in #641
  • Adding KrylovSolver::get_operator{s} by @andrsd in #642
  • Adding Vector::copy using IndexSet by @andrsd in #644
  • Adding Preconditioner::apply by @andrsd in #645
  • Set adjacency for DG problems by @andrsd in #646
  • Making LinearProblem more flexible by @andrsd in #647
  • Adding KrylovSolver::converged_reason_str by @andrsd in #648
  • Allow setting KSP type via user parameter in LinearProblem by @andrsd in #650
  • Adding KrylovSolver::view by @andrsd in #649
  • Adding function for formatting number so that people can actually read them by @andrsd in #651
  • Adding Vector::set_values_local using {Dyn}DenseVector as arguments by @andrsd in #652
  • Adding Matrix::set_values_local by @andrsd in #653
  • Adding Vector::set_values for {Dyn}DenseVector by @andrsd in #654
  • Allow iteration over empty IndexSet by @andrsd in #655
  • Adding validation::in_range by @andrsd in #656
  • Improving Quadrature encapsulation by @andrsd in #657
  • Adding get_fe into DGProblemInterface and FEProblemInterface by @andrsd in #658
  • Dropping [[nodiscard]] by @andrsd in #659
  • Adding UnstructuredMesh::get_facets by @andrsd in #660
  • Adding magnitude for DenseVector by @andrsd in #661
  • Adding {Dyn}DenseVector::normalized method by @andrsd in #662
  • Adding Section::set_chart using Range by @andrsd in #663
  • Adding Section::get_chart thatreturn a Range by @andrsd in https://github.com...
Read more

v0.8

03 Oct 11:50
5fcf988

Choose a tag to compare

What's Changed

New Features

  • Adding operator* for DenseVector and DenseMatrixSymm by @andrsd in #476
  • Adding integration coefficients for tri-linear forms by @andrsd in #477
  • ExodusII meshes are read in by our code by @andrsd in #479
  • Adding UnstructuredMesh::get_face_sets by @andrsd in #487
  • Refactoring BC boundary check in its own function by @andrsd in #488
  • Adding mat_col and mat_row for DenseVector<T, N> by @andrsd in #489
  • Adding TSAbstract for creating custom time stepping schemes by @andrsd in #492
  • Improving Terminal API by @andrsd in #498
  • Refactoring object registration by @andrsd in #500
  • fe::BoundaryInfo provides create_vertex_index_set() by @andrsd in #503
  • Refactoring ExecuteOn flags by @andrsd in #504
  • Adding Iterator to Array1D by @andrsd in #505
  • Adding new API to compute FE volumes using just UnstructuredMesh reference by @andrsd in #506
  • Adding API to compute gradient of shape functions using UnstructuredMesh by @andrsd in #507
  • Adding initial capability for loading dynamic libraries by @andrsd in #508
  • Adding API for auxiliary vecs in Problem by @andrsd in #509
  • Making more methods non-virtual by @andrsd in #510
  • Improving API so that fields can be restricted to Labels by @andrsd in #511
  • Adding API to set residual/Jacobian in NonlinearProblem by @andrsd in #513
  • Adding wrapper around SNES by @andrsd in #514
  • Adding Init::Init by @andrsd in #516
  • App class improvements by @andrsd in #517
  • InternalError exception by @andrsd in #520
  • Adding Vector::filter, deprecating Vector::chop by @andrsd in #522
  • TSAbstract directly calls godzilla API by @andrsd in #523
  • Adding more exodusII element types by @andrsd in #544
  • Godzilla name in cmake realm is all lower case by @andrsd in #546
  • Renaming GodzillaConfig to Config.h by @andrsd in #547
  • Adding Vector::axpby by @andrsd in #549
  • Adding Vector::get_type by @andrsd in #550
  • Adding UnstructuredMesh::compute_cell_volume by @andrsd in #553
  • Adding API for setting vector and matrix type by @andrsd in #551
  • HYPRE is optional by @andrsd in #555
  • fe::coordinates and fe::connectivity use PETSc indices by @andrsd in #576
  • Adding grad shape for TET4 by @andrsd in #579
  • cmake improvements by @andrsd in #583
  • Array2D is stored in row-major manner by @andrsd in #585
  • Adding Mesh::get_neighbors by @andrsd in #587
  • Adding Matrix::scale by @andrsd in #586
  • Relax access to methods in LinearProblem by @andrsd in #588
  • Adding convenience functions for creating Ranges by @andrsd in #590
  • Adding dynamic Dense{Matrix|Vector} by @andrsd in #589
  • Adding UnstructuredMesh::get_vertex_coordinates by @andrsd in #591
  • Adding operator<< for DynDense{Matrix|Vector} by @andrsd in #593
  • Adding KrylovSolver::set_initial_guess_nonzero by @andrsd in #594
  • Adding KrylovSolver::set_up by @andrsd in #595
  • Adding Vector::set_option by @andrsd in #596
  • Adding KrylovSolver::set_convergence_test by @andrsd in #597
  • Adding Vector::create_mpi by @andrsd in #598
  • Adding more converged reasons for KrylovSolver by @andrsd in #599
  • Adding Vector::{get|restore}_sub_vector by @andrsd in #600
  • Adding KrylovSolver::set_type by @andrsd in #601
  • IndexSet::create_general takes copy mode parameter by @andrsd in #602
  • Adding KrylovSolver::set_pc_side by @andrsd in #603
  • mpicpp-lite is pulled as an external dependency by @andrsd in #604
  • Adding Vector::assign by @andrsd in #605
  • Adding exception for not implemented cases by @andrsd in #606
  • Optimizing operations with DynDenseMatrix by @andrsd in #608
  • Wrapping DM_POLYTOPE_TYPE into PolytopeType class enum by @andrsd in #609
  • Improving const correctness on Vector by @andrsd in #610
  • Adding UnstructuredMesh::get_support_size by @andrsd in #611
  • Adding Vector::norm by @andrsd in #612
  • Adding SNESolver::mat_create_mf() by @andrsd in #613
  • Adding SNESolver::{get|set}_type by @andrsd in #614

Fixed Problems

  • Output was reporting incorrect warning regarding on and interval by @andrsd in #474
  • Fixing FileMesh by @andrsd in #475
  • Use correct face size when call get_full_join by @andrsd in #483
  • Do not output the same timestep twice by @andrsd in #497
  • Fixing output for steady-state problems by @andrsd in #501
  • cmake: MPI fixes by @andrsd in #521
  • Fixing missing dependency in cmake find module by @andrsd in #548
  • TimedEvent actualy measures time by @andrsd in #581

API Changes

Read more