Skip to content

Conversation

sjanssen2
Copy link
Member

@sjanssen2 sjanssen2 commented Dec 2, 2022

gapc will produce the following files, if you ask for second derivatives --derivative 2. You also have to specify an algebra product like left * right where left and right algebras must be synoptic!

  • out_derivative1.hh
  • out_derivative1.cc
  • out_derivative2.hh
  • out_derivative2.cc
  • out.mf (which will generate out_main.cc)
  • (out.dot) if requested

adding additional member q, since D2 needs to store both vdot and q for candidates (note that naming schema is messed up!)
adding soft_max_hessian operator

  • will Alt::Block work?
  • fix nested Alt Situations like ml_comps -> cadd(incl(dangle), ml_comps1)

…or candidates (note that naming schema is messed up!)

adding soft_max_hessian operator
…ssically or via the hessian product operator
…nd re-execute "back()"

let multiple functions additionally know if user requested derivative generation
…uested by the user

added function to split the algebra product "first * second" into two independet instances for derivative generation, i.e. "back()" will be executed twice, resulting in multiple .hh and .cc files
different code generation for first and second derivative in "inject_derivative_body" and "init_derivative_recording"
added new function "derivative_collect_traces"
replace bool "inject_derivatives" with int "ast.current_derivative"
"push_back_ret_decl" also declares variables "edgeweight" to record these in addition to vdot
…uested derivative generation

made "class_name" private to enforce use of convenience functions "set_class_name" and "get_class_name_lower_derivative" to prepend "_derivativeX" if necessary
sjanssen2 and others added 28 commits December 7, 2022 17:00
@fymue fymue mentioned this pull request Jun 13, 2023
13 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant