idaholab / moose

Multiphysics Object Oriented Simulation Environment
https://www.mooseframework.org
GNU Lesser General Public License v2.1
1.72k stars 1.04k forks source link

MOOSE Tutorial Updates #13617

Closed aeslaughter closed 1 year ago

aeslaughter commented 5 years ago

Reason

Over the years the MOOSE tutorial has gained several part a, part b stuff. It is would be better for the flow to create new steps instead of sub-dividing.

There also needs to be a descriptive version on the main website; the slides are not intended to be followed outside of our live workshops.

Also, there are some more general improvements with respect to the language used.

Design

New (old) steps for tutorial

FEM, Shape Functions, Solver...

We need to break up these sections, dumping them all on the user at the same time is too much. It should be possible to sprinkle them in through the sections as we go, but we need to talk about how and where they fit in.

Other Improvements

Impact

This will add an improved training experience.

aeslaughter commented 4 years ago

@friedmud FYI, this is the issue I started for training revisions.

aeslaughter commented 4 years ago

@lindsayad Should ADMaterial have "_ad_q_point" if you are wanting to propagate derivatives through to properties that are evaluated from a spatially varying function?

aeslaughter commented 4 years ago

In one of the steps we have the following:

template <ComputeStage compute_stage>
void
PackedColumn<compute_stage>::computeQpProperties()
{
  Real value = _radius.value(_t, _q_point[_qp]); # _radius is a Function
  _permeability[_qp] = _ad_permeability_interpolation.sample(value); # 
}

It seems like the function should accept the _ad_q_point[_qp] so the derivative is correct going into the ADLinearInterpolation object.

This of course requires that Function be able to accept an ADReal.

dschwen commented 4 years ago

ADFunctions are not quite there yet and there is a libmesh issue for ad qpoints that needs to be resolved if I recall correctly.

aeslaughter commented 4 years ago

Thanks, I will just use _q_point for now, with upgrading later in mind.

lindsayad commented 4 years ago

Yea as @dschwen said we can't feed a DualNumber into a function yet...

GiudGiud commented 1 year ago

25381 will catch the rest of what mattered here